{
  "name": "ironbrick-agent-tools",
  "title": "Agent Tools (MCP Server)",
  "description": "Governed Model Context Protocol tools that let approved AI assistants search and summarize case records with citations.",
  "transport": "Streamable HTTP at the agency MCP gateway (OAuth 2.0; acts on behalf of the signed-in user)",
  "tools": [
    {
      "name": "search_cases",
      "description": "Find cases by status, type, office, or date range. Returns case IDs and summaries only.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "status": {
            "description": "string (optional)"
          },
          "caseType": {
            "description": "string (optional)"
          },
          "updatedSince": {
            "description": "date-time (optional)"
          },
          "limit": {
            "description": "integer, max 25"
          }
        }
      },
      "annotations": {
        "readOnlyHint": true
      },
      "x-scopes": "cases:read"
    },
    {
      "name": "get_case",
      "description": "Return one case with its status history.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "caseId": {
            "description": "string"
          }
        }
      },
      "annotations": {
        "readOnlyHint": true
      },
      "x-scopes": "cases:read"
    },
    {
      "name": "summarize_case",
      "description": "Summarize a case file. Every sentence cites a case event or document page.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "caseId": {
            "description": "string"
          },
          "focus": {
            "description": "string (optional), e.g. 'missing evidence'"
          }
        }
      },
      "annotations": {
        "readOnlyHint": true
      },
      "x-scopes": "cases:read, documents:read"
    },
    {
      "name": "list_case_documents",
      "description": "List documents linked to a case, with classification and sensitivity labels.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "caseId": {
            "description": "string"
          }
        }
      },
      "annotations": {
        "readOnlyHint": true
      },
      "x-scopes": "cases:read"
    },
    {
      "name": "get_document_text",
      "description": "Return extracted text for specific pages of a document, for citation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "documentId": {
            "description": "string"
          },
          "pages": {
            "description": "array of integers"
          }
        }
      },
      "annotations": {
        "readOnlyHint": true
      },
      "x-scopes": "documents:read"
    },
    {
      "name": "draft_case_note",
      "description": "Draft a case note for human review. Never saves on its own; a person approves and posts it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "caseId": {
            "description": "string"
          },
          "instructions": {
            "description": "string"
          }
        }
      },
      "annotations": {
        "readOnlyHint": false
      },
      "x-scopes": "cases:write"
    }
  ]
}