Cerebra Legal MCP 서버
Anthropic의 엔지니어링 블로그 에서 소개된 "생각" 도구 개념을 기반으로 한 법적 추론 및 분석을 위한 엔터프라이즈급 MCP 서버입니다.
개요
Cerebra Legal은 법적 추론 및 분석을 위한 세 가지 강력한 도구를 제공합니다.
- legal_think - 도메인별 지침과 템플릿을 사용하여 복잡한 법률 문제를 분석하는 데 도움이 되는 체계적인 법적 추론 도구입니다.
- legal_ask_followup_question - 도메인별 옵션을 제공하여 법률적 맥락에서 후속 질문을 묻는 데 특화된 도구입니다.
- legal_attempt_completion - 적절한 구조와 인용 형식을 사용하여 법률 분석 결과를 제시하는 도구입니다.
서버는 합법적인 도메인(ANSC 이의 제기, 소비자 보호, 계약 분석)을 자동으로 감지하고 도메인별 지침, 템플릿 및 피드백을 제공합니다.
특징
- 도메인 감지 : 분석의 합법적 도메인을 자동으로 식별합니다.
- 도메인별 지침 : 다양한 법률 도메인에 맞는 맞춤형 지침을 제공합니다.
- 구조화된 템플릿 : 법률 분석을 위한 도메인별 템플릿을 제공합니다.
- 인용 형식 : 법적 인용을 적절하게 형식화합니다.
- 사고 품질 분석 : 법적 추론 품질에 대한 피드백을 제공합니다.
- 수정 지원 : 이전 생각을 수정할 수 있습니다.
설치
지엑스피1
용법
서버 실행
서버 테스트
저장소에는 서버와 상호 작용하는 방법을 보여주는 테스트 클라이언트가 포함되어 있습니다.
# 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 도구와 동일한 AI → 인간 상호작용 모델을 따르지만, 분야별 개선 사항이 적용됩니다.
시스템 프롬프트에는 각 도구에 대한 자세한 설명서가 포함되어야 합니다.
## 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>
이 지침은 AI가 다음 사항을 이해하도록 보장합니다.
- 이는 표준 도구의 특수 버전입니다.
- 동일한 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_followup_question 사용하기
클로드가 법적 분석을 완료하기 위해 추가 정보가 필요한 경우:
What specific provisions of the technical specifications are being challenged?
Claude는 legal_ask_followup_question 도구를 사용하여 다음을 수행합니다.
- 적절한 법률 용어로 질문을 구성하세요.
- 사용자가 선택할 수 있는 도메인별 옵션 제공
- 컨텍스트 인식 질문을 위한 법적 도메인 감지
3. legal_attempt_completion 사용
클로드가 최종 법적 분석을 제시할 준비가 되었을 때:
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_completion 도구를 사용하여 다음을 수행합니다.
- 적절한 법적 구조로 결론을 구성하세요
- 법률 인용문 추출 및 형식 지정
- 분석을 명확한 섹션으로 구성하세요
- 전문적인 법률 문서 형식을 제공합니다
도구 입력 스키마
법적 사고
{
"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
}
법적_질문_후속_질문
{
"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
}
법적 시도 완료
{
"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
건물
테스트
# Run the test client
./test-client.js
저장소
이 프로젝트는 GitHub에서 https://github.com/yoda-digital/mcp-cerebra-legal-server 에서 사용할 수 있습니다.
참고문헌
특허
MIT