组装MCP
是韩国国会信息公开系统(Open API)的模型上下文协议(MCP)服务器。 Claude等AI代理可以实时查询和分析国会议案、会议记录、议员信息等。
______________________________________________________________________
主要功能
该服务器提供以下工具:
- 搜索和查询议案
- search_bills(keyword):按关键字搜索议案。(例如“人工智能”、“预算”) - get_recent_bills():获取最近提议的议案列表。 - get_bill_details(bill_id):查询议案的详细信息(提案理由、主要要点等)。 - get_bill_info(...):根据议案编号、发起人、日期等详细条件搜索议案。
- 会议记录和委员会
- get_meeting_records(bill_id):查看与特定议案相关的委员会会议记录。 - search_meetings(...):按日期、委员会名称等搜索会议记录。 - get_committee_list():查询国会委员会列表。 - get_committee_members(...):查询委员会成员(成员名单)。
- 国会议员信息
- get_member_info(name):查询国会议员的个人资料、所属政党、选区等。 - get_representative_report(name): \[智能\] 生成综合报告,包括议员的基本信息、提案、委员会经历和投票经历。 - get_member_committee_careers(name):查询议员的详细委员会活动经历。
- 表决和投票分析
- get_bill_voting_results(bill_id): \[智能\] 分析特定议案的全体会议表决结果(赞成/反对/弃权)和各政党的投票倾向。 - analyze_voting_trends(topic): \[智能\] 分析与特定主题(如“AI”、“税制”)相关的法案在全体会议上的投票倾向。 - get_member_voting_history(...):查询特定议员或议案的个人表决记录。
- 智能分析和复合查询
- analyze_legislative_issue(topic): \[智能\] 通过对特定主题的法案、会议记录和主要议员进行综合分析,生成报告。 - get_bill_history(bill_id): \[智能\] 以时间轴的形式整合从议案的提出到处理的整个生命周期。 - get_legislative_reports(keyword): \[智能\] 实时联系并提供国会预算政策办公室(NABO)专业报告和国会新闻数据。 - get_committee_work_summary(committee_name): \[智能\] 将各委员会的搁置议案和相关报告合并起来,总结现状。
- 其他和高级功能
- get_assembly_info():检查服务器状态和可用的API信息。 - list_api_services():搜索所有可用的国会API服务。 - call_api_raw():(高级用户)直接调用API服务。
LLM使用指南(重要)
- 该服务器是国会OpenAPI 约270个全部可用。不要因为不在高级工具中就回答“没有功能”。
- 优先使用智能工作流:与其简单地列出数据
analyze_或者get_..._report使用系列工具提供立体的见解。
- 主题分析: analyze_legislative_issue("AI") ->法案+会议+议员综合信息 - 议员分析: get_representative_report("의원명") ->个人资料+法案+经历+投票倾向 - 表决分析: get_bill_voting_results("의안ID") ->赞成和反对统计+各政党倾向
- 标准指南:
list_api_services(keyword)→get_api_spec(service_id)→call_api_raw(service_id, params)您可以通过组合查询任何信息。 - 请广泛搜索关键词(国文/英文,空格变形)。找到的ID为
get_api_spec确认所需参数后call_api_raw调用。 - 示例:“委员会成员”→
list_api_services("위원 명단")在中确认服务ID→get_api_spec通过确认参数→call_api_raw通过查询名单→必要时get_member_info通过补充个别议员的详细情况。 - 答:如果您不在高级工具中,请提出上述组合或直接调用以生成结果。
- 捷径:委员名单
get_committee_members可以通过直接查询,后续get_member_info加上详细内容就可以了。
______________________________________________________________________
开始(Quick Start)
这个项目 uv 基于包管理器进行管理。 uvx无需安装即可运行。
1.发放API密钥
公共数据门户(data.go.kr)请在中申请使用“国会事务处”相关API,以获得认证密钥。
2.Claude Desktop集成设置
要在Claude Desktop应用程序中使用此MCP服务器,必须修改配置文件。
- 打开配置文件:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%\Claude\claude_desktop_config.json
- 请添加以下内容。 (
your_api_key_here输入部分颁发的密钥)
{
"mcpServers": {
"assembly": {
"command": "uvx",
"args": ["git+https://github.com/StatPan/AssemblyMCP"],
"env": {
"ASSEMBLY_API_KEY": "your_api_key_here"
}
}
}
}- 重启Claude Desktop🔌 可以使用带有图标的AssemblyMCP工具。
3.直接运行服务器(用于测试)
您可以在终端上测试服务器是否正常运行,而无需LLM联动。
# API 키 설정 (Linux/macOS)
export ASSEMBLY_API_KEY="your_api_key_here"
# 서버 실행
# GitHub에서 최신 코드를 받아와 실행합니다.
uvx git+https://github.com/StatPan/AssemblyMCP______________________________________________________________________
开发指南
要为该项目做出贡献或在本地修改并运行该项目,请执行以下步骤:
基本要求
- Python 3.12或更高版本
- 紫外线 包管理器
安装和运行
# 1. 저장소 클론
git clone https://github.com/StatPan/AssemblyMCP.git
cd AssemblyMCP
# 2. 의존성 설치
uv sync
# 3. 환경 변수 설정 (.env 파일 생성)
cp .env.example .env
# .env 파일을 열어 ASSEMBLY_API_KEY를 입력하세요.
# 4. 개발 서버 실행
uv run assemblymcp代码质量管理
# 린트 및 포맷팅
uv run ruff check .
uv run ruff format .
# 테스트 실행
uv run pytest许可证
麻省理工学院
______________________________________________________________________
配置和托管(Configuration&hosting)
Assembly MCP “包括电池” 采用体系结构,无需单独修改代码,只需环境变量即可控制日志记录、缓存等操作功能。
环境变量设置(Environment Variables)
| 变量名 | 说明 | 默认值 | 示例 |
|---|---|---|---|
ASSEMBLY_API_KEY | \[必需\] 国会OpenAPI认证密钥-- | 1234abcd... | |
ASSEMBLY_LOG_LEVEL 日志记录级别(DEBUG、INFO、WARNING、ERROR) | INFO | DEBUG | |
ASSEMBLY_LOG_JSON | 启用JSON结构化日志记录(适用于Cloud Run等操作环境) | False | True |
ASSEMBLY_ENABLE_CACHING 启用内存内缓存(提高查询性能) False | True | ||
ASSEMBLY_CACHE_TTL_SECONDS | 缓存保留时间(秒) | 300 (5分钟) | 600 |
ASSEMBLY_CACHE_MAX_SIZE | 最大缓存项目数 | 100 | 500 |
生产模式(Production Mode)
在Cloud Run、AWS Lambda等无服务器环境或生产部署中,建议设置以下设置:
# JSON 로깅 활성화 (로그 수집기 파싱 용이)
export ASSEMBLY_LOG_JSON=true
# 캐싱 활성화 (API 호출 비용 절감 및 속도 향상)
export ASSEMBLY_ENABLE_CACHING=true部署(Deployment)
使用Docker,您可以轻松地将服务器部署到Google Cloud Run、Railway、Fly.io等云平台。
部署Docker
- Dockerfile包括在内,无需另行设置即可构建。
- 部署时
ASSEMBLY_API_KEY等,请设置所需的环境变量。 - 服务器基本上
Streamable HTTP以模式运行。8000使用端口。
Google Cloud Run部署示例
gcloud run deploy assembly-mcp \
--source . \
--region asia-northeast3 \
--allow-unauthenticated \
--set-env-vars ASSEMBLY_API_KEY="your_key",ASSEMBLY_LOG_JSON="true",ASSEMBLY_ENABLE_CACHING="true"主要更改
- 可流式HTTP传输:使用MCP协议的最新标准Streamable HTTP。
- 端点:
/mcpMCP服务器在路径中运行。
