Letta MCP服务器
](https://www.npmjs.com/package/letta-mcp-server)   ](https://github.com/oculairmedia/letta-MCP-server/actions/workflows/rust-docker-build.yml) 
特性
- 7综合工具 使用鉴别器模式覆盖103个操作
- 高性能 --Rust,~10-30MB内存,\<500ms启动,通过并行扇出
tokio::join!和buffer_unordered - 双重运输 --stdio(Claude Desktop、Cursor等)和HTTP(生产部署)
- 响应大小优化 --LLM上下文效率响应大小减少68-96%
- 类型缩小模式 --具体
object/array具有每个参数描述的类型(没有泛型Value参数) - 多平台 --macOS、Linux、Windows(x64和arm64)
- Letta 0.16.x兼容 --档案、对话、MCP服务器v2
- 符合MCP 2025-11-25标准 --使用SSE进行流式HTTP传输
- 编译时路由 --通过TurboMCP v3宏进行工具调度的运行时开销为零
快速开始
npm(推荐)
npm install -g letta-mcp-server系统会自动安装适用于您平台的正确二进制文件。
| 平台 | 套餐 |
|---|---|
| macOS英特尔 | letta-mcp-darwin-x64 |
| macOS苹果硅 | letta-mcp-darwin-arm64 |
| Linux x64 | letta-mcp-linux-x64 |
| Linux arm64 | letta-mcp-linux-arm64 |
| Windows x64 | letta-mcp-windows-x64 |
码头工人
docker pull ghcr.io/oculairmedia/letta-mcp-server-rust:rust-latest
docker run -d \
-p 6507:6507 \
-e LETTA_BASE_URL=http://your-letta-instance:8283 \
-e LETTA_PASSWORD=your-password \
-e TRANSPORT=http \
--name letta-mcp \
ghcr.io/oculairmedia/letta-mcp-server-rust:rust-latestDocker Compose
services:
letta-mcp:
image: ghcr.io/oculairmedia/letta-mcp-server-rust:rust-latest
container_name: letta-mcp
restart: unless-stopped
ports:
- '6507:6507'
environment:
LETTA_BASE_URL: ${LETTA_BASE_URL}
LETTA_PASSWORD: ${LETTA_PASSWORD}
TRANSPORT: http
PORT: 6507
RUST_LOG: info
env_file:
- .env
healthcheck:
test: ['CMD-SHELL', "timeout 1 bash -c '</dev/tcp/localhost/6507' || exit 1"]
interval: 30s
timeout: 10s
retries: 3环境变量
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
LETTA_BASE_URL | 是 | - | Letta API URL(例如。 http://localhost:8283) |
LETTA_PASSWORD | 是 | - | Letta API密码 |
TRANSPORT | 没有 | stdio | 运输方式: stdio 或 http |
PORT | 没有 | 6507 | HTTP端口(当 TRANSPORT=http) |
RUST_LOG | 没有 | info | 日志级别: debug, info, warn, error |
RUST_BACKTRACE | 没有 | 0 | 启用回溯(0 或 1) |
LETTA_MCP_MAX_VALUE_LEN | 没有 | 500 | 块/段落/搜索值的最大字符数 |
LETTA_MCP_CORE_MEMORY_PREVIEW_LEN | 没有 | 200 | 核心内存预览的最大字符数 |
可用工具
服务器提供 7个综合工具 和 103次操作:
| 工具 | 操作 | 说明 |
|---|---|---|
letta_agent_advanced | 28 | 代理生命周期、消息传递、对话、上下文、导出/导入 |
letta_memory_unified | 24 | 核心内存、块、档案段落、档案、搜索 |
letta_tool_manager | 13 | 工具CRUD、连接/分离、批量操作 |
letta_source_manager | 15 | 数据源、文件、段落、附件 |
letta_job_monitor | 4 | 作业跟踪、取消、主动监控 |
letta_file_folder_ops | 8 | 文件会话、文件夹管理 |
letta_mcp_ops | 11 | MCP服务器生命周期、工具发现、v2 API支持 |
工具操作
letta_agent_advanced(28次操作)
list, create, get, update, delete, search, list_tools, send_message,
export, import, clone, get_config, bulk_delete, context, reset_messages,
summarize, stream, async_message, cancel_message, preview_payload,
search_messages, get_message, count, list_conversations,
get_conversation, send_conversation_message, cancel_conversation,
compact_conversationletta_memory_unified(24次操作)
get_core_memory, update_core_memory, get_block_by_label, list_blocks,
create_block, get_block, update_block, attach_block, detach_block,
list_agents_using_block, search_archival, list_passages, create_passage,
update_passage, delete_passage, search_memory, list_archives,
get_archive, create_archive, update_archive, delete_archive,
attach_archive, detach_archive, list_agents_using_archiveletta_tool_manager(13次操作)
list, get, create, update, delete, upsert, attach, detach, bulk_attach,
generate_from_prompt, generate_schema, run_from_source, add_base_toolsletta_source_manager(15次操作)
list, get, create, update, delete, count, attach, detach, list_attached,
upload, delete_files, list_files, list_folders, get_folder_contents,
list_agents_usingletta_job_monitor(4个操作)
list, get, cancel, list_activeletta_file_folder_ops(8个操作)
list_files, open_file, close_file, close_all_files, list_folders,
attach_folder, detach_folder, list_agents_in_folderletta_mcp_ops(11个操作)
add, update, delete, test, connect, resync, list_servers, list_tools,
register_tool, execute, attach_mcp_server响应大小优化
Rust实现包括对LLM上下文效率的显著响应大小优化:
| 操作 | 优化 | 尺寸减小 |
|---|---|---|
| 代理列表 | 默认分页(15个项目),摘要模式 | 68-85% |
| 工具列表 | 默认分页(25个项目),截断描述 | 70-90% |
| 内存块 | 排除列表模式下的重字段 | 60-80% |
| 源列表 | 摘要模式,分页 | 75-95% |
分页
所有列表操作都支持分页:
{
"operation": "list",
"pagination": {
"limit": 25,
"offset": 0
}
}摘要模式与完整模式
列表操作默认返回摘要数据。使用 get 使用特定ID进行操作以获取完整详细信息:
// Summary (default for list)
{
"id": "agent-123",
"name": "My Agent",
"model": "gpt-4",
"tool_count": 5
}
// Full (with get operation)
{
"id": "agent-123",
"name": "My Agent",
"model": "gpt-4",
"system_prompt": "...",
"tools": [...],
"memory_blocks": [...]
}MCP客户端配置
克劳德桌面版
{
"mcpServers": {
"letta": {
"command": "letta-mcp",
"env": {
"LETTA_BASE_URL": "http://localhost:8283",
"LETTA_PASSWORD": "your-password"
}
}
}
}光标/风帆
{
"mcpServers": {
"letta": {
"command": "letta-mcp",
"env": {
"LETTA_BASE_URL": "http://localhost:8283",
"LETTA_PASSWORD": "your-password"
}
}
}
}OpenCode(HTTP)
{
"mcp": {
"letta-mcp": {
"type": "remote",
"url": "http://localhost:6507/mcp",
"enabled": true
}
}
}从源头构建
先决条件
- 每晚生锈 (2024版支持)-通过安装 生锈
- Docker(可选,用于容器化构建)
本地建设
git clone https://github.com/oculairmedia/Letta-MCP-server.git
cd Letta-MCP-server
cargo build --release
LETTA_BASE_URL=http://your-letta:8283 \
LETTA_PASSWORD=your-password \
./target/release/letta-serverDocker构建
docker build -f Dockerfile.rust -t letta-mcp .
docker run -d \
-p 6507:6507 \
-e LETTA_BASE_URL=http://your-letta:8283 \
-e LETTA_PASSWORD=your-password \
-e TRANSPORT=http \
letta-mcp建筑
letta-server/
├── src/
│ ├── main.rs # Entry point, transport selection
│ ├── lib.rs # Server init, compile-time tool registration
│ └── tools/
│ ├── mod.rs # Tool module exports
│ ├── response_utils.rs # Unified ToolResponse, pagination helpers
│ ├── validation_utils.rs # require_field, require_id, sdk_err
│ ├── id_utils.rs # ID parsing utilities
│ ├── agent_advanced/ # Agent operations (28 ops)
│ │ ├── crud.rs # list, create, get, update, delete, search
│ │ ├── messaging.rs # send_message, stream, async, preview
│ │ ├── conversations.rs # list, get, send, cancel, compact
│ │ └── management.rs # export, import, clone, config, bulk_delete
│ ├── memory_unified/ # Memory operations (24 ops)
│ │ ├── core.rs # get/update core memory
│ │ ├── blocks.rs # block CRUD, attach/detach
│ │ ├── passages.rs # archival passage CRUD
│ │ ├── archives.rs # archive CRUD, attach/detach
│ │ └── search.rs # search_archival, search_memory
│ ├── tool_manager.rs # Tool operations (13 ops)
│ ├── source_manager.rs # Source operations (15 ops)
│ ├── job_monitor.rs # Job operations (4 ops)
│ ├── file_folder_ops.rs # File/folder operations (8 ops)
│ └── mcp_ops.rs # MCP server v2 operations (11 ops)
├── tests/ # Integration tests
└── Cargo.toml关键依赖关系
- TurboMCP v3 --具有编译时路由和流式HTTP的MCP框架
- 莱塔 --卖方Rust Letta API客户端(0.16.x)
- 东京 --异步运行时
- 期货 --流组合器(
buffer_unordered用于并联扇出) - 序列化 --序列化/反序列化
故障排除
连接被拒绝
- 确保服务器正在运行:
docker ps | grep letta-mcp - 检查日志:
docker logs letta-mcp - 验证端口是否可访问:
curl http://localhost:6507/mcp
身份验证错误
- 验证
LETTA_BASE_URL指向您的Letta实例 - 检查
LETTA_PASSWORD是正确的 - 确保可以从容器访问Letta服务器
未找到工具
- 通过MCP列出可用工具:
tools/list - 验证您使用的操作名称是否正确(例如。,
list不list_agents)
日志
# View server logs
docker logs -f letta-mcp
# Enable debug logging
RUST_LOG=debug letta-mcp贡献
- 分叉存储库
- 创建要素分支:
git checkout -b feature/my-feature - 进行更改并添加测试
- 运行测试:
cargo test - 提交拉取请求
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
