Configuración del cliente MCP
El servidor MCP de Platica habla Streamable HTTP (spec 2025-11-25). Cualquier cliente compatible con este transporte se conecta a:
https://api.platica.mx/mcp La forma recomendada es OAuth 2.1: pegas esa URL y el cliente te lleva a iniciar sesión en Platica. Si tu cliente no sabe OAuth, usa una API Key . Detalle de ambos métodos en Autenticación .
- Método:
POST(JSON-RPC 2.0 sobre Streamable HTTP) - Modo: stateless + JSON (no requiere
Mcp-Session-Idni SSE) - Spec: Streamable HTTP
2025-11-25
Instalación rápida
Los botones instalan el servidor con OAuth (sólo la URL, sin API Key). Cursor y VS Code abren el cliente con la config lista; Claude Code, Antigravity y Codex copian el comando o la config al portapapeles. Al conectar, inicia sesión en Platica y elige los workspaces.
Cursor
Edita ~/.cursor/mcp.json (o .cursor/mcp.json dentro de tu proyecto):
{
"mcpServers": {
"platica": {
"url": "https://api.platica.mx/mcp"
}
}
} Reinicia Cursor. La primera vez se abre el inicio de sesión de Platica. Cuando termines, en la barra inferior verás el servidor platica con un círculo verde.
Claude Code
claude mcp add --transport http platica https://api.platica.mx/mcp O en .mcp.json:
{
"mcpServers": {
"platica": {
"transport": "http",
"url": "https://api.platica.mx/mcp"
}
}
} Claude Code registra el cliente, abre el navegador y guarda los tokens. No pases --header si quieres OAuth: ese flag fuerza una API Key.
Claude Desktop
Si tienes Claude Pro o superior, ve a Settings → Connectors → Custom Connectors, pega https://api.platica.mx/mcp y autoriza. Claude Desktop habla OAuth nativo con el servidor remoto; no hace falta mcp-remote.
Claude Desktop en config local habla stdio, así que el puente mcp-remote traduce a Streamable HTTP. Sin --header, mcp-remote también inicia OAuth. Edita ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"platica": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.platica.mx/mcp"
]
}
}
} VS Code (GitHub Copilot)
En settings.json:
{
"github.copilot.chat.mcp.servers": {
"platica": {
"type": "http",
"url": "https://api.platica.mx/mcp"
}
}
} Antigravity
Abre el panel del agente → menú "..." → MCP Servers → Manage MCP Servers → View raw config, y agrega a ~/.gemini/antigravity/mcp_config.json:
{
"mcpServers": {
"platica": {
"serverUrl": "https://api.platica.mx/mcp"
}
}
} Antigravity usa serverUrl (no url) para servidores HTTP. Reinicia Antigravity tras guardar. Si tu build aún no habla OAuth, añade el header de API Key .
Codex
En ~/.codex/config.toml:
[mcp_servers.platica]
url = "https://api.platica.mx/mcp" Cada servidor va bajo [mcp_servers.<nombre>]. Reinicia Codex tras guardar. Si tu build aún no habla OAuth, usa http_headers con una API Key .
Cualquier otro cliente
Si el cliente soporta Streamable HTTP y el spec de autorización MCP, basta con la URL. El 401 inicial trae el WWW-Authenticate que arranca OAuth.
| Parámetro | Valor |
|---|---|
| URL | https://api.platica.mx/mcp |
| Método HTTP | POST |
| Headers del transporte | Accept: application/json, text/event-streamContent-Type: application/json |
| Autenticación | OAuth 2.1 (discovery + PKCE S256). No pongas un Authorization a mano. |
| Sesión | Stateless (no se requiere Mcp-Session-Id) |
| SSE | No usado (las respuestas siempre son application/json) |
Resource identifier: https://api.platica.mx/mcp. Documentos de discovery y scopes en Autenticación .
Alternativa: API Key
Para scripts, CI o un cliente que no sepa OAuth, genera una key en Configuración → API Keys y ponla en el header. Sustituye el placeholder por tu pl_key_....
Cursor
{
"mcpServers": {
"platica": {
"url": "https://api.platica.mx/mcp",
"headers": {
"Authorization": "Bearer pl_key_TU_KEY_ID_TU_SECRETO"
}
}
}
} Claude Code
claude mcp add --transport http platica https://api.platica.mx/mcp \
--header "Authorization: Bearer pl_key_TU_KEY_ID_TU_SECRETO" Claude Desktop (mcp-remote)
La key viaja en env para no quedar en texto plano en args:
{
"mcpServers": {
"platica": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.platica.mx/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer pl_key_TU_KEY_ID_TU_SECRETO"
}
}
}
} VS Code
{
"github.copilot.chat.mcp.servers": {
"platica": {
"type": "http",
"url": "https://api.platica.mx/mcp",
"headers": {
"Authorization": "Bearer pl_key_TU_KEY_ID_TU_SECRETO"
}
}
}
} Antigravity
{
"mcpServers": {
"platica": {
"serverUrl": "https://api.platica.mx/mcp",
"headers": {
"Authorization": "Bearer pl_key_TU_KEY_ID_TU_SECRETO"
}
}
}
} Codex
[mcp_servers.platica]
url = "https://api.platica.mx/mcp"
http_headers = { "Authorization" = "Bearer pl_key_TU_KEY_ID_TU_SECRETO" } Verifica la conexión
Pide al agente que ejecute list_workspaces o pregunta "¿a qué workspaces de Platica tienes acceso?". Debes ver los workspaces que autorizaste, con su id, rol y módulos.
Después, "¿qué herramientas tienes del MCP de Platica?" lista el catálogo. Si autorizaste varios workspaces, las tools de escritura van a pedir workspace — el id sale de list_workspaces.
Si el cliente reporta 401, o no abre el navegador: quita cualquier header Authorization que hayas dejado de una config vieja (un pl_key_ mal puesto bloquea el discovery de OAuth). Si usas API Key, revisa que empiece con pl_key_ y esté activa en el dashboard.
Si una tool de escritura responde 403 con insufficient_scope, el token es de sólo lectura: vuelve a autorizar pidiendo platica:write.
Si responde 403 con Missing … permission, tu rol en ese workspace no cubre el módulo. Entra con una cuenta que sí lo tenga, o usa una API Key.