法庭监听MCP服务器
一种模型上下文协议(MCP)服务器,通过官方CourtListener API v4提供对CourtListener法律数据库和联邦法规电子代码(eCFR)的LLM友好访问。该服务器能够搜索和检索法律意见、法庭案件、法官、法律文件和联邦法规,以进行精确的法律研究和引文验证。
🎯 目的
CourtListener MCP服务器提供对以下内容的全面访问 法律案件数据、法院意见和联邦法规 通过广泛的CourtListener和eCFR数据库。CourtListener包含来自联邦和州法院的数百万份法律意见,而eCFR则提供最新的联邦法规。
📋 关键优势
- 综合法律数据库:
- 获取数百万份法院意见和法律裁决 - 联邦和州法院的覆盖范围 - 来自法院系统的实时更新
- 全文内容:
- 完整的引文验证意见文本 - 结构化法律文件组织 - 丰富的元数据,包括法官、法院和日期
- 监管研究:
- 搜索和检索当前的联邦法规 - 验证监管引用和参考文献
- 法律研究:
- 按法官、法院、案件名称或内容搜索 - 核实确切的法律语言和先例 - 验证法律引用和参考文献
🛠️ 可用的MCP工具
CourtListener MCP服务器提供了这些生产就绪工具(参见 app/README.md 有关详细信息和参数):
- 意见和案例搜索:
- search_opinions --搜索法律意见和法院判决 - search_dockets --搜索法院案件和备审案件 - search_dockets_with_documents --使用嵌套文档搜索日程表 - search_recap_documents --搜索RECAP文件 - search_audio --搜索口头辩论音频 - search_people --搜寻法官和法律专业人士
- 实体检索:
- get_opinion, get_docket, get_audio, get_court, get_person, get_cluster
- 引用和监管工具:
- lookup_citation, batch_lookup_citations, verify_citation_format, parse_citation_with_citeurl, extract_citations_from_text, enhanced_citation_lookup - list_titles, list_agencies, search_regulations, list_all_corrections, list_corrections_by_title, get_search_suggestions, get_search_summary, get_title_search_counts, get_daily_search_counts, get_ancestry, get_title_structure, get_source_xml, get_source_json
- 系统与健康:
- status, get_api_status, health_check
看 app/README.md 获取所有工具、参数和使用示例的完整参考。
📦 安装
先决条件
- Python 3.12+
- 紫外线 用于依赖关系管理
- 用于访问CourtListener API的Internet连接
使用uv进行安装
# Clone the repository
git clone
cd CourtListener
# Install dependencies
uv sync
# Activate the environment (optional)
uv shell环境配置
创建一个 .env 项目根目录中的文件:
COURTLISTENER_BASE_URL=https://www.courtlistener.com/api/rest/v4/
COURT_LISTENER_TIMEOUT=30
LOG_LEVEL=INFO
RATE_LIMIT_REQUESTS=10
RATE_LIMIT_PERIOD=60
DEBUG=false
MCP_PORT=8765
MCP_DEV_PORT=8766运行服务器
默认情况下,服务器现在使用可流式传输的http运行:
uv run python -m app.server这将在以下位置启动服务器:
- 主机:
0.0.0.0(可通过外部连接访问) - 端口:
8000 - 端点:
http://localhost:8000/mcp/
或者使用VS Code任务: 运行MCP服务器
连接到服务器
使用流式http传输时,客户端可以使用以下方式连接到服务器:
from fastmcp import Client
async with Client("http://localhost:8000/mcp/") as client:
result = await client.call_tool("status")
print(result)💡 使用示例
看 app/README.md 有关详细的工具使用和示例,包括搜索、引用和监管查询。
🐳 Docker设置
# Production
docker-compose up -d
# Development with hot reload
docker-compose --profile dev up --build🧪 测试
uv run pytest
uv run pytest --cov=app --cov-report=term-missing看 测试/README.md 有关测试套件的详细信息、覆盖范围和故障排除。
🔧 发展
uv run ruff format .
uv run ruff check .
uv run mypy app/
uv run pip-audit🚨 故障排除
看 app/README.md 和 测试/README.md 用于故障排除和高级使用。
📚 文档
______________________________________________________________________
准备使用! CourtListener MCP服务器通过20多种全面的MCP工具提供对联邦法规和法律数据的生产就绪访问。
