Express MCP 服务器
使用 Express 和 TypeScript 构建的无状态模型上下文协议 (MCP) 服务器。
特征
采用现代 Streamable HTTP 传输的无状态 MCP 服务器实现
TypeScript 类型安全
用于 HTTP 处理的 Express.js
Related MCP server: OpenAPI MCP Server
要求
Node.js 18+
npm 或 yarn
安装
# Clone the repository (or download)
git clone https://github.com/your-username/sample-express-mcp-server.git
cd sample-express-mcp-server
# Install dependencies
npm install发展
# Build the TypeScript code
npm run build
# Run in development mode with auto-reloading
npm run dev
# Run tests (when added)
npm test服务器结构
src/
├── index.ts # Main application entry point
└── server.ts # MCP server definition with resource, tool, and prompt可用功能
该服务器通过三个 MCP 组件实现了一个简单的回显端点:
资源:
echo://{message}- 将消息作为资源返回工具:
echo——将提供的消息作为工具响应回显提示:
echo- 使用提供的消息创建用户提示
MCP 协议
该服务器实现了模型上下文协议(MCP),这是 LLM 与外部数据和功能交互的标准化方式。它公开了一个响应 JSON-RPC 请求的无状态 API 端点。
API 使用
向/mcp发送一个带有 JSON-RPC 负载的 POST 请求:
初始化
curl -X POST http://localhost:3001/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Accept: text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2024-11-05",
"capabilities": {
"roots": {
"listChanged": true
},
"sampling": {}
},
"clientInfo": {
"name": "ExampleClient",
"version": "1.0.0"
}
}
}'呼叫回显工具
curl -X POST http://localhost:3001/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Accept: text/event-stream" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "echo",
"arguments": {
"message": "Hello, World!"
}
},
"id": 1
}'执照
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.