About Tlon MCP Server
Tlon MCP Server provides tools for interacting with Tlon agents on a running Urbit ship. It supports direct messages and contact lookup, with recipients addressable by ship ID or nickname.
Key features
- 01Send direct messages
- 02Read recent DM history
- 03List contacts and ship IDs
- 04Address contacts by nickname
Use cases
- 01Message a contact by nickname
- 02Review recent conversation history
- 03Find a contact's ship ID
MCP support
The MCP server exposes direct messaging, message-history retrieval, and contact listing as tools for MCP clients connected to a configured Urbit ship.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMETlon MCP Server
An MCP (Model Context Protocol) server that provides tools for interacting with Tlon agents.
Demo
https://github.com/user-attachments/assets/765847b2-df40-44c0-bfd3-c23eb609bbd8
Features
- send-dm tool: Send direct messages to other users by ship ID or nickname
- read-dm-history tool: Retrieve recent messages from a direct-message channel
- list-contacts tool: Get contacts with their nicknames and ship IDs
- Natural language support: Reference people by their nicknames ("Send a message to Brian")
Prerequisites
- Node.js (v16+)
- A running Urbit ship
Installation
- Clone the repository
- Navigate to the project directory
- Install dependencies:
npm install
Important: Always run npm install manually in the terminal before using with Claude Desktop or any other MCP client. This prevents installation output from interfering with the MCP protocol.
Configuration
Configure the server using environment variables:
| Variable | Description | Default |
|---|---|---|
URBIT_SHIP | Your Urbit ship name (without ~) | zod |
URBIT_CODE | Your Urbit +code | lidlut-tabwed-pillex-ridrup |
URBIT_HOST | Urbit host | localhost |
URBIT_PORT | Urbit port | 8080 |
PORT | MCP server port (HTTP mode only) | 3001 |
MCP_TRANSPORT | Transport type (http or stdio) | stdio |
Usage
Starting the server
# Start with default stdio transport
npm start
# Start with HTTP transport
export MCP_TRANSPORT=http && npm start
# Development mode with auto-reload
npm run dev
Setting up with Claude Desktop
The default stdio mode works seamlessly with Claude Desktop. Create or edit the Claude Desktop configuration file at:
~/Library/Application Support/Claude/claude_desktop_config.json
With the following content:
{
"mcpServers": {
"tlon-mcp": {
"command": "/bin/sh",
"args": ["-c", "cd /path/to/server && node index.js"]
}
}
}
Important: Be sure to run npm install in the server directory first before configuring Claude Desktop.
Using the tools with natural language
Once configured, you can use natural language commands:
Send a message to Brian
Show me my recent DM history with ~sampel-palnet
Who are my contacts?
Available Tools
send-dm
Sends a direct message to another ship.
Parameters:
recipient: The recipient's ship name (with ~) or nicknamemessage: The message text to send
Example usage:
Send a message to Brian saying "Let's meet tomorrow"
read-dm-history
Fetches the latest messages from a direct-message channel between your ship and another.
Parameters:
correspondent: The other ship's name (with ~) or nicknamecount(optional): How many messages to return (default 100, max 500)format(optional): Output format - "raw" or "formatted" (default "formatted")
Example usage:
Show me my last 50 messages with Dad
list-contacts
Retrieves your contacts list with ship IDs and nicknames.
Parameters:
format(optional): Output format - "raw" or "formatted" (default "formatted")
Example usage:
List all my contacts
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.