taobao-mcp-demo
Version:
淘宝MCP演示服务器 - 提供基础工具和资源
125 lines (100 loc) • 2.65 kB
Markdown
# MCP Demo Server
这是一个简单的MCP(Model Context Protocol)服务器示例,提供了基本的工具和资源。
## 功能
### 工具 (Tools)
- **add**: 加法工具
- 参数: `a` (数字), `b` (数字)
- 返回: 两个数字的和
### 资源 (Resources)
- **greeting**: 动态问候生成器
- URI模式: `greeting://{name}`
- 返回: 个性化的问候语
## 安装和运行
1. 安装依赖:
```bash
npm install
```
2. 运行服务器:
```bash
node server.js
```
## 客户端配置
### 方法1: 使用配置文件
创建 `mcp-config.json` 文件:
```json
{
"mcpServers": {
"demo-server": {
"command": "node",
"args": ["server.js"],
"cwd": "E:\\work\\python\\taobao-mcp-dev"
}
}
}
```
### 方法2: 环境变量配置
设置环境变量:
```bash
# Windows PowerShell
$env:MCP_SERVERS='{"demo-server":{"command":"node","args":["server.js"],"cwd":"E:\\work\\python\\taobao-mcp-dev"}}'
# 或者添加到系统环境变量
```
### 方法3: 在Cursor中配置
1. 打开Cursor设置
2. 找到MCP配置部分
3. 添加服务器配置:
```json
{
"command": "node",
"args": ["server.js"],
"cwd": "E:\\work\\python\\taobao-mcp-dev"
}
```
## 测试服务器
### 测试加法工具
```javascript
// 调用加法工具
const result = await mcp.callTool("add", { a: 5, b: 3 });
console.log(result); // 输出: 8
```
### 测试问候资源
```javascript
// 访问问候资源
const greeting = await mcp.getResource("greeting://Alice");
console.log(greeting); // 输出: "Hello, Alice!"
```
## 故障排除
1. **模块类型警告**: 确保 `package.json` 中包含 `"type": "module"`
2. **路径问题**: 确保 `cwd` 路径正确指向项目目录
3. **权限问题**: 确保有执行 `node` 命令的权限
## 扩展
要添加新的工具,在 `server.js` 中使用 `server.registerTool()`:
```javascript
server.registerTool("toolName",
{
title: "工具标题",
description: "工具描述",
inputSchema: { param1: z.string(), param2: z.number() }
},
async ({ param1, param2 }) => ({
content: [{ type: "text", text: "结果" }]
})
);
```
要添加新的资源,使用 `server.registerResource()`:
```javascript
server.registerResource(
"resourceName",
new ResourceTemplate("resource://{param}", { list: undefined }),
{
title: "资源标题",
description: "资源描述"
},
async (uri, { param }) => ({
contents: [{
uri: uri.href,
text: `资源内容: ${param}`
}]
})
);
```