Custom MCP Servers
TuskBot can connect to external MCP servers for additional capabilities.
Where Configuration Lives
External MCP servers are configured in:
<TUSK_RUNTIME_PATH>/config/mcp_config.json
(Usually under ~/.tuskbot/config/mcp_config.json.)
Minimal Schema
json
{
"mcpServers": {
"server-name": {
"command": "...",
"args": [],
"env": {},
"url": "...",
"type": "http|sse",
"headers": {}
}
}
}Common Examples
Local stdio server
json
{
"mcpServers": {
"local-sqlite": {
"command": "uvx",
"args": ["mcp-server-sqlite", "--db-path", "/path/to/data.db"]
}
}
}Remote http server
json
{
"mcpServers": {
"remote-api": {
"url": "https://api.example.com/mcp",
"type": "http",
"headers": {
"Authorization": "Bearer <token>"
}
}
}
}Remote sse server
json
{
"mcpServers": {
"legacy-service": {
"url": "http://localhost:8080/sse",
"type": "sse"
}
}
}Transport Rules
- If
commandis set, transport isstdio. - If
urlis set,typemust be eitherhttporsse. headersapply to remote transports.envapplies tostdioprocess environments.
Auto Reload Behavior
TuskBot watches mcp_config.json and applies changes live:
- new server config → connect
- changed server config → reconnect
- removed server config → disconnect
No full TuskBot restart is required.
Verify in Chat
Use:
text
/mcpto see currently available MCP tools.
Practical Workflow
- Add/update server entry in
mcp_config.json. - Save file.
- Run
/mcpin Telegram. - Test a tool call from chat.