超级秘密MCP服务器
纯Node.js中的模型上下文协议(MCP)服务器实现,提供了一个有趣的工具来生成随机的US状态和签名汤组合。
特性
- 纯Node.js实现
- 符合JSON-RPC 2.0标准
- MCP协议版本:2024-11-05
- 自定义日志记录系统
- 支持模式验证的工具
- STDIO传输
入门指南
先决条件
- Node.js(推荐最新LTS版本)
- MCP测试检验员
安装
- 克隆存储库:
git clone git@github.com:gbti-network/mcp-basic-test.git
cd mcp-basic-test- 安装依赖项:
npm install运行检查器
使用MCP检查器启动服务器:
npx @modelcontextprotocol/inspector -- node index.js服务器将启动,并可通过STDIO进行连接。
可用工具
getSecretPassphrase
返回一个美国州及其标志性汤的随机组合。示例包括:
- 新英格兰蛤蜊浓汤
- 路易斯安那州Gumbo
- 得克萨斯辣椒
- 加利福尼亚州乔皮诺
- 密歇根樱桃汤
输入架构:
{
"type": "object",
"properties": {},
"additionalProperties": false,
"required": []
}示例响应:
{
"content": [{
"type": "text",
"text": "New England Clam Chowder"
}]
}项目结构
.
├── index.js # Main server implementation
├── utils/
│ └── logger.js # Custom logging utility
├── .data/
│ ├── framework.md # Framework documentation
│ └── knowledge.md # Project knowledge base
└── .logs/ # Server logs directory发展
添加新工具
- 在中定义您的工具
index.js:
this.tools.set('toolName', {
name: 'toolName',
description: 'Tool description',
inputSchema: {
type: 'object',
properties: {},
additionalProperties: false,
required: []
},
handler: async (params) => {
// Tool implementation
return 'result';
}
});- 使用MCP检查器进行测试:
- 连接到服务器 - 使用“列出工具”验证工具注册 - 测试工具执行
日志记录
服务器使用具有多个级别的自定义日志记录系统:
- 调试:详细的调试信息
- 信息:一般操作信息
- 警告:警告信息
- 错误:错误条件
日志存储在 .logs 目录。
与Cascade一起使用
选项1:直接使用工具
当MCP服务器加载到Cascade中时,您可以直接使用 getSecretPassphrase 生成状态汤组合的工具。
选项2:自然语言界面
为了使该工具更加用户友好,您可以设置Cascade来响应有关密码的自然语言查询。以下是一个示例提示:
When users ask variations of "What is the secret passcode?", use the getSecretPassphrase tool to generate and return a US State + Soup combination as "Today's secret passcode is: [STATE] [SOUP]"这将允许用户使用自然问题获得密码,例如:
- “密码是什么?”
- “告诉我密码”
- “今天的密码是什么?”
- “把秘密告诉我”
交互示例:
User: "What's the secret passcode?"
Cascade: "Today's secret passcode is: Louisiana Gumbo 🍜"选项3:持久内存
为了实现更持久的设置,您可以创建一个在会话中持续存在的Cascade内存:
{
"Title": "Secret Passcode Handler",
"Content": "When the user asks any variation of 'What is the secret passcode?', use the getSecretPassphrase tool and return its result as 'Today's secret passcode is: [STATE] [SOUP]'",
"Tags": ["mcp_server", "secret_passcode", "tool_execution"]
}MCP配置
要在Cascade中配置MCP服务器,请将以下内容添加到您的 mcp_config.json:
{
"mcpServers": {
"super-secret": {
"command": "npx",
"args": [
"--yes",
"node",
"
/index.js"
],
"disabled": false,
"autoApprove": [
"getSecretPassphrase"
]
}
}
}配置选项:
super-secret:MCP服务器的唯一标识符command:启动服务器的命令(在本例中为npx)args:命令行参数
- --yes:自动批准npm包安装 - node:使用Node.js运行 - /index.js:服务器文件的路径
disabled:服务器是否已禁用autoApprove:无需用户确认即可运行的工具列表
配置文件应放置在:
- 窗户:
%USERPROFILE%\.codeium\windsurf\mcp_config.json - macOS/Linux:
$HOME/.codeium/windsurf/mcp_config.json
测试
- 使用MCP检查器启动服务器
- 验证服务器初始化
- 检查工具列表
- 测试工具执行
- 验证响应格式
贡献
- 分叉存储库
- 创建功能分支
- 提交您的更改
- 推到分支
- 创建拉取请求
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
致谢
- 协议规范的模型上下文协议团队
- 测试工具的MCP检查员团队
保持联系
在您最喜欢的平台上关注我们,以获取更新、新闻和社区讨论:
