Cerebra合法MCP服务器
基于“think”工具概念的企业级MCP服务器,用于法律推理和分析 Anthropic的工程博客.
概述
Cerebra Legal提供了三种强大的法律推理和分析工具:
- 法律思考 -一种结构化的法律推理工具,通过特定领域的指导和模板帮助分析复杂的法律问题。
- legal_ask_跟进_问题 -一种专门的工具,用于在具有特定领域选项的法律背景下提出后续问题。
- legal_尝试_完成 -一种以适当的结构和引用格式呈现法律分析结果的工具。
服务器自动检测合法域(ANSC争议、消费者保护、合同分析),并提供特定域的指导、模板和反馈。
特性
- 域检测:自动识别分析的法律域
- 特定领域指导:为不同的法律领域提供量身定制的指导
- 结构化模板:提供特定领域的法律分析模板
- 引文格式:正确格式化法律引用
- 思维质量分析:提供关于法律推理质量的反馈
- 修订支持:允许修改以前的想法
安装
# 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用法
运行服务器
npm start测试服务器
存储库包括一个测试客户端,演示如何与服务器交互:
# Make the test client executable
chmod +x test-client.js
# Run the test client
./test-client.js测试客户端将:
- 启动服务器
- 发送工具/列表请求以获取可用工具
- 发送带有示例思维的legal_think请求
- 显示服务器的响应
添加到克劳德
要将服务器添加到Claude,请使用以下配置更新MCP设置文件:
用于VSCode扩展
在以下位置编辑文件 ~/.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": []
}
}
}适用于Claude桌面应用程序
在以下位置编辑文件 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或您平台上的同等产品:
{
"mcpServers": {
"cerebra-legal": {
"command": "node",
"args": ["/path/to/mcp-cerebra-legal-server/build/index.js"],
"disabled": false,
"alwaysAllow": []
}
}
}使用Claude中的工具
一旦服务器被添加到Claude中,您就可以在对话中使用这些工具:
系统快速集成
为了使人工智能与这些法律工具进行最佳交互,在系统提示中包含适当的指导至关重要。这些工具遵循相同的AI→ 人机交互模型作为标准的Cline工具,但具有特定领域的增强功能。
系统提示应包括每个工具的详细文档:
## 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:
Your legal reasoning step here
Current thought number
Estimated total thoughts
true or false
Legal domain (optional)
Array of references (optional)
true or false (optional)
Thought number being revised (optional)
true or false (optional)
true or false (optional)
## 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:
Your question here
Array of options here (optional), e.g. ["Option 1", "Option 2", "Option 3"]
Additional context to help with domain detection (optional)
## 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:
Your final result description here
Command to demonstrate result (optional)
Additional context to help with domain detection (optional)
该指南确保AI理解:
- 这些是标准工具的专用版本
- 他们保持相同的AI→ 人机交互流程
- 它们具有额外的功能和参数
- 如何正确格式化工具调用
如果没有这一指导,人工智能可能无法充分利用这些工具中内置的特定领域功能。
1.使用legal_think
legal_think工具可帮助您用结构化思维分析复杂的法律问题:
I need to analyze an ANSC contestation where a claimant argues that technical specifications in a tender were too restrictive.Claude将使用legal_think工具:
- 检测合法域名(ANSC竞争)
- 提供特定领域的指导
- 提供结构化的分析模板
- 对法律推理的质量提供反馈
- 支持修改之前的想法
2.使用legal_ask_flowup_question
当克劳德需要更多信息来完成法律分析时:
What specific provisions of the technical specifications are being challenged?Claude将使用legal_ask_followup_question工具:
- 用适当的法律术语格式化问题
- 提供特定于域的选项供用户选择
- 检测上下文感知提问的法律领域
3.使用legal_attempt_coompletion
当克劳德准备提交最终的法律分析时:
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将使用legal_attempt_complement工具:
- 以适当的法律结构形成结论
- 提取并格式化法律引文
- 将分析组织成清晰的部分
- 提供专业的法律文件格式
工具输入模式
法律思考
{
"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
}legal_ask_跟进_问题
{
"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
}legal_尝试_完成
{
"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
}建筑
服务器采用模块化架构构建:
- 域检测器:确定分析的法律领域
- 法律知识库:提供特定领域的指导和模板
- 引文格式化工具:正确设置法律引文格式
- 工具实施:处理每个工具的逻辑
发展
项目结构
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建筑
npm run build测试
# Run the test client
./test-client.js仓库
这个项目可以在GitHub上找到: https://github.com/yoda-digital/mcp-cerebra-legal-server
参考文献
- “思考”工具:使克劳德能够在复杂的工具使用情况下停下来思考 -人类工程学博客
许可证
麻省理工学院
