What agentkit MCP server does
The agentkit MCP server lets developers describe tools in YAML and expose them through MCP without writing a Python implementation for every tool. YAML packs can connect tools to a Postgres database or an HTTP API. The repository includes a reference business-intelligence pack with six core tools: query_kpis, get_company_health, detect_kpi_anomalies, forecast_metric, list_available_metrics, and get_executive_summary.
The bundled server also registers KPI resources for ten seeded domains: Finance, People, Operations, Customer, Engineering, Growth, Logistics, ESG, IT, and Security. It includes the monthly_executive_briefing prompt. Additional packs can add tools, and custom MCP resources or prompts can be added in code.
How it works
Each tool declares an effect: read, write, or destructive. Read operations can run normally, while writes are disabled unless explicitly enabled. Destructive operations require an approval token held by a human rather than exposed to the model. Mutating tools support dry-run behavior, and both permitted and rejected calls are recorded with their denial reasons available through the audit API.
The MCP entry point runs over stdio for local clients or can serve over SSE when configured for a network connection. A REST facade exposes the same tools, policy information, audit data, and LLM-routing views over HTTP. The project also contains a three-agent LangGraph workflow with planner, analyst, and reporter roles, alongside examples for the Claude Agent SDK and CrewAI.
Setup and configuration
Install the published package with pip install agentkit-mcp, then start it with agentkit-mcp. uvx can launch the package without checking out the repository. For a source checkout, create a virtual environment, install requirements.txt, copy .env.example to .env, provide POSTGRES_URL, and run python mcp_server.py.
Claude Desktop requires MCP_TRANSPORT=stdio in its client configuration when launching the server as a local process. Without that setting, the entry point defaults to SSE instead of using the process pipes. Network deployments can use MCP_AUTH_TOKEN; local stdio mode uses the operating-system process boundary instead.
Optional settings control log verbosity, telemetry, and model routing. The LangGraph workflow and demos use LiteLLM provider/model strings, with separate variables for reasoning, default tool-calling, evaluation, and local inference models.
Tools and capabilities
- Add Postgres or HTTP-backed tools through YAML packs.
- Inspect the published capability policy at
GET /api/policy.
- Review allowed and denied calls at
GET /api/audit.
- Route workflow roles to hosted or self-hosted models.
- Use the built-in annotation pack for guarded metric notes and annotation retraction.
The annotation write operation is disabled by default; retraction is destructive and requires AGENTKIT_APPROVAL_TOKEN.
Limitations and notes
The bundled BI tools are a reference pack, not a fixed limit on the server's runtime tool count. The available domains, packs, resources, and prompts depend on the configured data and files. Database-backed use requires a Postgres connection, while provider-specific workflow or demo execution requires the corresponding model API keys. Telemetry sends one anonymous startup ping by default and can be disabled with TELEMETRY_OPT_OUT=true or DO_NOT_TRACK=1.