Servidor MCP de Cerebra Legal
Un servidor MCP de nivel empresarial para razonamiento y análisis legal basado en el concepto de herramienta "pensar" del blog de ingeniería de Anthropic .
Descripción general
Cerebra Legal proporciona tres herramientas poderosas para el razonamiento y análisis jurídico:
legal_think - Una herramienta de razonamiento jurídico estructurado que ayuda a analizar cuestiones legales complejas con orientación y plantillas específicas del dominio.
legal_ask_followup_question : una herramienta especializada para realizar preguntas de seguimiento en contextos legales con opciones específicas del dominio.
legal_attempt_completion : una herramienta para presentar resultados de análisis legal con la estructura y el formato de citas adecuados.
El servidor detecta automáticamente dominios legales (impugnación ANSC, protección del consumidor, análisis de contratos) y brinda orientación, plantillas y comentarios específicos para cada dominio.
Related MCP server: Rules MCP Server
Características
Detección de dominio : identifica automáticamente el dominio legal del análisis
Orientación específica del dominio : proporciona orientación personalizada para diferentes dominios legales
Plantillas estructuradas : ofrece plantillas específicas del dominio para el análisis legal.
Formato de citas : formatea correctamente las citas legales
Análisis de la calidad del pensamiento : proporciona retroalimentación sobre la calidad del razonamiento jurídico.
Soporte de revisión : permite revisar pensamientos previos
Instalación
# Clone the repository
git clone https://github.com/yoda-digital/mcp-cerebra-legal-server.git
cd mcp-cerebra-legal-server
# Install dependencies
npm install
# Build the project
npm run build
Uso
Ejecución del servidor
Probando el servidor
El repositorio incluye un cliente de prueba que demuestra cómo interactuar con el servidor:
# Make the test client executable
chmod +x test-client.js
# Run the test client
./test-client.js
El cliente de prueba hará lo siguiente:
Iniciar el servidor
Envíe una solicitud de herramientas/lista para obtener las herramientas disponibles
Envíe una solicitud legal_think con un ejemplo de pensamiento
Mostrar las respuestas del servidor
Añadiendo a Claude
Para agregar el servidor a Claude, actualice su archivo de configuración MCP con la siguiente configuración:
Para la extensión de VSCode
Edite el archivo en ~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json :
{
"mcpServers": {
"cerebra-legal": {
"command": "node",
"args": ["/path/to/mcp-cerebra-legal-server/build/index.js"],
"disabled": false,
"alwaysAllow": []
}
}
}
Para la aplicación de escritorio de Claude
Edite el archivo en ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o el equivalente en su plataforma:
{
"mcpServers": {
"cerebra-legal": {
"command": "node",
"args": ["/path/to/mcp-cerebra-legal-server/build/index.js"],
"disabled": false,
"alwaysAllow": []
}
}
}
Usando las herramientas en Claude
Una vez agregado el servidor a Claude, podrás usar las herramientas en tus conversaciones:
Integración de indicaciones del sistema
Para una interacción óptima de la IA con estas herramientas legales, es fundamental incluir una guía adecuada en el mensaje del sistema. Estas herramientas siguen el mismo modelo de interacción IA → Humano que las herramientas estándar de Cline, pero con mejoras específicas para cada dominio.
El aviso del sistema debe incluir documentación detallada para cada herramienta:
## legal_think
Description: A structured legal reasoning tool that helps analyze complex legal issues with domain-specific guidance and templates. This tool enables step-by-step legal analysis with feedback on reasoning quality.
Parameters:
- thought: (required) The current legal reasoning step
- thoughtNumber: (required) Current thought number in sequence
- totalThoughts: (required) Estimated total thoughts needed
- nextThoughtNeeded: (required) Whether another thought step is needed
- category: (optional) Legal domain category (auto-detected if not provided)
- references: (optional) Array of legal references
- isRevision: (optional) Whether this revises previous thinking
- revisesThoughtNumber: (optional) Which thought is being reconsidered
- requestGuidance: (optional) Whether to request domain-specific guidance
- requestTemplate: (optional) Whether to request a domain-specific template
Usage:
<legal_think>
<thought>Your legal reasoning step here</thought>
<thoughtNumber>Current thought number</thoughtNumber>
<totalThoughts>Estimated total thoughts</totalThoughts>
<nextThoughtNeeded>true or false</nextThoughtNeeded>
<category>Legal domain (optional)</category>
<references>Array of references (optional)</references>
<isRevision>true or false (optional)</isRevision>
<revisesThoughtNumber>Thought number being revised (optional)</revisesThoughtNumber>
<requestGuidance>true or false (optional)</requestGuidance>
<requestTemplate>true or false (optional)</requestTemplate>
</legal_think>
## legal_ask_followup_question
Description: Ask the user a legal domain-specific question to gather additional information needed to complete the task. This tool enhances the standard ask_followup_question with legal domain detection, terminology formatting, and domain-specific suggested options.
Parameters:
- question: (required) The question to ask the user. This will be automatically enhanced with appropriate legal terminology.
- options: (optional) An array of 2-5 options for the user to choose from. If not provided, domain-specific options will be automatically suggested.
- context: (optional) Additional context to help with domain detection and question formatting.
Usage:
<legal_ask_followup_question>
<question>Your question here</question>
<options>
Array of options here (optional), e.g. ["Option 1", "Option 2", "Option 3"]
</options>
<context>Additional context to help with domain detection (optional)</context>
</legal_ask_followup_question>
## legal_attempt_completion
Description: Present the result of your work to the user with proper legal structure and formatting. This tool enhances the standard attempt_completion with legal domain detection, document structuring, and citation formatting.
Parameters:
- result: (required) The result of the task. This will be automatically formatted with proper legal structure.
- command: (optional) A CLI command to execute to show a live demo of the result to the user.
- context: (optional) Additional context to help with domain detection and result formatting.
Usage:
<legal_attempt_completion>
<result>
Your final result description here
</result>
<command>Command to demonstrate result (optional)</command>
<context>Additional context to help with domain detection (optional)</context>
</legal_attempt_completion>
Esta guía garantiza que la IA comprenda:
Se trata de versiones especializadas de herramientas estándar.
Mantienen el mismo flujo de interacción IA → Humano
Tienen capacidades y parámetros adicionales
Cómo formatear correctamente las llamadas a herramientas
Sin esta orientación, es posible que la IA no aproveche al máximo las capacidades específicas del dominio integradas en estas herramientas.
1. Uso del pensamiento legal
La herramienta legal_think le ayuda a analizar cuestiones jurídicas complejas con un pensamiento estructurado:
I need to analyze an ANSC contestation where a claimant argues that technical specifications in a tender were too restrictive.
Claude utilizará la herramienta legal_think para:
Detectar el dominio legal (impugnación ANSC)
Proporcionar orientación específica del dominio
Ofrecer una plantilla estructurada para el análisis
Dar retroalimentación sobre la calidad del razonamiento jurídico
Apoyar la revisión de pensamientos previos
2. Uso de preguntas de seguimiento legales
Cuando Claude necesita más información para completar un análisis legal:
What specific provisions of the technical specifications are being challenged?
Claude utilizará la herramienta legal_ask_followup_question para:
Formatee la pregunta con la terminología legal apropiada
Proporcionar opciones específicas del dominio para que el usuario elija
Detectar el dominio legal para realizar preguntas conscientes del contexto
3. Uso de la finalización del intento legal
Cuando Claude esté listo para presentar el análisis legal final:
Based on my analysis, the technical specifications requiring "minimum 5 years experience" appear disproportionate and likely violate Article 33(2) of Law 131/2015 on public procurement.
Claude utilizará la herramienta legal_attempt_completion para:
Formatear la conclusión con la estructura legal adecuada
Extraer y formatear citas legales
Organice el análisis en secciones claras
Proporcionar un formato de documento legal profesional
Esquemas de entrada de herramientas
pensamiento legal
{
"thought": "Analyzing ANSC contestation where claimant argues technical specifications were too restrictive.",
"thoughtNumber": 1,
"totalThoughts": 5,
"nextThoughtNeeded": true,
"category": "ansc_contestation", // Optional, auto-detected if not provided
"references": ["Law 131/2015", "ANSC Decision #12345"], // Optional
"isRevision": false, // Optional
"revisesThoughtNumber": null, // Optional
"requestGuidance": true, // Optional
"requestTemplate": true // Optional
}
pregunta de seguimiento legal
{
"question": "What specific provisions of the technical specifications are being challenged?",
"options": [ // Optional, auto-generated if not provided
"Are you challenging the experience requirements?",
"Are you challenging the technical capacity requirements?",
"Are you challenging the financial requirements?",
"Are you challenging the certification requirements?"
],
"context": "ANSC contestation regarding procurement of IT equipment" // Optional
}
intento_legal_finalizado
{
"result": "Based on the analysis of ANSC contestation #12345, the technical specifications requiring 'minimum 5 years experience' appear disproportionate and likely violate Article 33(2) of Law 131/2015 on public procurement.",
"command": null, // Optional
"context": "ANSC contestation analysis" // Optional
}
Arquitectura
El servidor está construido con una arquitectura modular:
Detector de dominio : identifica el dominio legal del análisis
Base de conocimientos legales : proporciona orientación y plantillas específicas del dominio
Formateador de citas : formatea citas legales correctamente
Implementaciones de herramientas : maneja la lógica de cada herramienta
Desarrollo
Estructura del proyecto
mcp-cerebra-legal-server/
├── src/
│ ├── shared/ # Shared components
│ │ ├── DomainDetector.ts
│ │ ├── LegalKnowledgeBase.ts
│ │ ├── CitationFormatter.ts
│ │ └── types.ts
│ ├── tools/ # Tool implementations
│ │ ├── LegalThinkTool.ts
│ │ ├── LegalAskFollowupQuestionTool.ts
│ │ └── LegalAttemptCompletionTool.ts
│ ├── utils/ # Utilities
│ │ └── logger.ts
│ └── index.ts # Main server entry point
├── build/ # Compiled JavaScript
├── test-client.js # Test client
├── package.json
└── tsconfig.json
Edificio
Pruebas
# Run the test client
./test-client.js
Repositorio
Este proyecto está disponible en GitHub en: https://github.com/yoda-digital/mcp-cerebra-legal-server
Referencias
Licencia
Instituto Tecnológico de Massachusetts (MIT)