MCP节点服务器
具有员工管理功能的模型上下文协议(MCP)服务器,支持两者 超文本传输协议 和 工作室 运输。
特性
- ✅ 双重运输支持
- HTTP传输(带有OAuth 2.0的REST API) - STDIO传输(用于MCP客户端的JSON-RPC 2.0)
- ✅ 员工管理
- 创建员工 - 列出员工
- ✅ OAuth 2.0身份验证 (HTTP传输)
- ✅ MCP协议合规性 (STDIO传输)
需求
- Node.js 18+
- npm
安装
npm install运行服务器
HTTP传输(REST API)
启动HTTP服务器:
npm start
# or
npm run dev # with auto-reload服务器运行时间: http://127.0.0.1:8080
特征:
- OAuth 2.0客户端凭据流
- REST API端点
- 服务器发送事件(SSE)支持
看 API_GUIDE.md 用于HTTP API文档。
STDIO传输(JSON-RPC 2.0)
启动STDIO服务器:
npm run start:stdio
# or
npm run dev:stdio # with auto-reload特征:
- JSON-RPC 2.0协议
- 与Claude Desktop和其他MCP客户端兼容
- 无身份验证(本地进程)
看 STDIO_GUIDE.md 用于STDIO协议文档。
快速开始
HTTP传输
- 注册客户:
curl -X POST http://127.0.0.1:8080/mcp/register- 获取访问令牌:
curl -X POST http://127.0.0.1:8080/mcp/token \
-H "Content-Type: application/json" \
-d '{"grant_type":"client_credentials","client_id":"...","client_secret":"..."}'- 创建员工:
curl -X POST http://127.0.0.1:8080/mcp/call \
-H "Authorization: Bearer " \
-H "Content-Type: application/json" \
-d '{"tool":"employee_create","params":{"name":"Alice","department":"Engineering"}}'STDIO传输
STDIO服务器通过stdin/stdout上的JSON-RPC消息进行通信。看 STDIO_GUIDE.md 例如。
测试
测试HTTP服务器
./test-api.sh测试STDIO服务器
node test-stdio.js项目结构
mcp_server/
├── src/
│ ├── server.js # HTTP transport server
│ ├── stdio-server.js # STDIO transport server
│ ├── oauth.js # OAuth 2.0 implementation
│ └── employees.js # Shared employee management
├── data/
│ ├── employees.json # Employee data store
│ ├── clients.json # OAuth clients
│ └── tokens.json # OAuth tokens
├── API_GUIDE.md # HTTP API documentation
├── STDIO_GUIDE.md # STDIO protocol documentation
└── QUICK_START.md # Quick reference可用工具
employee_create
创建新的员工记录。
参数:
name(必填):员工姓名department(可选):部门名称role(可选):工作角色email(可选):电子邮件地址
employee_list
列出所有员工。
参数: 无
运输比较
| 特性 | HTTP | STDIO |
|---|---|---|
| 协议 | REST API | JSON-RPC 2.0 |
| 身份验证 | OAuth 2.0 | 无 |
| 使用案例 | 远程API | 本地MCP客户端 |
| 客户 | 卷发器、邮差等。 | 克劳德桌面等。 |
文档
- API_GUIDE.md -完整的HTTP API文档
- STDIO_GUIDE.md -STDIO协议指南
- 快速启动.md -快速参考
许可证
麻省理工学院
