agnara-mcp
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@agnara-mcpWhat capabilities do you expose?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
agnara-a8-mcp-service
Ecosystem Role: MCP Validation Project
Target: agnara==0.1.0a8
Adapter: agnara-mcp==0.1.0a8
MCP SDK baseline: 2.1.1
Python: >=3.14
This repository serves as a historical, reproducible validation of the official MCP adapter shipped alongside Agnara 0.1.0a8 (agnara-mcp==0.1.0a8). It demonstrates how an external consumer natively exposes Agnara capabilities to Model Context Protocol consumers over the stdio transport.
Qué valida
Este proyecto verifica y demuestra el funcionamiento correcto de las siguientes APIs públicas de agnara-mcp bajo 0.1.0a8:
Discovery: Declaración de capabilities mediante
@app.capability()y su exposición explícita medianteMcp(...).tool(...).Compilación de Esquemas: Extracción y compilación segura a través de
FrozenMcpToolspreservando proyecciones de tipos y contratos (schemas).Ejecución MCP Real: Routing a través de
mcp.server.Servermediantebuild_mcp_server, validandotools/listytools/call.Fidelidad del Kernel: Demostración de Canonical Outcomes (
Success/Failure) desde la ejecución del runtime (agnara.execution.runtime.invoke).Seguridad (Fail-Closed): Comportamiento anónimo verificado mediante la carencia de identidad en el transporte
stdio.McpAuthorizationfalla (cerrado por defecto) al solicitar capacidades restringidas (ej. scopeinventory:write).
Related MCP server: mcp-gate
Qué NO valida
Escalabilidad o transaccionalidad de bases de datos de inventario.
Mecanismos de autenticación HTTP/SSE (OAuth2/OIDC, tokens). El protocolo validado es exclusivamente
stdiocomo proxy local anónimo.Migraciones a versiones de Agnara superiores a 0.1.0a8.
Architecture
Please review ARCHITECTURE.md for a technical breakdown of the integration between agnara, agnara-mcp, and the official Python mcp SDK.
Quick Start
# 1. Create a Python 3.14 virtual environment
py -3.14 -m venv .venv
.\.venv\Scripts\Activate.ps1
# 2. Install from the locked baseline dependencies
pip install -e .[dev]
# 3. Run the quality gates
pytest -v
# 4. Run the interactive smoke client
python examples/smoke_client.pyQuality Gates
The continuous integration pipeline guarantees the integrity of this validation:
python -m pip checkruff format --check .ruff check .pytest -vpython examples/smoke_client.pypython -m buildA clean isolated installation verification of the generated wheel.
Findings reales de A8
Paridad Total de Esquemas: La transformación desde las anotaciones nativas de Python procesadas por Agnara hacia
Tool.inputSchemamediante elMcpadapter es fluida y transparente, sin requerir re-declaraciones redundantes.Autorización y Discovery Dinámico: La política de
McpAuthorizationrealiza un filtro inteligente sobre el discovery. Si el request no posee una identidad verificada (como ocurre enstdio), las tools conscopesrequeridos (ej.inventory.reserve) ni siquiera aparecen en la respuesta detools/list, previniendo exposición innecesaria de superficie de ataque.Canonical Outcomes Projectables: Los resultados y errores de políticas producidos dentro de la capa de invocación de Agnara (
agnara.execution.runtime.invoke) se adaptan correctamente al formato deCallToolResult.is_errory mensajes JSON deforbidden.
Limitaciones reales
Identidad en Stdio: El protocolo
stdioprovisto por el SDK oficial no incluye mecanismos estandarizados para transmitir tokens de autorización. En consecuencia, elMcpAuthorizationactúa en modo anónimo (fail-closed), lo que requiere otros transportes (comoSSEo mecanismos propietarios) si se desea validar políticas gobernadas de lectura/escritura bajo identidad.
Relación con Agnara
Este proyecto es estrictamente consumidor de agnara y agnara-mcp. Funciona como prueba de caja negra (black-box) del adaptador lanzado en 0.1.0a8 y sirve como artefacto congelado para asegurar las promesas de backward compatibility de dicho ecosistema.
Related MCP Connectors
Guarded MCP server for agent-readable business truth, provenance, readiness, and discovery.
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
Remote MCP server exposing SMI Aware tools, resources, and skills over Streamable HTTP.
Host your MCP tool over streamable HTTP in one command.
Related MCP Servers
- FlicenseCqualityBmaintenanceSchema-driven MCP server that exposes all Paperclip API operations as typed MCP tools over stdio or Streamable HTTP, supporting both authenticated and local_mode deployments.100-
- AlicenseNot gradedqualityBmaintenanceEnables serving multiple MCP toolkits behind one server with capability-based access control, so different callers see and can call only the tools they are authorized for, over stdio or streamable HTTP with bearer-token auth.MIT
- AlicenseNot gradedqualityCmaintenanceExposes OpenClaw gateway tools to MCP clients like Claude Code and Codex, enabling local tool calls, file operations, and subagent session management through a stdio MCP server.171 npmMIT
- AlicenseNot gradedqualityBmaintenanceExposes ReadyAgents' local workflow engine and built-in tools over MCP stdio, enabling MCP clients to define, run, inspect, and approve YAML/JSON agent workflows.Apache 2.0