MCP法律文件分析器
npm mcp-legal-doc-analyzer 包
用于法律文档工作流的领域特定的MCP工具。从合同中提取关键子句,根据可配置的规则模板标记有风险的条款,在子句级别比较文档版本,并根据标准清单检查遵从性—所有这些都在本地进行,而无需文档离开您的机器。
关键特性
- 条款提取:从PDF、DOCX和纯文本文件中识别和标记条款边界(终止、责任、知识产权、适用法律等)。
- 低迷的风险:根据YAML规则模板检查提取的子句,并返回按严重程度排序的结果。
- 合规检查:根据结构化清单(保密协议、雇佣协议、SaaS条款)根据每个要求的通过/不通过来验证文档。
- 版本dif:在子句级别比较文档的两个版本——而不是原始文本行。
- 可配置的模板:规则集是法律专业人员无需编写代码即可审查和编辑的YAML文件。
- 只处理:所有解析和分析都在设备上运行;文件从不对外传输。
免责声明
mcp-legal-doc-analyzer 是分析援助,不是法律建议。在作出决定之前,应由合格的法律专业人员审查产出。子句提取采用模式匹配和启发式方法;对于非标准文档格式,结果可能不完整或不正确。低置信度的提取被显式标记。
文档内容在本地处理并存储在本地SQLite数据库中。不要共享包含机密文档的数据库导出。
需求
- Node.js v20.19或更新版本。
- npm。
开始
在MCP客户端中添加以下配置:
{
"mcpServers": {
"legal-analyzer": {
"command": "npx",
"args": ["-y", "mcp-legal-doc-analyzer@latest"]
}
}
}
从目录加载自定义合规模板。
{
"mcpServers": {
"legal-analyzer": {
"command": "npx",
"args": ["-y", "mcp-legal-doc-analyzer@latest", "--templates=~/legal/my-templates"]
}
}
}
MCP客户端配置
Amp·Claude Code·Cline·Cursor·VS Code·Windsurf·Zed
你的第一个提示
提供PDF或DOCX合同文件,然后输入:
Extract the key clauses from this NDA and flag any risky provisions.
您的客户应该返回一份提取条款的列表和一份按严重程度排序的风险报告。
工具
文件分析(4个工具)
extract_clauses-识别和标记条款边界与信心分数;支持。pdf,。docx,。txtflag_risks-针对合规模板的严重程度排序的风险调查结果check_compliance-每个规则的结构化通过/失败检查表验证summarize_terms-主要条款的简明扼要的英文摘要
对比(1个工具)
compare_versions-两个文档版本之间的子句级差异
模板(1个工具)
list_templates-列举所有可用的合规模板
导出和批量(3个工具)
export_analysis_report-包含条款表和风险发现的独立HTML报告;适合印刷export_audit_log—以JSON或CSV格式导出分析审计日志,并可选择日期范围过滤bulk_analyze-批量处理合同文件组合并提供进度通知
绑定模板
9个合规模板包括开箱即用:
- NDA
- 就业协议
- SaaS客户协议
- 软件许可协议
- 供应商协议
- 咨询协议
- 数据处理协议
- 知识产权转让
- 贷款协议
使用 list_templates 枚举运行时所有可用的模板,包括通过 --templates。
配置
--templates / --templates-dir
目录,以便从中加载自定义YAML遵从性规则模板。此目录下的模板将与内置模板集合并。
类型: string
--db / --db-path
用于存储文档分析历史的SQLite数据库文件的路径。
类型: string
默认值: ~/.mcp/legal.db
--confidence-threshold
提取的子句包含在结果中的最小置信度分数(0-1)。低于该阈值的提取被标记为低置信度。
类型: number
默认值: 0.6
--no-history
禁用在本地数据库中存储文档分析结果。
类型: boolean
默认值: false
--clause-patterns
定义自定义子句检测模式的YAML文件的路径。看到 custom-clause-patterns.example.yaml 在模式的源树中。
类型: string
--bulk-concurrency
使用时并行处理的文件数 bulk_analyze。
类型: number
默认值: 4
--ocr
为不包含可提取文本层的扫描pdf启用OCR回退。需要可选的对等依赖项 tesseract.js, pdfjs-dist, canvas。
类型: boolean
默认值: false
--http-port
在给定端口上以Streamable HTTP模式启动服务器,而不是stdio。设置后,服务器接受适合共享团队部署的HTTP连接。
类型: number
传递标志 args 属性在JSON配置中:
{
"mcpServers": {
"legal-analyzer": {
"command": "npx",
"args": [
"-y",
"mcp-legal-doc-analyzer@latest",
"--confidence-threshold=0.8",
"--templates=~/legal/templates"
]
}
}
}
验证
在发布新版本之前,请使用MCP Inspector验证服务器,以确认所有工具都正确公开并且协议握手成功。
运行
npm run build首先放入打包好的模板dist/templates在验证过程中出现。
交互式用户界面 (打开浏览器):
npm run build && npm run inspect
CLI模式 (脚本/ ci友好):
# List all tools
npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list
# List resources and prompts
npx @modelcontextprotocol/inspector --cli node dist/index.js --method resources/list
npx @modelcontextprotocol/inspector --cli node dist/index.js --method prompts/list
# Call a tool (example — replace with a relevant read-only tool for this plugin)
npx @modelcontextprotocol/inspector --cli node dist/index.js \
--method tools/call --tool-name list_templates
# Call a tool with arguments
npx @modelcontextprotocol/inspector --cli node dist/index.js \
--method tools/call --tool-name list_templates --tool-arg key=value
在发布之前运行,以在工具注册和运行时启动时捕获回归。
贡献
遵从性规则模板 src/templates/ 作为YAML文件,并且可以在不接触代码的情况下贡献。子句提取测试必须只使用合成的或匿名的文档——永远不要在存储库中包含真正的合同。不要记录文档内容。
npm install && npm test
MCP注册和市场
此插件可用于:
搜索 mcp-legal-doc-analyzer。