点燃mcp服务器
点燃mcp
小型MCP(模型上下文协议)助手,从本地HTTP端点获取健康计划数据,并通过stdio公开MCP工具。
此存储库包含一个用TypeScript实现的小型MCP服务器,该服务器调用一个本地服务,该服务在以下位置公开健康数据:
/getHealthDatachange--返回健康数据(计划级别)getHealthDatachange/{user}--返回特定用户的健康数据
目录
src/index.ts--入口点(MCP服务器和工具处理程序)build/--编译的JavaScript输出(由创建npm run build)package.json--项目清单(构建脚本)
快速启动
初始化一个新的npm项目 NPM热量-y
安装依赖项 npm安装@modelcontextprotocol/sdkzod@3 npm安装-D@types/node类型脚本\*\*
先决条件
- Node.js(推荐16+)
- 正在运行的健康数据服务
localhost:3000(此项目查询该服务)
构建
从项目根目录运行:
npm install
npm run build运行(本地)
构建后,您可以直接运行编译后的服务器:
node build/index.js或者使用curl调用底层健康数据端点进行快速检查:
# plan-level
curl -sS http://localhost:3000/getHealthDatachange | jq .
# user-level
curl -sS http://localhost:3000/getHealthDatachange/999999999 | jq .MCP工具提供什么
get-initial-healthdata-assignment--返回一条人性化的消息,描述计划的初始值(OPT-ID、CV-CAT-ID、PR-AT)。get-healthdata-assignment-user--返回给定用户id的健康数据(当前实现中打印得很漂亮的JSON)。
类型和形状
该项目使用一组描述健康数据形状的接口(InitialValue、UpdatedCotextValue、HealthData)。初始值示例:
export const initialValueMedical = {
contextId: 4004,
actualOptid: 3501,
actualCoverageCategory: 20,
actualcoverageId: 3501,
actualPriceAmount: 500,
};注意事项和故障排除
- 如果
curl http://localhost:3000/getHealthDatachange返回连接被拒绝,启动支持健康数据服务——此项目依赖于该服务获取数据。 - 这
src/index.ts文件格式响应,并且当前期望远程API返回上面显示的JSON形状。 - 如果你想进行离线测试,可以考虑添加
src/mock-healthdata.json文件和一个小回退makeNWSRequest.
下一步你可能想让我做
- 添加
src/types.ts并导入接口(我之前已经准备好了)。 - 将最后的回复保留为
mock/离线测试运行的文件。 - 向添加启动脚本
package.json(例如start: node build/index.js).
