Saltar al contenido principal

Servidor MCP

La API de B1 incluye un servidor MCP (Protocolo de Contexto de Modelos) en /mcp. Cualquier cliente MCP-consciente -- Claude Code, Claude Desktop, el SDK de Agentes de OpenAI, Cursor, o el tuyo propio -- puede conectarse a él y llamar a la API REST subyacente en nombre de un usuario de iglesia autenticado.

Antes de Comenzar

  • Una clave de API de B1 (cak_…) con los alcances que el cliente debe tener
  • Un host de API de B1 accesible -- https://api.churchapps.org para iglesias alojadas, o tu propio despliegue
  • Un cliente MCP. Ve Claude y ChatGPT para configuración del usuario final

Punto Final

POST /mcp
Content-Type: application/json
Accept: application/json, text/event-stream
Authorization: Bearer cak_<prefix>.<secret>
AspectoValor
Ruta/mcp (relativa al host de la API)
MétodoPOST solamente
TransporteHTTP Streamable de MCP
Modelo de SesiónSin estado. Una nueva instancia de servidor MCP se construye por solicitud
AutenticaciónToken de portador. Claves de API cak_… y JWTs de B1 ambas funcionan

Herramientas

Tres herramientas, todas genéricas: list_endpoints, describe_endpoint, y api_call.

Auth Model

La solicitud MCP se ejecuta a través de CustomAuthProvider.getUser() -- el mismo camino que cada punto final autenticado de B1 usa. Un portador cak_… se resuelve a un Principal cuyos permisos son el RBAC actual de la persona emisora, intersectado con los alcances otorgados de la clave.