TronCode Tron CLI MCP 服务

概述

MCP(Model Context Protocol)是由 Anthropic 提出的开放协议,旨在标准化 AI 模型与外部工具、数据源之间的交互方式。通过 MCP,Tron 可以连接数据库、浏览器自动化工具、第三方 API 等各类外部服务,大幅拓展其能力边界。

MCP 服务以独立进程的形式运行,Tron 通过标准化协议与之通信。你可以同时配置多个 MCP 服务,Tron 会根据上下文自动选择合适的服务完成任务。

添加 MCP 服务

config.jsonmcpServers 字段中配置 MCP 服务。每个服务需要指定名称、启动命令和参数:

json
// ~/.config/tron/config.json
{
  "mcpServers": {
    "sqlite": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sqlite", "./data.db"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "your-github-token"
      }
    }
  }
}
💡
提示

修改配置后需要重启 Tron 才能使新的 MCP 服务生效。

以下是社区中常用的 MCP 服务:

服务 包名 功能说明
SQLite 数据库 @modelcontextprotocol/server-sqlite 查询和操作 SQLite 数据库
PostgreSQL 数据库 @modelcontextprotocol/server-postgres 连接和查询 PostgreSQL 数据库
文件系统扩展 @modelcontextprotocol/server-filesystem 扩展文件系统访问能力
浏览器自动化 @modelcontextprotocol/server-puppeteer 通过 Puppeteer 控制 Chrome 浏览器
GitHub API @modelcontextprotocol/server-github 操作 GitHub 仓库、Issues、PR 等
Slack @modelcontextprotocol/server-slack 读取和发送 Slack 消息
Notion @modelcontextprotocol/server-notion 读写 Notion 页面和数据库

stdio 传输

stdio 是最常用的 MCP 传输模式。Tron 以子进程方式启动 MCP 服务器,通过标准输入输出进行通信。适合本地运行的 MCP 服务。

json
{
  "mcpServers": {
    "my-tool": {
      "type": "stdio",   // 默认值,可省略
      "command": "python",
      "args": ["./mcp_server.py"],
      "env": {
        "API_KEY": "xxx"
      }
    }
  }
}

SSE 传输

SSE(Server-Sent Events)模式允许 Tron 连接到远程 MCP 服务器,适合团队共享或云端部署的 MCP 服务。

json
{
  "mcpServers": {
    "remote-service": {
      "type": "sse",
      "url": "https://mcp.example.com/sse",
      "headers": {
        "Authorization": "Bearer your-token"
      }
    }
  }
}

调试 MCP

如果 MCP 服务无法正常工作,可以使用 --mcp-debug 参数启动 Tron,查看详细的 MCP 通信日志:

终端
tron --mcp-debug
[MCP] 正在启动服务: sqlite
[MCP] sqlite: 已连接,发现 12 个工具
[MCP] sqlite: query_database → {"sql": "SELECT * FROM users LIMIT 10"}

日志会显示每个 MCP 服务的启动状态、可用工具列表以及实际的调用请求和响应,方便排查配置问题。