x-autonomous-mcp MCP服务器实现

使用说明(Markdown 格式)如下,便于快速上手和配置。

  • 项目简介

    • x-autonomous-mcp 是一个 MCP(Model Context Protocol)服务器实现,使用 TypeScript/Node.js 构建,核心职责是向 LLM 客户端提供上下文、工具、以及工作流能力,通过 JSON-RPC 与客户端通信,并支持通过 TOON 编码输出响应以节省 token。服务器内置预算限制、去重、工作流编排等安全和可扩展特性,便于在对话中实现对外部资源的访问和自动化任务执行。
  • 主要功能点

    • MCP 服务器实现与注册工具
      • 提供多种工具(如 post_tweet、get_tweet、search_tweets、get_user、follow_user、cleanup_non_followers 等)的注册与执行,统一通过 JSON-RPC 调用。
    • 资源与预算管理
      • 内置每日预算、任务类型计数、以及预算检查,确保 LLM 行为的可控性和安全性。
    • 去重与保护账户
      • 对交互中的重复操作进行去重,提供对受保护账户的保护逻辑。
    • 工作流引擎
      • 具备 follow_cycle、reply_track 等工作流,实现多步骤的自驱动任务执行与结果管理,支持持久化与断点续传。
    • 服务输出格式
      • 支持 TOON 编码输出以及 JSON 输出,便于与不同客户端的带宽和解析需求对接。
    • 客户端整合
      • 通过 x-api 的客户端封装,提供对 X API 的访问、率限处理、以及错误描述的自描述性提示。
    • 客户端无关的服务器端能力
      • 服务器端包含状态管理、队列、工作流状态、任务分发与结果汇总,确保服务器端在无外部依赖时也能自洽运行。
  • 安装步骤

      1. 克隆仓库并进入目录
      1. 安装依赖
      1. 构建/打包
      1. 启动服务器
      1. 配置 MCP 客户端连接信息(见下述服务器配置示例)
  • 服务器配置(MCP客户端需要的启动信息)

    • 服务器启动信息通常以 JSON 配置传给 MCP 客户端,包含服务器名称、启动命令、以及参数。以下为可参考的配置要点说明,请根据实际环境生成并交给 MCP 客户端使用:
    • serverName: x-autonomous-mcp
    • command: node
    • args: ["dist/index.js"] // 构建产物入口,若直接运行 ts-node 亦可用 ts-node 入口
    • transport: stdio // 服务器默认使用 Stdio 传输,客户端连接时通过标准输入输出实现 RPC 通信
    • 备注: 客户端通过该配置启动并通过 JSON-RPC 与 MCP 服务器交互。若使用不同部署方式(如 Docker、PM2 等),请将 command/args 替换为实际启动命令。
  • 基本使用方法

    • 启动服务器
      • 运行构建后的服务器入口(如 dist/index.js),确保环境已安装 Node.js、依赖已安装并构建完成。
    • 客户端连接
      • 使用 MCP 客户端对该服务器进行 RPC 调用,调用入口包括 get_next_task、submit_task、start_workflow、cleanup_non_followers 等,完成 LLM 的上下文获取、任务提交、以及工作流管理。
    • 运行与调试
      • 服务器会在响应中附带预算与速率限制信息;遇到超预算、参数错误、或 API 调用失败时,会返回标准化的错误信息,便于调试。
    • 重要注意
      • 由于实际环境中的外部 API(X API)可能有变动,建议将 API 调用与工作流逻辑与测试用例结合,通过单元测试与集成测试确保行为稳定。

服务器信息