Twitter MCP Server 使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 实现的服务器,它集成了 Twitter API,为大型语言模型 (LLM) 应用提供了一系列工具,使其能够安全、可扩展地与 Twitter 平台进行交互。通过此 MCP 服务器,LLM 可以执行如发布推文、搜索推文、获取用户信息、管理 Twitter 列表等操作。

主要功能点

  • 推文操作: 发布新推文(支持文本和媒体)、回复推文、删除推文、获取指定推文信息。
  • 用户操作: 获取用户信息、关注用户、取消关注用户、获取用户的粉丝列表和关注列表。
  • 搜索与分析: 根据关键词搜索推文、获取话题标签的分析数据。
  • 列表管理: 创建 Twitter 列表、添加用户到列表、从列表移除用户、获取列表成员、获取用户拥有的列表。
  • 互动操作: 点赞推文、取消点赞、转发推文、取消转发、获取推文的转发用户列表、获取用户点赞的推文。

安装步骤

  1. 克隆仓库
    git clone https://github.com/crazyrabbitLTC/mcp-twitter-server.git
  2. 进入项目目录
    cd mcp-twitter-server
  3. 安装依赖
    npm install
  4. 配置环境变量
    • 复制 '.env.example' 文件并重命名为 '.env':
      cp .env.example .env
    • 编辑 '.env' 文件,填入你的 Twitter API 凭据 (你需要拥有 Twitter API 的开发者账号并创建应用以获取这些凭据):
      X_API_KEY=你的API密钥
      X_API_SECRET=你的API密钥Secret
      X_ACCESS_TOKEN=你的访问令牌
      X_ACCESS_TOKEN_SECRET=你的访问令牌Secret
  5. 构建项目
    npm run build

服务器配置

MCP 客户端需要配置以下信息才能连接到 Twitter MCP Server。以下是 'JSON' 格式的配置信息,请复制到你的 MCP 客户端配置中。

{
  "serverName": "twitter-mcp-server",
  "command": "npm",
  "args": ["start"]
  // 如果需要在开发模式下运行,可以使用 "args": ["run", "dev"]
}
  • 'serverName': MCP 服务器的名称,可以自定义,用于在客户端标识该服务器。
  • 'command': 启动服务器的命令,这里使用 'npm',前提是你的运行环境中已安装 Node.js 和 npm。
  • 'args': 命令的参数数组。'["start"]' 参数指示 npm 运行 'package.json' 中定义的 'start' 脚本,该脚本会启动已构建的服务器。 如果你希望在开发模式下运行(例如,实时代码更改和调试),可以使用 '["run", "dev"]',它会运行 'dev' 脚本(通常配置为使用 'nodemon' 监听文件更改并自动重启服务器)。

基本使用方法

  1. 启动服务器:在项目根目录下运行 'npm start' 命令启动服务器。
  2. 配置 MCP 客户端: 将上述服务器配置信息填入你的 MCP 客户端应用中。
  3. 调用工具: 通过 MCP 客户端,你可以调用服务器提供的各种 Twitter 工具。工具列表及其参数可以在仓库的 'README.md' 文件或 'src/tools.ts' 文件中查看。客户端以 JSON-RPC 格式发送请求到服务器,服务器处理请求并返回 JSON-RPC 响应。

例如,使用 MCP 客户端调用 'postTweet' 工具发布推文时,你需要构建如下的 JSON-RPC 请求 (这部分通常由 MCP 客户端 SDK 自动处理,你只需要在客户端界面或代码中指定工具名称和参数):

{
  "jsonrpc": "2.0",
  "method": "callTool",
  "params": {
    "name": "postTweet",
    "arguments": {
      "text": "This is a test tweet posted via MCP server."
    }
  },
  "id": 1
}

服务器会处理该请求,调用 Twitter API 发布推文,并将结果以 JSON-RPC 响应的形式返回给客户端。

请参考 'README.md' 和代码中的注释了解更多工具的详细用法和参数。

信息

分类

通信与社交