使用说明
J格兰兹MCP Server
数字厅运用的补助金电子申请系统“J格兰兹“的公开API的Model Context Protocol(MCP)作为服务器实施。FastMCP使用框架LLM中描述的场景,使用下列步骤创建明细表,以便在概念设计中分析体量的周长。
特徴
- 远程支持: Streamable-HTTP可通过远程连接
- 高级搜索功能:关键字、行业、员工数量和区域限制
- 统计分析:补助金の统计情报を自动集计(缔切期间别、金额规模别)
- 文件下载:募集要项和申请文件的自动下载·保存
- 附件访问: PDF等附件Markdown/BASE64格式
- LLM统合:使用自然语言查找和获取补贴
- 文件转换: PDF、Word、Excel、ZIP等多种形式Markdown转换为
- 动态工具检测:自动发现并适应服务器工具更改
- FastMCP:最新FastMCP使用框架(v2.12.2)
- 提示/资源: LLM提供指南和资源
动作确认环境
- Claude桌面版:v0.7.10以上
- python: 3.11以上
- FastMCP: 2.12.2以上
快速启动
前提条件
- Python 3.11以上
- pip (Python包管理器)
环境设置
# リポジトリのクローン
git clone https://github.com/digital-go-jp/jgrants-mcp-server.git
cd jgrants-mcp-server
# Python仮想環境の作成
python -m venv venv
# 仮想環境の有効化
# macOS/Linux:
source venv/bin/activate
# Windows:
# venv\Scripts\activate
# 依存パッケージのインストール
pip install -r requirements.txt
环境变量(可选)
您可以根据需要设置以下环境变量:
|环境变量|默认值|说明|
|---------|------------|------|
| JGRANTS_FILES_DIR | ./jgrants_files |附件保存目录|
| API_BASE_URL | https://api.jgrants-portal.go.jp/exp/v1/public | J格兰兹API端点|
设定例:
export JGRANTS_FILES_DIR=/tmp/jgrants_files
服务器启动
HTTP服务器模式
# HTTPサーバーを起動(デフォルト: localhost:8000)
python -m jgrants_mcp_server.core
# ホストとポートを指定
python -m jgrants_mcp_server.core --host 0.0.0.0 --port 8080
服务器启动后,以下端点可用:
- MCP 端点:
http://localhost:8000/mcp或者http://127.0.0.1:8000/mcp - 传输:流式HTTP
Claude Desktop 协作
FastMCP CLI通过连接(建议)
Claude Desktop 啊stdio 仅支持连接FastMCP CLI的HTTP用作代理。 这个方法Resources、Prompts、Tools中所述修改相应参数的值。
-
MCP Server 启动:
python -m jgrants_mcp_server.core --port 8000 -
Claude Desktop 编辑配置文件:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json视窗:%APPDATA%\Claude\claude_desktop_config.jsonLinux:~/.config/Claude/claude_desktop_config.json{ "mcpServers": { "jgrants": { "command": "uvx", "args": [ "fastmcp", "run", "http://localhost:8000/mcp" ] } } }备考:
- localhost如果不顺利,请尝试127.0.0.1
uvx啊uv的命令行工具执行功能(pip install uv安装)uvx如果未安装,请单击fastmcp也可以直接使用:{ "mcpServers": { "jgrants": { "command": "fastmcp", "args": [ "run", "http://localhost:8000/mcp" ] } } }
-
Claude Desktop 重新启动
接続确认
Claude Desktop在新的对话中,请按以下方式提问:
補助金を検索できますか?
如果服务器设置正确,将显示可用工具列表。
Prompts 和Resources
MCP服务器LLM中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积。
Prompts(动态指南)
subsidy_search_guide:补贴搜索最佳实践和建议的搜索模式api_usage_agreement: API确认使用条款和免责事项
Resources(静态参考)
jgrants://guidelines: MCP服务器使用指南API限制,故障排除
可用工具
1. search_subsidies
查找补贴。可以通过关键字、行业、地区、员工数等进行缩小。
参数:
keyword(str): 搜索关键字(2个以上必需)industry(str, optional): 业种target_area_search(str, optional): 対象地域target_number_of_employees(str, optional): 従业员数制约sort(str): 排序顺序(acceptance_end_datetime/acceptance_start_datetime/created_date)order(str): 升顺/降顺(ASC/DESC)acceptance(int): 受付状態(0:全部/1:仅在受理中)
2. get_subsidy_detail
获取补贴的详细信息,并在本地保存附件。
参数:
subsidy_id(str): 补助金ID(18文字以下)
返却情报:
- 补助金的详细信息(标题、补助上限额、补助率、受理期间等)
- 单击功能区上file:// URL(公开征集要领、概要资料、申请格式等)
- 文件目标目录路径
3. get_subsidy_overview
获取补贴的统计信息(按到期日、金额规模统计)。
参数:
output_format(str):出力形式(json/csv)
4. get_file_content
获取已保存附件的内容。
参数:
subsidy_id(str): 补助金IDfilename(str): 文件名return_format(str): 返却形式(markdown/base64)
机能:
- PDF、Word、Excel、PowerPoint、ZIPをMarkdownに自动变换
- 转换失败时BASE64形式返还
5. ping
进行服务器的沟通确认。
开发和测试
测试运行
# テスト実行
pytest tests/test_core.py
调试
# デバッグモードで起動
python -m jgrants_mcp_server.core --log-level DEBUG
许可证
MIT License - 了解更多信息许可证请参见文件。
免责事项
本实施是以技术验证为目的的样本代码。请注意:
- 本代码按原样提供,不保证动作的稳定性和持续维护
- J它不保证格兰兹服务的可搜索性和行为稳定性
- 在实际使用时J格兰兹API使用条款https://www.jgrants-portal.go.jp/open-api)为准使用