官报API MCP服务器
官方网站API(官报API)的LLM啊AI允许代理作为工具使用MCP(Model Context Protocol)服务器。
机能
这MCP服务器提供以下工具:
- 搜索_采购 -在详细搜索条件下搜索投标信息
- 获取_采购_日期 -获取指定日期的投标信息
- search_by_关键字 -使用关键字查找投标信息
安装
cd mcp-kanpo-api
npm install
npm run build使用方法
MCP客户端设置
MCP客户端(例如:Claude Desktop、Cursor等)的设定文件中请追加以下内容:
Claude Desktop在…的情况下 (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"kanpo-api": {
"command": "node",
"args": ["/path/to/mcp-kanpo-api/dist/index.js"]
}
}
}Cursor在…的情况下 (.cursor/mcp.json 或配置文件:
{
"mcpServers": {
"kanpo-api": {
"command": "node",
"args": ["/path/to/mcp-kanpo-api/dist/index.js"]
}
}
}开发模式
开发中 tsx 中描述的场景,使用以下步骤创建明细表,以便在概念设计中分析体量的体积
npm run dev # stdio版
npm run dev:http # HTTP版HTTP使用服务器版本
n8n等的HTTP在动态输入提示中单击HTTP启动服务器版本:
npm run start:http默认值 http://localhost:3000 中所述修改相应参数的值。端口号为环境变量 PORT 中所述修改相应参数的值
PORT=8080 npm run start:http可用端点
GET /-健康检查GET /api/tools-可用工具列表POST /api/tools/search_procurements-入札情报検索POST /api/tools/get_procurements_by_date- 日付指定取得POST /api/tools/search_by_keyword-关键字搜索
使用例
# 日付指定で取得
curl -X POST http://localhost:3000/api/tools/get_procurements_by_date \
-H "Content-Type: application/json" \
-d '{"date": "2025-11-07", "count": 50}'
# キーワード検索
curl -X POST http://localhost:3000/api/tools/search_by_keyword \
-H "Content-Type: application/json" \
-d '{"keyword": "情報システム", "count": 20}'ngrok发布
ngrok来修改标记元素的显示属性HTTP可以对外发布服务器:
# 1. HTTPサーバーを起動
npm run start:http
# 2. 別のターミナルでngrokを起動
ngrok http 3000
# 3. ngrokが提供するURL(例: https://xxxx-xxxx-xxxx.ngrok-free.app)をn8nで使用使用自然语言
这MCP服务器LLM/AI假设代理(Claude、GPT-4等)能够理解自然语言的指令,并自动调用适当的工具。
使用例:
- “获取2025年11月7日的投标信息”→
get_procurements_by_date自动调用工具 - “用信息系统这个关键词搜索”→
search_by_keyword自动调用工具 - “搜索东京都物品类别的投标信息”→
search_procurements自动调用工具 - “检索11月的劳务类别的投标信息”→
search_procurements自动调用工具
LLM/AI代理理解你的自然语言指令,选择合适的工具和参数来执行。
可用工具
1.搜索_采购
在详细的搜索条件下搜索投标信息。
参数:
query(string, 任意): 検索文字列(AND、OR、NOT演算子使用可能)projectName(string, 可选:按主题筛选organizationName(string, 可选:按机构名称筛选lgCode(string, 可选:都道府县代码(符合JIS X0401标准)category(number, 任意):类别(1=物品,2=工程,3=劳务)procedureType(number, 任意):公示种别(1=一般竞争入札,2=简易公募型竞争入札,3=简易公募型指名竞争入札)certification(string, 任意):入札资格(A,B,C,D)cftIssueDate(string, 可选:公告日期(格式:YYYY-MM-DD/ 或/YYYY-MM-DD 或YYYY-MM-DD/YYYY-MM-DD)tenderSubmissionDeadline(string, 任意):入札开始日openingTendersEvent(string, 任意):开札日periodEndTime(string, 任意):纳入期限日count(number, 可选:返还数量(默认值:100,最大值:1000)
注意: query、projectName、organizationName、lgCode中所述修改相应参数的值。如果未指定全部,则默认为Query="*"将条目添加到文档注册表。
2.获取_采购_日期
获取指定日期的投标信息。在内部query="入札"和cftIssueDate进行动态观察时的轴心点。
参数:
date(string, 必须):日付(形式:YYYY-MM-DD)count(number, 可选:返还数量(默认值:100,最大值:1000)
例:
{
"date": "2025-11-07",
"count": 50
}3.搜索_关键字
用关键字搜索投标信息。
参数:
keyword(string, 必需:搜索关键字count(number, 可选:返还数量(默认值:100,最大值:1000)
例:
{
"keyword": "情報システム",
"count": 20
}响应格式
MCP版(stdio)
所有工具都以以下形式返回响应:
{
"searchHits": 262,
"results": [
{
"resultId": 1,
"key": "...",
"externalDocumentURI": "https://...",
"projectName": "第2069号小中学校児童生徒用机・いす",
"date": "2025-11-07T19:08:01+09:00",
"fileType": "pdf",
"fileSize": 134411,
"lgCode": "19",
"prefectureName": "山梨県",
"cityCode": "192015",
"cityName": "甲府市",
"organizationName": "山梨県甲府市",
"cftIssueDate": "2025-11-07T00:00:00+09:00",
"category": "物品",
"procedureType": "一般競争入札",
"projectDescription": "...",
"attachments": [
{
"name": "入札説明書(PDF:132KB)",
"uri": "https://..."
}
]
}
]
}HTTP版
HTTP服务器版本以以下格式返回响应:
{
"success": true,
"data": {
"searchHits": 262,
"results": [
{
"resultId": 1,
"projectName": "第2069号小中学校児童生徒用机・いす",
"organizationName": "山梨県甲府市",
"cftIssueDate": "2025-11-07T00:00:00+09:00",
"category": "物品",
"procedureType": "一般競争入札",
...
}
]
}
}如果出现错误:
{
"success": false,
"error": "エラーメッセージ"
}注意事项
- 这API官方网站API正在使用
- 不需要注册、认证,谁都可以使用
- 请遵守使用条款
- API的响应XML是形式,不过,这个MCP服务器是JSON转换为格式并返回
参考资料
许可证
麻省理工学院
