云优化的HTTP传输版Letta MCP服务器 - 在30秒内部署到Railway。
通用的MCP服务器,通过流式HTTP连接任何AI客户端到Letta.ai的强大有状态代理,实现无缝云部署。
LETTA_API_KEY=your_letta_api_key_herehttps://your-app-name.up.railway.app/mcp
在您的Claude Desktop配置文件中添加:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"letta-railway": {
"url": "https://your-app.up.railway.app/mcp",
"transport": "streamable_http",
"timeout": 300,
"headers": {
"User-Agent": "Claude-Desktop-MCP/1.0"
}
}
}
}
使用MCP Inspector测试您的部署:
npx @modelcontextprotocol/inspector https://your-app.up.railway.app/mcp
{
"mcp.servers": {
"letta-railway": {
"transport": "streamable_http",
"url": "https://your-app.up.railway.app/mcp"
}
}
}
| 变量 | 必需 | 默认值 | 描述 |
|---|---|---|---|
LETTA_API_KEY | ✅ 是 | - | 您从api.letta.com获取的Letta API密钥 |
LETTA_BASE_URL | 否 | https://api.letta.com | Letta API端点(用于自托管) |
PORT | 否 | 8000 | Railway自动分配此端口 |
LETTA_TIMEOUT | 否 | 60 | 请求超时时间(秒) |
LETTA_MAX_RETRIES | 否 | 3 | 失败请求的最大重试次数 |
letta_health_check工具验证letta_list_agents - 列出所有代理,支持分页和过滤letta_create_agent - 创建新的代理,带有记忆块和工具letta_get_agent - 获取详细的代理信息letta_update_agent - 更新代理配置(名称、描述、模型)letta_delete_agent - 安全删除代理,带确认letta_send_message - 发送消息给代理,支持流式传输letta_get_conversation_history - 获取聊天历史记录,支持分页letta_export_conversation - 导出对话(markdown、JSON、文本)letta_get_memory - 查看代理的所有记忆块letta_update_memory - 更新记忆块(人类、角色、自定义)letta_create_memory_block - 创建自定义记忆块letta_search_memory - 搜索代理的对话记忆letta_list_tools - 列出所有可用工具,支持过滤letta_get_agent_tools - 查看特定代理附带的工具letta_attach_tool - 将工具添加到代理letta_detach_tool - 从代理移除工具letta_health_check - 验证API连接和服务状态letta_get_usage_stats - 获取使用统计和分析# 针对Railway云环境优化
- HTTP长连接
- 请求/响应压缩
- 带退避机制的智能重试逻辑
- 内存高效的JSON流式传输
- 自动连接池管理
| 特性 | 标准IO(本地) | 流式HTTP(Railway) |
|---|---|---|
| 云部署 | ❌ 不支持 | ✅ 支持 |
| 负载均衡 | ❌ 不支持 | ✅ 自动 |
| 水平扩展 | ❌ 不支持 | ✅ 支持 |
| 健康监控 | ❌ 有限 | ✅ 完整 |
| 零停机部署 | ❌ 不支持 | ✅ 支持 |
# 克隆仓库
git clone https://github.com/SNYCFIRE-CORE/letta-mcp-server-railway.git
cd letta-mcp-server-railway
# 安装依赖
pip install -e .
# 设置环境变量
export LETTA_API_KEY=your_api_key_here
# 本地运行
python -m letta_mcp_server_railway.server
# 使用MCP Inspector测试
npx @modelcontextprotocol/inspector http://localhost:8000/mcp
# 或使用curl
curl -X POST http://localhost:8000/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}'
# 运行测试
pytest tests/
# 格式化代码
black src/ tests/
# 类型检查
mypy src/
# 代码检查
ruff check src/
# 检查您的Railway应用是否正在运行
curl https://your-app.up.railway.app/health
# 验证Railway仪表板中的环境变量
# 确保LETTA_API_KEY正确设置
# 直接测试您的Letta API密钥
curl -H "Authorization: Bearer your_api_key" https://api.letta.com/v1/agents
# 在您的MCP客户端配置中增加超时时间
{
"mcpServers": {
"letta-railway": {
"url": "https://your-app.up.railway.app/mcp",
"transport": "streamable_http",
"timeout": 300 // 增加到5分钟
}
}
}
https://your-app.up.railway.app/health# 生产环境变量
LETTA_API_KEY=your_production_api_key
LETTA_BASE_URL=https://api.letta.com
PORT=8000 # Railway自动管理此端口
LETTA_TIMEOUT=300
LETTA_MAX_RETRIES=5
Railway提供了内置监控,但您还可以:
# railway.toml - 生产设置
[build]
builder = "DOCKERFILE"
[deploy]
restartPolicyType = "ON_FAILURE"
[[deploy.environmentVariables]]
name = "PORT"
value = "8000"
我们欢迎贡献,使Letta MCP Server Railway变得更好!
git checkout -b feature/amazing-featurepytest tests/git commit -m "添加了惊人的功能"git push origin feature/amazing-feature# Fork并克隆您的Fork
git clone https://github.com/YOUR_USERNAME/letta-mcp-server-railway.git
cd letta-mcp-server-railway
# 安装开发依赖
pip install -e ".[dev]"
# 安装预提交钩子
pre-commit install
# 运行测试
pytest tests/ -v
MIT许可证 - 详情见 LICENSE。
由社区构建,以❤️实现无缝的AI代理部署。
特别感谢: