{"name":"steward-mcp-server","protocolVersion":"2025-11-25","transport":"streamable-http","tools":[{"name":"steward_start_task","description":"Open a browser session for a natural-language task on a target portal or website URL, observe the initial page state, and retrieve task-scoped Personal Context.","inputSchema":{"type":"object","properties":{"goal":{"type":"string","description":"Natural-language task goal."},"url":{"type":"string","description":"Optional target website URL or domain (e.g. amazon.in, /jobs, /shop)."},"portalId":{"type":"string","description":"Portal identifier (defaults to pmkisan-gov-in)."},"language":{"type":"string","description":"BCP-47 language tag (ta-IN, hi-IN, en-IN)."}},"required":["goal"]}},{"name":"steward_step","description":"Execute one observe -> describe_intent -> act_reversible cycle, or pause and mint a cryptographic consent record when an irreversible action (Submit, Pay, Cancel) is reached.","inputSchema":{"type":"object","properties":{}}},{"name":"steward_direct_action","description":"Execute an explicit user-directed command on the active browser screen (e.g. 'Buy this and do the payment', 'Click Add to cart', 'Fill district with Thanjavur'). Reversible steps execute immediately; sensitive payment/submit steps mint a cryptographic consent preview and pause at the Cedar gate.","inputSchema":{"type":"object","properties":{"instruction":{"type":"string","description":"Natural-language command for the current screen."},"targetRef":{"type":"string","description":"Optional explicit control reference (e.g. button:payOrder, field:district)."},"value":{"type":"string","description":"Optional value when filling an input or select field."}}}},{"name":"steward_approve_consent","description":"Submit the citizen's explicit approval for the currently pending consent record. Evaluates Cedar / Amazon Verified Permissions policies before performing the irreversible browser action.","inputSchema":{"type":"object","properties":{}}},{"name":"steward_deny_consent","description":"Decline the currently pending irreversible action. Nothing is sent to the portal and the consent is not consumed.","inputSchema":{"type":"object","properties":{}}},{"name":"steward_halt","description":"Immediately pause mid-task, freeze browser state, and return a describable partial-progress summary.","inputSchema":{"type":"object","properties":{}}},{"name":"steward_resume","description":"Reattach to a previously halted task and resume observation.","inputSchema":{"type":"object","properties":{}}},{"name":"steward_handoff","description":"Package a CAPTCHA, OTP, or unsupported step for human completion with all filled fields preserved.","inputSchema":{"type":"object","properties":{"reason":{"type":"string","enum":["captcha","otp","unsupported_flow"],"description":"Handoff reason."}}}},{"name":"steward_state_and_audit","description":"Return the current observed page state, screen briefing, grounded narration, pending consent hashes, Cedar authorization decision, and append-only audit reconstruction.","inputSchema":{"type":"object","properties":{}}},{"name":"context_list_sources","description":"List all documents uploaded to the citizen's Personal Context vault with chunk and fact counts.","inputSchema":{"type":"object","properties":{}}},{"name":"context_retrieve","description":"Retrieve task-scoped personal facts with source provenance, sensitivity filtering (secret values are never returned), and conflict detection.","inputSchema":{"type":"object","properties":{"fields":{"type":"array","items":{"type":"string"},"description":"Requested field names (e.g. fullName, district, skills, address)."},"goal":{"type":"string","description":"Task goal used to scope permitted fact categories."},"permitsSensitive":{"type":"boolean","description":"Whether sensitive-tier fields required by the form are permitted."}}}},{"name":"context_query_rag","description":"Run semantic vector RAG search (Titan Embeddings V2 / cosine similarity) + structured fact retrieval over the citizen's uploaded documents.","inputSchema":{"type":"object","properties":{"query":{"type":"string","description":"Semantic search question or keywords."},"topK":{"type":"number","description":"Maximum number of vector chunks to return (default 4)."}},"required":["query"]}}]}