Saltar al contenido principal

Clientes

Cualquier cliente que hable Streamable HTTP MCP y sepa hacer el flujo OAuth 2.1 del MCP puede conectarse. Solo indicas la URL; el cliente descubre por su cuenta dónde autenticarse, abre el inicio de sesión de Kobana en el navegador y guarda el token — ve Autenticación.

Un cliente sin soporte de OAuth también se conecta, con un token personal: créalo en Cuenta Kobana → Tokens y Acceso → Nuevo Token Personal, con la app Régua de Cobrança y el uso MCP, y configura el cliente para enviarlo en la cabecera Authorization: Bearer <token>. Es también el camino para que un agente escriba: los clientes conectados por OAuth hoy solo leen.

Claude Code​

claude mcp add --transport http kobana-dunning https://mcp.dunning.kobana.com.br

Después, ejecuta /mcp en una sesión y elige Authenticate para iniciar sesión en Kobana.

Con un token personal, sin flujo OAuth:

claude mcp add --transport http kobana-dunning https://mcp.dunning.kobana.com.br \
--header "Authorization: Bearer <token personal>"

Clientes configurados por archivo​

Los clientes que leen un archivo JSON de configuración piden la URL y el transporte. Por el flujo OAuth no hay cabecera de autenticación:

{
"mcpServers": {
"kobana-dunning": {
"type": "http",
"url": "https://mcp.dunning.kobana.com.br"
}
}
}

En la primera conexión el cliente abre el navegador para que autorices. No hay cabecera de selección de organización: la organización queda grabada en el token.

Con un token personal, agrega la cabecera:

{
"mcpServers": {
"kobana-dunning": {
"type": "http",
"url": "https://mcp.dunning.kobana.com.br",
"headers": { "Authorization": "Bearer <token personal>" }
}
}
}

Trata el archivo como secreto: quien lo lee usa el token.

Clientes que conectan por URL​

Claude y ChatGPT conectan un servidor remoto pegando la URL https://mcp.dunning.kobana.com.br en la configuración de conectores. El flujo OAuth corre dentro de la propia app.

Postura recomendada para agentes​

  • Autoriza con la cuenta correcta. Las tools siguen los permisos de panel de la persona dueña del token. Un cliente autorizado por un analista de solo lectura expone solo las tools de lectura, haga lo que haga el modelo del otro lado. Es la forma más fuerte de restringir un agente.
  • Un token por cliente. Cada cliente hace su propio flujo, o recibe su propio token personal, que solo vale en el MCP — no sirve para llamar a la API REST.
  • Token personal: validez corta y alcance mínimo. Marca solo los recursos y accesos que el agente necesita, y la validez más corta que el uso permita: revocar el token en Kobana no corta el acceso antes del vencimiento — ve Revocación del token personal.
  • Empieza en sandbox (https://mcp.dunning.sandbox.kobana.com.br). Las tools destructivas envían mensajes a deudores, negativan y protestan de verdad; el servidor pide confirmación antes de cada una (y las rechaza a un cliente que no puede confirmar), pero la primera exploración no debe ser en producción.

Verificando la conexión​

La forma más simple es preguntarle al asistente: "¿qué organización estoy usando en Régua de Cobrança?" — llama a dunning_me, que responde la persona, la organización, los scopes y el vencimiento del token.

Con un token emitido para el MCP — un token personal con uso MCP, por ejemplo —, puedes comprobarlo con curl:

# 1. ¿Quién soy y qué organización alcanza este token?
curl -s https://mcp.dunning.kobana.com.br/ \
-H "Authorization: Bearer $MCP_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"dunning_me","arguments":{}}}'

# 2. ¿Cuántas tools alcanza este token?
curl -s https://mcp.dunning.kobana.com.br/ \
-H "Authorization: Bearer $MCP_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' | jq '.result.tools | length'

Si el número es menor de lo que esperabas, son los permisos de la persona o el alcance del token — ve Autenticación. No es un error. Si solo aparece dunning_me y las demás llamadas responden key_owner_not_member, la persona aún no entró en el panel de Régua de Cobrança con su cuenta Kobana.