Universidad de Palermo
Facultad de Derecho · Palermo E-Law / Innovation Hub

Documentación · Conexión

Cómo conectar

El corpus se consume como un servidor MCP remoto, público y sin autenticación. Esta página reúne las instrucciones para cada cliente que admite conectores MCP: asistentes de chat, agentes de línea de comandos, editores, APIs y clientes de escritorio. Relevamiento verificado contra la documentación oficial de cada producto al 23/08/2026.

Lo esencial#

https://mcp.bravo47.com/v5/mcp

Eso es todo lo que hace falta saber para conectarse desde cualquier cliente: una URL. Detalles que conviene tener a mano cuando un formulario los pide:

El servidor es MCP estándar: cualquier cliente compatible con servidores remotos por Streamable HTTP puede conectarse, esté o no en esta lista. Si el cliente solo admite servidores locales (stdio), el puente mcp-remotenpx -y mcp-remote https://mcp.bravo47.com/v5/mcp — lo expone como uno local; hoy casi ningún cliente lo necesita.

Claude#

claude.ai y Claude Desktop

Disponible en los planes Free, Pro, Max, Team y Enterprise (el plan Free admite un solo conector personalizado). Settings → Connectors (también accesible en claude.ai/customize/connectors) → Add custom connector → pegar la URL → Add. No completar los campos de Advanced settings (OAuth): no se usan. Para usarlo en una conversación, el botón + del compositor → Connectors → habilitarlo. En los planes Team y Enterprise solo los Owners pueden agregar conectores personalizados (Organization settings → Connectors → Add); después cada miembro lo activa en su propia configuración.

Claude se conecta al servidor desde la infraestructura de Anthropic, no desde la computadora del usuario — también en Claude Desktop. Un conector agregado en claude.ai aparece automáticamente en Claude Code cuando la sesión está iniciada con la misma cuenta.

Claude Code

claude mcp add --transport http argleg https://mcp.bravo47.com/v5/mcp

# disponible en todos los proyectos del usuario
claude mcp add --transport http --scope user argleg https://mcp.bravo47.com/v5/mcp

# compartido con el equipo (escribe .mcp.json en la raíz del repositorio)
claude mcp add --transport http --scope project argleg https://mcp.bravo47.com/v5/mcp

Equivalente en .mcp.json (el campo "type": "http" es obligatorio: una entrada con url y sin type se descarta):

{
  "mcpServers": {
    "argleg": { "type": "http", "url": "https://mcp.bravo47.com/v5/mcp" }
  }
}

Verificar con claude mcp list o con /mcp dentro de la sesión. Los servidores definidos en un .mcp.json de proyecto piden aprobación interactiva la primera vez.

Claude API (Messages API)

Conector MCP en beta: el servidor va en el parámetro mcp_servers y se habilita con un mcp_toolset en tools, con el header anthropic-beta: mcp-client-2025-11-20. Solo se consumen tools (no prompts). Disponible en la Claude API y en Claude Platform on AWS; no en Amazon Bedrock ni en Google Cloud Vertex AI.

curl https://api.anthropic.com/v1/messages \
  -H "Content-Type: application/json" \
  -H "X-API-Key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: mcp-client-2025-11-20" \
  -d '{
    "model": "claude-opus-5",
    "max_tokens": 2000,
    "messages": [{"role": "user", "content": "¿Qué dice el art. 14 bis de la Constitución Nacional?"}],
    "mcp_servers": [
      { "type": "url", "url": "https://mcp.bravo47.com/v5/mcp", "name": "argleg" }
    ],
    "tools": [
      { "type": "mcp_toolset", "mcp_server_name": "argleg" }
    ]
  }'

El campo authorization_token se omite. Para acotar los tools expuestos al modelo se usa configs dentro del toolset; para sets grandes, defer_loading junto con el tool search tool.

Claude Desktop con configuración manual

Solo hace falta si se prefiere no usar conectores: el archivo claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/; Windows: %APPDATA%\Claude\) describe servidores locales, así que el remoto se expone a través del puente mcp-remote (requiere Node.js). Para conectar varias versiones en paralelo, una entrada por versión:

{
  "mcpServers": {
    "up_law_argleg_v5": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.bravo47.com/v5/mcp"]
    },
    "up_law_argleg_v4": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.bravo47.com/v4/mcp"]
    }
  }
}

ChatGPT y OpenAI#

ChatGPT

Los servidores MCP personalizados se agregan desde el modo de desarrollador, solo en la versión web (no en las apps móviles). Planes: Plus, Pro, Business, Enterprise y Edu; el plan Free no lo incluye. En Business, Enterprise y Edu un administrador debe habilitar primero el permiso (Workspace Settings → Permissions & Roles → Connected Data → Developer mode / Create custom MCP connectors) y solo administradores u owners pueden publicarlo al resto del espacio de trabajo.

  1. Activar el modo de desarrollador: Settings → Security and login → Developer mode. En versiones anteriores de la interfaz el interruptor estuvo en Settings → Apps → Advanced settings (antes, Settings → Connectors → Advanced); si no aparece en una ruta, probar la otra.
  2. Crear el conector: en Plugins (el directorio de apps de ChatGPT, antes «Connectors» y luego «Apps») → + → crear una app en modo desarrollador para un servidor MCP remoto → pegar la URL → autenticación No authenticationScan toolsCreate. Queda listada en Drafts.
  3. En una conversación: botón + del compositor → Developer mode → seleccionar el conector.

La documentación de OpenAI es inconsistente sobre los planes Plus y Pro: la guía para desarrolladores los incluye; el centro de ayuda reserva el «MCP completo» (con acciones de escritura) a Business, Enterprise y Edu. Como todos los tools de este servidor son de lectura, debería funcionar en Plus y Pro, pero no pudimos confirmarlo con una cuenta de esos planes. El modo Deep Research exige que el servidor exponga dos tools con nombre fijo (search y fetch) que este corpus no implementa: por ahora el corpus se usa en el chat normal con el modo de desarrollador.

Codex CLI

codex mcp add argleg --url https://mcp.bravo47.com/v5/mcp
codex mcp list

Equivalente en ~/.codex/config.toml:

[mcp_servers.argleg]
url = "https://mcp.bravo47.com/v5/mcp"
# tool_timeout_sec = 120   # el valor por defecto (60 s) alcanza; subirlo si una búsqueda híbrida se corta

Sin credenciales configuradas, Codex se conecta sin autenticación. Dentro del TUI, /mcp muestra los servidores activos.

Responses API

Tool de tipo mcp, sin header beta. Por defecto cada llamada a un tool pide aprobación (mcp_approval_request); como el servidor es de solo lectura, conviene "require_approval": "never". La API lista los tools en cada request y las definiciones cuentan como tokens de entrada: con 31 tools, allowed_tools permite recortar a los necesarios.

curl https://api.openai.com/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "gpt-5.6",
    "tools": [{
      "type": "mcp",
      "server_label": "argleg",
      "server_description": "Corpus legal argentino: InfoLEG, CSJN, SCBA, tratados, boletines oficiales.",
      "server_url": "https://mcp.bravo47.com/v5/mcp",
      "require_approval": "never"
    }],
    "input": "¿Qué dice el art. 14 bis de la Constitución Nacional?"
  }'

Google#

Gemini CLI

gemini mcp add --transport http -s user argleg https://mcp.bravo47.com/v5/mcp

Equivalente en ~/.gemini/settings.json (usuario) o .gemini/settings.json (proyecto). La clave es httpUrl: con url intenta SSE y falla.

{
  "mcpServers": {
    "argleg": { "httpUrl": "https://mcp.bravo47.com/v5/mcp", "timeout": 30000 }
  }
}

Cada llamada a un tool pide confirmación; "trust": true en la entrada lo evita. Funciona con una cuenta de Google gratuita. Verificar con gemini mcp list o /mcp.

Google Antigravity

Configuración global en ~/.gemini/config/mcp_config.json o por workspace en .agents/mcp_config.json; desde la interfaz, panel del agente → MCP Servers → Manage MCP Servers (en Antigravity 2.0: Settings → Customizations → Installed MCP Servers → Add MCP). La clave es serverUrl (url y httpUrl no están soportados).

{
  "mcpServers": {
    "argleg": { "serverUrl": "https://mcp.bravo47.com/v5/mcp" }
  }
}

Gemini Code Assist (VS Code y JetBrains)

El modo agente lee el mismo ~/.gemini/settings.json que Gemini CLI; no hay interfaz, se edita el archivo y se recarga la ventana (Developer: Reload Window). La documentación oficial solo muestra servidores remotos a través del puente mcp-remote; la entrada con httpUrl de Gemini CLI debería funcionar igual, pero no está documentada.

App de Gemini (gemini.google.com)

El chat común de Gemini no admite servidores MCP propios. Sí lo hace el modo agéntico Gemini Spark («Custom apps for Spark»: Settings & help → Connected Apps → Add a custom app → URL del servidor MCP), con requisitos estrictos al día de hoy: cuenta personal (no Workspace), usuario ubicado en Estados Unidos, interfaz en inglés. El flujo está diseñado alrededor de OAuth; no pudimos verificar que acepte un servidor sin autenticación.

Gemini Enterprise

Solo lo agrega un administrador, como fuente de datos: consola de Google Cloud → Gemini Enterprise → Data stores → Create data store → Custom MCP Server → URL del servidor → autenticación No authentication. Solo Streamable HTTP (el transporte SSE no está soportado). Las acciones vienen deshabilitadas y se habilitan desde Actions → Reload custom actions. Los usuarios finales no pueden agregar servidores por su cuenta.

Microsoft y GitHub#

GitHub Copilot en VS Code

Cualquier plan de Copilot, VS Code 1.99 o posterior. En Copilot Business y Enterprise la política MCP servers in Copilot viene desactivada y la habilita el administrador. Paleta de comandos → MCP: Add ServerHTTP → URL, o editar .vscode/mcp.json (workspace) / MCP: Open User Configuration (usuario). La clave de primer nivel es servers, no mcpServers:

{
  "servers": {
    "argleg": { "type": "http", "url": "https://mcp.bravo47.com/v5/mcp" }
  }
}

Al primer arranque pide confirmar la confianza en el servidor. Los tools se usan desde el modo Agent del chat.

GitHub Copilot CLI

copilot mcp add --transport http argleg https://mcp.bravo47.com/v5/mcp

Archivo ~/.copilot/mcp-config.json (o .mcp.json en el repositorio), con type, url y el campo obligatorio tools:

{
  "mcpServers": {
    "argleg": { "type": "http", "url": "https://mcp.bravo47.com/v5/mcp", "tools": ["*"] }
  }
}

GitHub Copilot cloud agent (ex coding agent) y code review

Lo configura un administrador del repositorio: Settings → Copilot → MCP servers → MCP configuration, con el mismo formato que el CLI (type, url, tools). Los tools corren sin aprobación por llamada; GitHub recomienda listar los tools permitidos en vez de "*". La misma configuración la usa Copilot code review.

Copilot en Visual Studio, JetBrains, Xcode y Eclipse

Mismo formato servers + url. Visual Studio 2022 17.14+: GitHub Copilot Chat → Agent → Tools → + → Add custom MCP server (archivos %USERPROFILE%\.mcp.json o <solución>\.mcp.json; los tools vienen deshabilitados y se activan a mano). JetBrains: chat de Copilot → Agent mode → icono de tools → Add MCP Tools. Xcode y Eclipse: desde la configuración del plugin de Copilot.

Microsoft Copilot Studio

En el agente: Tools → Add a tool → New tool → Model Context Protocol → nombre, descripción y URL del servidor → autenticación NoneCreateCreate a new connection → Add to agent. Requiere orquestación generativa activada y solo Streamable HTTP (SSE dejó de soportarse en 2025). El asistente crea por debajo un conector personalizado de Power Platform: si las políticas DLP del tenant bloquean conectores personalizados, bloquean también este.

Microsoft 365 Copilot

Un usuario final no puede pegar una URL MCP en Agent Builder. El servidor se incorpora como plugin MCP de un agente declarativo construido con Microsoft 365 Agents Toolkit en VS Code (Create a New Agent/App → Declarative Agent → Add an Action → Start with an MCP Server → URL → autenticación None), que después se aprovisiona y, para distribuirlo a la organización, se publica desde el centro de administración. Microsoft indica que el acceso anónimo está pensado para desarrollo y pruebas.

Editores e IDEs#

Cursor

~/.cursor/mcp.json (global) o .cursor/mcp.json (proyecto); una entrada con url se trata como servidor remoto, sin campo de tipo. Desde la interfaz: Customize en la barra lateral → MCP.

{
  "mcpServers": {
    "argleg": { "url": "https://mcp.bravo47.com/v5/mcp" }
  }
}

Cursor aplicó históricamente un tope de 40 tools activos en total; los 31 de la v5.0 entran solos, pero combinados con otros servidores grandes pueden desbordarlo. Los errores de conexión se ven en Output → MCP Logs.

Devin Desktop (ex Windsurf)

Windsurf pasó a llamarse Devin Desktop en junio de 2026 y convive con dos agentes que usan archivos distintos. Devin Local (el predeterminado): ~/.config/devin/mcp_config.json (Windows: %APPDATA%\devin\mcp_config.json) o .devin/mcp_config.json por proyecto, o bien devin mcp add argleg https://mcp.bravo47.com/v5/mcp:

{
  "mcpServers": {
    "argleg": { "url": "https://mcp.bravo47.com/v5/mcp", "transport": "http" }
  }
}

Cascade (el agente heredado de Windsurf, en retirada): ~/.codeium/windsurf/mcp_config.json con la clave serverUrl; desde la interfaz, icono MCPs del panel. Cascade limita a 100 tools en total.

Zed

Soporte nativo de servidores remotos. Settings → AI → MCP Servers → Add Server → Add Remote Server, o en settings.json bajo la clave context_servers:

{
  "context_servers": {
    "argleg": { "url": "https://mcp.bravo47.com/v5/mcp" }
  }
}

Un punto verde junto al servidor indica que conectó. Zed inicia un flujo OAuth solo si el servidor responde 401; este servidor no lo hace.

JetBrains AI Assistant y Junie

Settings | Tools | AI Assistant | Model Context Protocol (MCP)+ → pegar el JSON (formato mcpServers + url, el mismo que Cursor; también hay un Import from Claude) → alcance global o de proyecto → Apply. Junie tiene su configuración separada en Settings | Tools | Junie | MCP Settings (~/.junie/mcp/mcp.json o .junie/mcp/mcp.json), con el mismo formato. La opción «Automatically enable new and changed MCP servers» viene desactivada: si no se habilita el servidor a mano, sus tools no aparecen.

Cline

Panel de Cline → MCP Servers → Remote Servers → nombre, URL y Transport Type: Streamable HTTPAdd Server. En el JSON (Configure → Configure MCP Servers) el tipo es streamableHttp y es obligatorio: si se omite, Cline intenta SSE y falla.

{
  "mcpServers": {
    "argleg": { "type": "streamableHttp", "url": "https://mcp.bravo47.com/v5/mcp", "disabled": false, "autoApprove": [] }
  }
}

Zoo Code (ex Roo Code), Kilo Code y Continue

Otros asistentes#

Clientes de escritorio y open source#

Todos admiten servidores remotos por Streamable HTTP sin puente. La mayoría exige un modelo con soporte de tool calling.

Tabla de referencia#

Lo que más confunde al pasar de un cliente a otro es el nombre de las claves del archivo de configuración. Resumen:

ClienteClave de primer nivelCampo de la URLCampo de tipo
Claude CodemcpServersurl"type": "http" (obligatorio)
Codex CLI (config.toml)[mcp_servers.<nombre>]url
Gemini CLI / Code AssistmcpServershttpUrl
Google AntigravitymcpServersserverUrl
VS Code Copilot, Visual Studio, JetBrains Copilotserversurl"type": "http" (VS Code)
Copilot CLI / cloud agentmcpServersurl"type": "http" + tools
Cursor, LM Studio, JetBrains AI Assistant, JuniemcpServersurl
Devin LocalmcpServersurl"transport": "http"
Windsurf CascademcpServersserverUrl
Zedcontext_serversurl
ClinemcpServersurl"type": "streamableHttp" (obligatorio)
Zoo Code, Continue, LibreChatmcpServersurlstreamable-http
Kilo Codemcpurl"type": "remote"
Gooseextensionsuristreamable_http
AnythingLLMmcpServersurl"type": "streamable"

Problemas frecuentes#

Las rutas de menú y los formatos de archivo cambian con frecuencia; si alguna instrucción quedó desactualizada, avisanos.