README
🚀 Tlon MCP 服务器
Tlon MCP 服务器是一个提供与 Tlon 代理交互工具的 MCP(模型上下文协议)服务器,可借助多种工具实现与其他用户的消息交互等功能,为用户提供便捷的通信体验。
🚀 快速开始
在使用 Tlon MCP 服务器前,需要满足一定的先决条件,并完成安装和配置:
先决条件
- Node.js (v16+)
- 运行中的 Urbit 船
安装
- 克隆仓库
- 切换到项目目录
- 安装依赖:
npm install
⚠️ 重要提示
始终手动在终端运行
npm install,以防止安装输出干扰 MCP 协议。
配置
使用环境变量配置服务器:
| 变量名称 | 描述 | 默认值 |
|--------|------|-------|
| URBIT_SHIP | 您的 Urbit 船名(不带 ~) | zod |
| URBIT_CODE | 您的 Urbit +code | lidlut-tabwed-pillex-ridrup |
| URBIT_HOST | Urbit 主机 | localhost |
| URBIT_PORT | Urbit 端口 | 8080 |
| PORT | MCP 服务器端口(仅限 HTTP 模式) | 3001 |
| MCP_TRANSPORT | 传输类型(http 或 stdio) | stdio |
✨ 主要特性
- send-dm 工具:通过船 ID 或昵称向其他用户发送直接消息
- read-dm-history 工具:从直接消息频道中检索最近的消息
- list-contacts 工具:获取联系人及其昵称和船 ID
- 自然语言支持:通过昵称引用人员(例如“给 Brian 发送一条消息”)
📦 安装指南
克隆与安装依赖
- 克隆仓库
- 切换到项目目录
- 安装依赖:
npm install
⚠️ 重要提示
始终手动在终端运行
npm install,以防止安装输出干扰 MCP 协议。
配置环境变量
使用环境变量配置服务器,具体变量及含义如下:
| 变量名称 | 描述 | 默认值 |
|--------|------|-------|
| URBIT_SHIP | 您的 Urbit 船名(不带 ~) | zod |
| URBIT_CODE | 您的 Urbit +code | lidlut-tabwed-pillex-ridrup |
| URBIT_HOST | Urbit 主机 | localhost |
| URBIT_PORT | Urbit 端口 | 8080 |
| PORT | MCP 服务器端口(仅限 HTTP 模式) | 3001 |
| MCP_TRANSPORT | 传输类型(http 或 stdio) | stdio |
💻 使用示例
启动服务器
# 以默认的 stdio 传输启动
npm start
# 以 HTTP 传输启动
export MCP_TRANSPORT=http && npm start
# 开发模式下的自动重载
npm run dev
配置与 Claude Desktop 使用
默认的 stdio 模式可无缝集成到 Claude Desktop。创建或编辑位于:
~/Library/Application Support/Claude/claude_desktop_config.json
内容如下:
{
"mcpServers": {
"tlon-mcp": {
"command": "/bin/sh",
"args": ["-c", "cd /path/to/server && node index.js"]
}
}
}
⚠️ 重要提示
在配置 Claude Desktop 之前,请确保先在服务器目录中运行
npm install。
使用自然语言支持的工具
配置完成后,您可以使用自然语言命令:
给 Brian 发送一条消息
显示我与 ~sampel-palnet 的最近 50 条 DM 历史记录
我的联系人有哪些?
可用工具使用示例
send-dm
向另一艘船发送直接消息。
参数:
recipient:收件人的船名(带 ~)或昵称message:要发送的消息内容
示例命令:
node send-dm.js --recipient user@example.com --message "Hello, Tlon!"
read-dm-history
从直接消息频道中检索最近的消息。
参数:
channelId:目标频道的 IDlimit:要检索的最大消息数量(可选,默认为 10)
示例命令:
node read-dm-history.js --channelId 12345 --limit 20
list-contacts
获取所有联系人及其详细信息。
参数: 无
示例命令:
node list-contacts.js
📄 许可证
本项目采用 MIT 许可证。
🔗 演示
您可以通过以下链接查看演示: https://github.com/user-attachments/assets/765847b2-df40-44c0-bfd3-c23eb609bbd8
Scan to contact