Counsel

Consejo multi-LLM para asesoramiento profundo sobre tu tema o idea

Documentación

Servidor MCP de Counsel

npm version License: MIT Node.js Version

Un servidor de código abierto del Protocolo de Contexto de Modelo (MCP) que conecta agentes de IA a la API de Counsel para razonamiento estratégico y análisis de múltiples perspectivas.

Características

  • Alojado y autoalojado - Usa el servidor alojado al instante o ejecuta tu propia instancia
  • Razonamiento estratégico - Accede a los motores de debate y razonamiento multiperspectiva de Counsel
  • Sesiones de asesoría - Ejecuta sesiones interactivas de incorporación y ajuste de perfil
  • OAuth 2.0 nativo - Autenticación MCP estándar manejada automáticamente por los clientes
  • Transporte dual - STDIO para clientes locales, HTTP para clientes web y servidores compartidos

Tabla de contenidos


Inicio rápido (alojado)

Conéctate al instante al servidor MCP de Counsel alojado: no se requiere instalación.

http://counsel-mcp.getmason.dev/mcp

Para clientes MCP que admiten transporte HTTP, simplemente agrega:

{
  "mcpServers": {
    "counsel": {
      "url": "http://counsel-mcp.getmason.dev/mcp",
      "transport": "http"
    }
  }
}

La autenticación OAuth se maneja automáticamente mediante tu cliente MCP.


Instalación (autoalojado)

Ejecuta tu propia instancia del servidor MCP de Counsel localmente.

Requisitos previos

  1. Node.js 18+ instalado en tu sistema
  2. Una cuenta de Counsel en counsel.getmason.dev

Claude Desktop

Agrega a tu claude_desktop_config.json:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}

Claude Code (CLI)

claude mcp add counsel -- npx -y counsel-mcp-server start

O agrégalo manualmente a tu configuración de MCP:

{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}

Cursor

Agrega a tu configuración MCP de Cursor (.cursor/mcp.json en tu proyecto o configuración global):

{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}

Windsurf

Agrega a tu configuración MCP de Windsurf:

{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}

VS Code con Copilot

Agrega a tu configuración de VS Code (settings.json):

{
  "mcp.servers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"]
    }
  }
}

Otros clientes MCP

El servidor admite dos modos de transporte. Elige según las capacidades de tu cliente:

Modo STDIO (predeterminado)

La mayoría de los clientes MCP usan transporte STDIO. Configúralo con:

{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"],
      "env": {
        "COUNSEL_API_KEY": "your_api_key_here"
      }
    }
  }
}

Modo HTTP con OAuth

Para clientes que admiten transporte HTTP con OAuth 2.0, ejecuta el servidor por separado:

# Start the HTTP server
npx -y counsel-mcp-server http --port 3000

Esto inicia un servidor HTTP con:

  • Endpoint MCP: http://localhost:3000/mcp
  • Descubrimiento OAuth: http://localhost:3000/.well-known/oauth-authorization-server

Luego configura tu cliente para conectarse:

{
  "mcpServers": {
    "counsel": {
      "url": "http://localhost:3000/mcp",
      "transport": "http"
    }
  }
}

El modo HTTP usa OAuth 2.0 con gestión automática de tokens: no se requiere clave API.

Comparación de transportes

CaracterísticaModo STDIOModo HTTP
Comandonpx -y counsel-mcp-server startnpx -y counsel-mcp-server http
AutenticaciónClave API mediante variable de entornoOAuth 2.0 (automático)
ConfiguraciónConfiguración únicaEjecutar servidor + configurar cliente
Ideal paraClaude Desktop, Cursor, VS CodeClientes web, servidores compartidos

Autenticación

El servidor admite dos modos de autenticación:

Modo STDIO (predeterminado)

Establece la variable de entorno COUNSEL_API_KEY con tu clave API de counsel.getmason.dev:

export COUNSEL_API_KEY=your_api_key_here

O agrégala a la configuración de tu cliente MCP:

{
  "mcpServers": {
    "counsel": {
      "command": "npx",
      "args": ["-y", "counsel-mcp-server", "start"],
      "env": {
        "COUNSEL_API_KEY": "your_api_key_here"
      }
    }
  }
}

Modo HTTP (OAuth 2.0)

Cuando se ejecuta en modo HTTP (npx -y counsel-mcp-server http), la autenticación se maneja automáticamente mediante OAuth 2.0:

  1. Cuando uses por primera vez una herramienta de Counsel, tu cliente MCP solicitará autenticación
  2. Serás redirigido para iniciar sesión con tu cuenta de Counsel
  3. Después de la autorización, los tokens se gestionan automáticamente

No se requiere clave API manual en modo HTTP: tu cliente MCP maneja todo el flujo OAuth.

Endpoints OAuth (modo HTTP)

El servidor expone endpoints OAuth 2.0 estándar:

EndpointDescripción
/.well-known/oauth-authorization-serverDescubrimiento de metadatos OAuth
/authorizeEndpoint de autorización
/tokenEndpoint de intercambio de tokens
/registerRegistro dinámico de clientes

Herramientas disponibles

start_consultation

Inicia una nueva consulta estratégica (debate) para analizar una pregunta compleja con múltiples perspectivas.

ParámetroTipoObligatorioDescripción
questionstringSíLa pregunta central a analizar
contextstringNoContexto adicional sobre la situación
modeenumNoProfundidad del análisis: quick, standard (predeterminado), deep
stakeholdersstring[]NoPartes interesadas clave a considerar

Ejemplo:

Start a consultation about "Should we migrate our monolith to microservices?"
with context about our 50-person engineering team and mode set to deep

get_consultation_status

Consulta el estado de una consulta en curso.

ParámetroTipoObligatorioDescripción
debate_idstringSíEl ID de la consulta

get_consultation_report

Recupera el informe de síntesis final de una consulta completada.

ParámetroTipoObligatorioDescripción
debate_idstringSíEl ID de la consulta

list_consultations

Enumera tus consultas anteriores.

ParámetroTipoObligatorioDescripción
limitnumberNoNúmero de resultados (predeterminado: 10)

sharpen_question

Refina y mejora una pregunta estratégica antes de iniciar una consulta.

ParámetroTipoObligatorioDescripción
questionstringSíLa pregunta a refinar
contextstringNoContexto adicional

Ejemplo:

Sharpen this question: "Is AI good for our company?"

consult_advisor

Inicia una sesión de asesoría interactiva para lluvia de ideas o delimitación de problemas.

ParámetroTipoObligatorioDescripción
questionstringSíEl tema o la pregunta inicial

Ejemplos de uso

Toma de decisiones estratégicas

Use Counsel to analyze: "Should we expand into the European market in 2025?"

Consider these stakeholders: CEO, CFO, Head of Sales, Legal
Use deep analysis mode

Refinamiento de preguntas

Use the sharpen_question tool to improve this question:
"How do we fix our culture?"

Context: We're a 200-person startup experiencing rapid growth

Verificación del progreso de la consulta

Check the status of consultation abc-123-def

Configuración

Variables de entorno

VariablePredeterminadoDescripción
COUNSEL_API_URLhttps://counsel.getmason.devURL base de la API de Counsel
PORT3000Puerto del servidor (modo HTTP)

Comandos CLI

# STDIO mode (default) - for most MCP clients
npx -y counsel-mcp-server start

# HTTP mode - for clients supporting OAuth
npx -y counsel-mcp-server http [options]

HTTP Options:
  -p, --port <port>  Port to listen on (default: 3000)
  --host <host>      Host to bind to (default: localhost)

Solución de problemas

Error "Herramienta no encontrada"

Asegúrate de que el servidor MCP esté configurado correctamente en tu cliente. Reinicia tu cliente después de agregar la configuración.

Problemas de autenticación

  1. Verifica que tengas una cuenta de Counsel válida
  2. Intenta eliminar y volver a agregar la configuración del servidor MCP
  3. Borra la caché MCP de tu cliente si está disponible

Conexión rechazada

Si se ejecuta en modo HTTP, asegúrate de que:

  • El servidor esté en ejecución (npx counsel-mcp-server start)
  • El puerto no esté bloqueado por un firewall
  • Ningún otro proceso esté usando el mismo puerto

El servidor no se inicia

# Check Node.js version (requires 18+)
node --version

# Try running directly to see errors
npx counsel-mcp-server start

Modo de depuración

Para obtener registros detallados, revisa los registros de tu cliente MCP o ejecuta el servidor directamente en una terminal para ver la salida.


Desarrollo

Requisitos previos

  • Node.js 18+
  • npm 9+

Configuración

git clone https://github.com/mercurialsolo/counsel-mcp.git
cd counsel-mcp-server
npm install
npm run build

Comandos

npm run build            # Compile TypeScript
npm run dev              # Watch mode
npm run start            # Run server
npm test                 # Run tests
npm run lint             # Type check
npm run security:check   # Scan staged files for secrets
npm run security:check:all  # Scan all files for secrets

Seguridad

Este proyecto incluye detección automatizada de secretos:

  • Hook de pre-commit: escanea automáticamente los archivos preparados antes de cada commit
  • Integración con CI: los controles de seguridad se ejecutan en todas las solicitudes de extracción
  • Detección de patrones: claves AWS, tokens de GitHub, claves API, claves privadas, etc.

Consulta CONTRIBUTING.md para obtener más detalles.

Estructura del proyecto

src/
├── index.ts        # HTTP server, OAuth proxy, MCP transport
├── client.ts       # API client with request-scoped auth
├── config.ts       # Environment configuration
└── tools/
    ├── debates.ts  # Consultation tools
    └── advisor.ts  # Advisor session tools

Contribuciones

¡Agradecemos las contribuciones! Consulta CONTRIBUTING.md para conocer las pautas.

Inicio rápido

  1. Haz un fork del repositorio
  2. Crea una rama de características: git checkout -b feature/your-feature
  3. Realiza tus cambios y agrega pruebas
  4. Ejecuta npm test para asegurarte de que las pruebas pasen
  5. Envía una solicitud de extracción

Licencia

Licencia MIT: consulta LICENSE para obtener más detalles.


Enlaces