使用说明
J格兰兹MCP Server (Node.js版本)
数字厅运用的补助金电子申请系统“J格兰兹“的公开API的Model Context Protocol(MCP)作为服务器实施。 LLM中描述的场景,使用下列步骤创建明细表,以便在概念设计中分析体量的周长。
参考実装: https://github.com/digital-go-jp/jgrants-mcp-serverpython版)
特徴
- 远程支持: stdio经过MCP与客户机通信
- 高级搜索功能:关键字、行业、员工数量和区域限制
- 统计分析:补助金の统计情报を自动集计(缔切期间别、金额规模别)
- 文件下载:募集要项和申请文件的自动下载·保存
- 附件访问: PDF等附件Markdown/BASE64格式
- LLM统合:使用自然语言查找和获取补贴
- 文件转换: PDF、Word、Excel、ZIP等多种形式Markdown转换为
- TypeScript:保证模具安全性和代码质量
动作确认环境
- 克劳德桌面:v0.7.10以上
- Node.js: 18以上
- @模型上下文协议/sdk: 1.0.4以上
快速启动
前提条件
- Node.js 18以上
- npm (Node.js包管理器)
环境设置
# リポジトリのクローン
git clone https://github.com/tatsuyamiyazaki/jgrants-mcp-server.git
cd jgrants-mcp-server
# 依存パッケージのインストールとビルド
npm install
# または手動でビルド
npm run build
环境变量(可选)
您可以根据需要设置以下环境变量:
|环境变量|默认值|说明|
|---------|------------|------|
| JGRANTS_FILES_DIR | tmp |附件保存目录|
| API_BASE_URL | https://api.jgrants-portal.go.jp/exp/v1/public | J格兰兹API端点|
设定例:
export JGRANTS_FILES_DIR=/tmp/jgrants_files
或.env创建文件:
JGRANTS_FILES_DIR=./jgrants_files
Claude Desktop 协作
Claude Desktop 啊stdio 支持直接连接MCP可以与服务器通信。
Claude Desktop 设定
-
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": "node", "args": [ "/path/to/jgrants-mcp-server/dist/index.js" ] } } }或全局安装:
{ "mcpServers": { "jgrants": { "command": "jgrants-mcp-server" } } } -
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(string): 搜索关键字(2个以上必需)industry(string, optional): 业种target_area_search(string, optional): 対象地域target_number_of_employees(string, optional): 従业员数制约sort(string): 排序顺序(acceptance_end_datetime/acceptance_start_datetime/created_date)order(string): 升顺/降顺(ASC/DESC)acceptance(number): 受付状態(0:全部/1:仅在受理中)
2. get_subsidy_detail
获取补贴的详细信息,并在本地保存附件。
参数:
subsidy_id(string): 补助金ID(18文字以下)
返却情报:
- 补助金的详细信息(标题、补助上限额、补助率、受理期间等)
- 附件信息(公募要领、概要资料、申请格式等)
- 文件目标目录路径
3. get_subsidy_overview
获取补贴的统计信息(按到期日、金额规模统计)。
参数:
output_format(string): 出力形式(json/csv)
4. get_file_content
获取已保存附件的内容。
参数:
subsidy_id(string): 补助金IDfilename(string): 文件名return_format(string): 返却形式(markdown/base64)
机能:
- PDF、Word、Excel、PowerPoint、ZIPをMarkdownに自动变换
- 转换失败时BASE64形式返还
5. ping
进行服务器的沟通确认。
开发和测试
测试运行
# 開発モードで起動(TypeScriptを直接実行)
npm run dev
# テスト実行
node tests/test_core.js
调试
# TypeScriptのまま実行(開発時)
npm run dev
项目结构
jgrants-mcp-server/
├── src/
│ └── index.ts # メインMCPサーバー実装
├── dist/ # ビルド済みJavaScript
├── tests/
│ └── test_core.js # 統合テスト
├── tmp/ # 添付ファイル保存先(デフォルト)
├── package.json
├── tsconfig.json
└── README.md
许可证
MIT License - 详情许可证请参见文件。
免责事项
本实施是以技术验证为目的的样本代码。请注意:
- 本代码按原样提供,不保证动作的稳定性和持续维护
- J它不保证格兰兹服务的可搜索性和行为稳定性
- 在实际使用时J格兰兹API使用条款https://www.jgrants-portal.go.jp/open-api)为准使用
