Sally MCP服务器
基于区块链支付的人工智能代谢健康助手
通过x402支付基础设施的模型上下文协议(MCP)连接到Sally
   
______________________________________________________________________
什么是Sally MCP服务器?
Sally MCP服务器是 模型上下文协议(MCP) 服务器,使Claude Desktop、Cursor和其他MCP兼容客户端等AI助手能够与 莎莉,人工智能驱动的代谢健康助理。
与 基于x402区块链的支付协议,Sally MCP确保每次人工智能交互都能进行安全、透明的微支付,同时将您的私钥和数据完全保存在您的本地机器上。
主要特点
- 🏥 代谢健康专业知识:与Sally讨论营养、新陈代谢和健康优化
- 💰 x402支付集成:API使用的基于区块链的自动小额支付
- 🚀 多运输支持:本地部署(stdio)或托管(通过Smithery的HTTP/SSE)
- 🔒 安全第一:私钥永远不会离开您的设备
- 🔌 MCP兼容:适用于Claude Desktop、Cursor和任何兼容MCP的客户端
- ⚡ 类型安全:使用TypeScript和Zod模式构建,以提高可靠性
- 🐳 生产就绪:已码头化并准备好进行Smithery云部署
建筑
┌─────────────────────┐
│ MCP Client │
│ (Claude, Cursor) │
└──────────┬──────────┘
│
▼
┌─────────────────────┐ ┌──────────────────┐
│ Sally MCP Server │──────│ x402 Payment │
│ (Local/Smithery) │ │ Protocol │
└──────────┬──────────┘ └──────────────────┘
│
▼
┌─────────────────────┐
│ Sally API │
│ (Metabolic Health) │
└─────────────────────┘______________________________________________________________________
🚀 快速开始
5分钟后起床跑步:
先决条件
- 已安装Node.js 18+和pnpm
- 一个专用的加密钱包,带有用于x402交易的小额资金
1.通过Smithery安装(推荐)
使用Sally MCP最简单的方法是通过 铁匠铺:
npx @smithery/cli install @sally-labs/sally-ai-mcp --client claude2.本地安装
# Clone and setup
git clone https://github.com/sally-labs/sally-mcp.git
cd sally-mcp
pnpm install
pnpm build3.配置您的MCP客户端
添加到您的MCP客户端配置中(例如。, claude_desktop_config.json):
{
"mcpServers": {
"sally": {
"command": "node",
"args": ["/path/to/sally-mcp/dist/index.js"],
"env": {
"PRIVATE_KEY": "0x...",
"TRANSPORT_MODE": "stdio"
}
}
}
}4.测试连接
重新启动MCP客户端并尝试:
"Use the chat-with-sally tool to ask: What are the benefits of intermittent fasting?"______________________________________________________________________
🔧 安装
选项A:使用Smithery部署(云托管)
Smithery为MCP服务器提供托管托管,并具有自动扩展和更新功能。
# Install Smithery CLI
npm install -g @smithery/cli
# Install Sally MCP
npx @smithery/cli install @sally-labs/sally-ai-mcp --client claude通过Smithery仪表板进行配置:
- 私钥:您专用钱包的私钥(前缀为0x)
- 服务器将在您的MCP客户端中自动可用
选项B:地方发展设置
第一步:创建专用钱包
⚠️ 安全关键:切勿将主钱包用于MCP集成。
- 使用MetaMask、Coinbase钱包或类似工具创建新钱包
- 转移少量资金(例如,价值5-10美元的加密货币)
- 导出私钥(它应该以开头
0x) - 安全存放
步骤2:克隆并安装
# Clone repository
git clone https://github.com/sally-labs/sally-mcp.git
cd sally-mcp
# Install dependencies
pnpm install步骤3:配置环境
创建一个 .env 文件:
PRIVATE_KEY=0x...
TRANSPORT_MODE=stdio步骤4:构建并运行
# Build TypeScript
pnpm build
# Run the server
node dist/index.js选项C:添加服务器以供Clawdbot使用
# Install Smithery CLI
npm install -g @smithery/cli
# Login
smithery auth login
# Establish MCP Connection to Ask Sally via Smithery
smithery mcp add "sally-labs/sally-ai-mcp?privateKey=0xYOUR_PRIVATE_KEY" \
--id sally-ai-mcp \
--force______________________________________________________________________
📱 MCP客户端配置
克劳德桌面版
- 打开克劳德桌面设置
- 导航至 开发者→ 编辑配置
- 编辑
claude_desktop_config.json:
{
"mcpServers": {
"sally": {
"command": "node",
"args": ["/Users/yourname/code/sally-mcp/dist/index.js"],
"env": {
"PRIVATE_KEY": "0x...",
"TRANSPORT_MODE": "stdio"
}
}
}
}- 重新启动克劳德桌面
- Sally工具应该会自动出现
光标
- 打开光标设置
- 导航至 特性→ MCP服务器
- 添加服务器配置:
{
"sally": {
"command": "node",
"args": ["/path/to/sally-mcp/dist/index.js"],
"env": {
"PRIVATE_KEY": "0x...",
"TRANSPORT_MODE": "stdio"
}
}
}- 重新启动游标
其他MCP客户端
有关自定义MCP服务器配置,请参阅客户的文档。您需要:
- 命令:
node - 参数:
["/path/to/sally-mcp/dist/index.js"] - 环境变量:
PRIVATE_KEY,TRANSPORT_MODE=stdio
______________________________________________________________________
💬 用法
基本交互
配置后,通过MCP客户端自然地与Sally交互:
"Use chat-with-sally to ask: What foods help stabilize blood sugar?""Ask Sally about the relationship between sleep and metabolic health""Use Sally to create a meal plan for someone with insulin resistance"可用工具
和萨莉聊天
与Sally讨论代谢健康话题。
参数:
message(string,必填):您给Sally的问题或信息
例子:
{
"message": "What are the best exercises for improving insulin sensitivity?"
}答复:
{
"report": {
"message": "Resistance training and high-intensity interval training (HIIT) are particularly effective for improving insulin sensitivity..."
}
}理解成本
与Sally的每次互动都使用x402微支付:
- 聊天消息:根据API请求的小额付款
- 付款是自动的 从您的专用钱包
- 所有交易都在链上 并且是可验证的
- 监控你的支出 通过您的钱包或区块链浏览器
______________________________________________________________________
🔐 安全
安全架构
┌─────────────────────────┐
│ Your Device (Local) │
│ ┌─────────────────┐ │
│ │ MCP Client │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Sally MCP │ │
│ │ (Local Process) │ │
│ └────────┬────────┘ │
│ │ │
│ ┌────────▼────────┐ │
│ │ Private Key │ │
│ │ (Never Leaves) │ │
│ └─────────────────┘ │
└─────────────────────────┘
│
▼ (Only signed transactions)
┌─────────────────────────┐
│ Internet / Blockchain │
└─────────────────────────┘最佳实践
✅ 做:
- 使用专用的单独钱包进行MCP交互
- 在您的MCP钱包中只保留少量(5-20美元)
- 安全地存储您的私钥(密码管理器、硬件钱包)
- 定期查看您的x402交易历史记录
- 在主网之前使用测试/沙盒环境
- 保持MCP服务器和依赖关系的更新
❌ 不要:
- 使用主钱包的私钥
- 与任何人共享您的私钥
- 以纯文本或版本控制存储私钥
- 在您的MCP钱包中保存大量资金
- 跨不同服务重用私钥
- 提交
.env文件到git
安全功能
- 本地优先:服务器完全在您的计算机上运行(stdio模式)
- 无密钥上传:私钥从未传输到外部服务器
- 加密交易:所有支付都使用区块链加密
- 透明成本:每笔付款都可以在链上验证
- 独立钱包:专用钱包限制曝光
______________________________________________________________________
🛠️ API 参考
环境变量
| 变量 | 描述 | 必填 | 默认 |
|---|---|---|---|
PRIVATE_KEY | 您专用钱包的私钥(前缀为0x) | 是\* | - |
TRANSPORT_MODE | 运输方式: stdio 或 http | 没有 | stdio |
PORT | HTTP服务器端口(当 TRANSPORT_MODE=http) | 没有 | 8081 |
\*STDIO模式需要。HTTP模式可选(Smithery部署)。
MCP服务器功能
{
name: 'x402 MCP Sally Server',
version: '1.0.0',
capabilities: {
tools: true,
prompts: true,
resources: true
}
}工具模式
和萨莉聊天
{
name: 'chat-with-sally',
description: 'Chat with Sally to talk about metabolic health (requires privateKey configuration)',
inputSchema: {
type: 'object',
properties: {
message: {
type: 'string',
description: 'The message to send to Sally'
}
},
required: ['message']
},
annotations: {
readOnlyHint: false,
destructiveHint: false,
idempotentHint: false,
openWorldHint: true
}
}______________________________________________________________________
🚢 部署
部署到Smithery
- 创建Smithery帐户:注册地址: 史密斯艾
- 通过Smithery CLI安装:
npx @smithery/cli install @sally-labs/sally-ai-mcp --client claude- 配置:
- 添加您的 PRIVATE_KEY 通过Smithery仪表板(浏览时可选) - 服务器将在您的Smithery URL上可用
- 连接MCP客户端:
- Smithery自动配置支持的MCP客户端 - 或者手动将Smithery URL添加到您的客户端配置中
Docker部署
在本地构建和运行:
# Build image
docker build -t sally-mcp .
# Run locally (stdio mode)
docker run -i --rm \
-e PRIVATE_KEY=0x... \
-e TRANSPORT_MODE=stdio \
sally-mcp
# Run as HTTP server
docker run -d -p 8081:8081 \
-e PRIVATE_KEY=0x... \
-e TRANSPORT_MODE=http \
sally-mcp部署到云端
Docker镜像可以部署到任何容器平台:
- AWS ECS/Fargate:使用带有环境变量的任务定义
- 谷歌云运行:使用私钥密钥进行部署
- Azure容器实例:使用环境设置进行配置
- 铁路/渲染:可直接与GitHub集成
______________________________________________________________________
🐛 故障排除
MCP服务器未出现
症状:服务器未显示在MCP客户端的工具列表中
解决方案:
- 验证配置文件路径是否正确
- 检查是否安装了Node.js:
node --version - 确保服务器路径使用绝对路径:
- macOS/Linux: /Users/name/path/sally-mcp/dist/index.js - 窗户: C:\\Users\\name\\path\\sally-mcp\\dist\\index.js
- 先构建项目:
pnpm build - 完全重新启动MCP客户端
- 检查MCP客户端日志是否有错误
连接错误
症状:“连接失败”或超时错误
解决方案:
- 验证互联网连接
- 检查Sally API端点是否可访问:
curl https://api-x402.asksally.xyz/health- 确保钱包有足够的资金
- 确认私钥格式(应包括
0x前缀,长度为66个字符) - 检查服务器日志以了解详细错误
私钥问题
症状:身份验证或支付失败
解决方案:
- 确保私钥以开头
0x总共66个字符 - 检查环境变量中是否有多余的空格或换行符
- 验证钱包在正确的网络上有资金
- 测试私钥格式:
# Should be: 0x + 64 hex characters = 66 total
echo $PRIVATE_KEY | wc -c付款失败
症状:“资金不足”或支付错误(402状态)
解决方案:
- 在区块链浏览器上检查钱包余额
- 验证您是否在正确的网络(主网/测试网)上
- 确保天然气费用得到核算
- 尝试使用较大的初始钱包余额
- 查看服务器输出中的x402支付日志
工具未触发
症状:MCP客户端无法识别工具调用
解决方案:
- 使用明确的措辞:“使用萨莉聊天工具”
- 检查是否列出了工具:验证服务器是否正确初始化
- 配置更改后重新启动客户端
- 检查客户端文档中的工具调用语法
- 验证服务器是否在stdio模式(非http)下运行
获取帮助
如果您仍然遇到问题:
- GitHub问题:
- 电子邮件支持: support@asksally.xyz
- 社区: bento.me/a1c
在报告问题时,请包括:
- MCP客户端名称和版本
- 操作系统
- 日志中的错误消息
- 配置(私钥已编辑)
- 服务器构建输出
______________________________________________________________________
🧪 发展
设置开发环境
# Clone repository
git clone https://github.com/sally-labs/sally-mcp.git
cd sally-mcp
# Install dependencies
pnpm install
# Build the project
pnpm build
# Run in stdio mode
PRIVATE_KEY=0x... node dist/index.js项目结构
sally-mcp/
├── index.ts # Main server entry point
├── package.json # Dependencies and scripts
├── tsconfig.json # TypeScript configuration
├── smithery.yaml # Smithery deployment config
├── Dockerfile # Container image
├── .dockerignore # Docker build exclusions
├── .env.example # Environment template
└── README.md # This file建筑
# TypeScript compilation
pnpm build
# Run production build
node dist/index.js测试
在本地测试stdio模式:
# Set environment
export PRIVATE_KEY=0x...
export TRANSPORT_MODE=stdio
# Run server
node dist/index.js测试HTTP模式:
# Start HTTP server
TRANSPORT_MODE=http PORT=8081 node dist/index.js
# Test health endpoint
curl http://localhost:8081/health
# Test MCP initialize
curl -X POST http://localhost:8081/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
# Test tools/list
curl -X POST http://localhost:8081/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'______________________________________________________________________
🤝 贡献
我们欢迎捐款!以下是如何开始:
贡献方式
- 错误报告:打开一个关于复制步骤的问题
- 功能请求:描述您的用例和建议的解决方案
- 代码贡献:提交拉取请求
- 文档:改进指南和示例
- 测试:添加测试覆盖率
开发工作流程
- 分叉 仓库
- 创建 特征分支:
git checkout -b feature/my-feature - 制造 您的更改
- 测试 彻底地
- 提交 信息清晰:
git commit -m "feat: add new capability" - 推 到你的叉子:
git push origin feature/my-feature - 打开 pull请求
承诺公约
我们跟随 常规承诺:
feat:新功能fix:错误修复docs:文档更改refactor:代码重构test:测试添加或更改chore:维护任务
代码审查流程
- 所有PR在合并前都需要审查
- 确保TypeScript编译时没有错误
- 必须更新文档以获取新功能
- 重大变更需要明确的迁移说明
______________________________________________________________________
📄 许可证
该项目根据 MIT许可证 -看看 许可证 文件以获取详细信息。
______________________________________________________________________
🔗 链接
- 铁匠铺: 史密斯艾/服务器/@萨莉实验室/萨莉艾mcp
- GitHub:
- x402协议: x402.org
- 模型上下文协议: 模型上下文协议.io
- 支持: support@asksally.xyz
- 社区: bento.me/a1c
______________________________________________________________________
🙏 致谢
内置:
- 模型上下文协议(MCP) -AI集成标准
- x402协议 -区块链支付基础设施
- 铁匠铺 -MCP服务器托管平台
- 我知道 -以太坊开发工具包
______________________________________________________________________
由以下材料制成❤️ Sally Labs团队
