使用说明

项目简介

X (Twitter) MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为 LLM 客户端(如 Claude)提供与 X (Twitter) 平台交互的能力。通过此服务器,LLM 可以安全、可控地执行推文发布、内容搜索、用户和列表管理等操作,从而扩展 LLM 的应用场景,使其能够更好地利用社交媒体数据和功能。

主要功能点

  • 推文操作:
    • 发布新的推文内容。
    • 根据关键词搜索推文。
  • 账号管理:
    • 获取用户个人资料信息(包括当前认证用户和其他用户)。
    • 更新当前认证用户的个人资料(如用户名、简介、地点、网站链接)。
    • 关注和取消关注用户。
    • 列出用户的关注者和正在关注的用户。
  • 列表管理:
    • 创建新的 Twitter 列表(公开或私密)。
    • 获取指定列表的详细信息。
    • 获取当前认证用户拥有的所有列表。

安装步骤

  1. 创建 X (Twitter) 开发者账号并获取 API 密钥: 访问 X Developer Portal 创建开发者账号并获取 API Key、API Secret、Access Token 和 Access Token Secret。确保你的开发者应用具有 API v1 和 v2 的访问权限。

  2. 克隆仓库: 在你的本地计算机上克隆 GitHub 仓库 'twitter-mcp':

    git clone https://github.com/Dishant27/twitter-mcp.git
    cd twitter-mcp
  3. 安装依赖: 确保你已安装 Node.js 18.x 或更高版本。在仓库目录下运行以下命令安装项目依赖:

    npm install
  4. 配置环境变量: 你需要将 X (Twitter) API 密钥设置为环境变量。你可以选择以下两种方式之一进行配置:

    • 方式一:使用环境变量直接运行: 在启动服务器时,通过命令行设置环境变量:

      TWITTER_API_KEY=你的API密钥 \
      TWITTER_API_SECRET=你的API密钥 \
      TWITTER_ACCESS_TOKEN=你的Access Token \
      TWITTER_ACCESS_TOKEN_SECRET=你的Access Token Secret \
      npm start

      请将 '你的API密钥'、'你的API密钥'、'你的Access Token' 和 '你的Access Token Secret' 替换为你实际的 API 密钥信息。

    • 方式二:使用 .env 文件: 在仓库根目录下创建 '.env' 文件,并将 API 密钥信息写入文件:

      echo "TWITTER_API_KEY=你的API密钥
      TWITTER_API_SECRET=你的API密钥
      TWITTER_ACCESS_TOKEN=你的Access Token
      TWITTER_ACCESS_TOKEN_SECRET=你的Access Token Secret" > .env

      同样,请将 '你的API密钥'、'你的API密钥'、'你的Access Token' 和 '你的Access Token Secret' 替换为你实际的 API 密钥信息。

  5. 启动服务器: 配置完环境变量后,在仓库目录下运行以下命令启动 MCP 服务器:

    npm start

    服务器成功启动后,将在控制台输出 'Twitter MCP server running on stdio' 信息。

服务器配置 (MCP 客户端配置)

要将此 MCP 服务器与 MCP 客户端(例如 Claude)配合使用,你需要在 MCP 客户端中配置服务器连接信息。以下是一个 Claude 客户端的 MCP 服务器配置示例(请将此 JSON 配置添加到 Claude 的 MCP 服务器配置文件中,通常位于 '~/.config/AnthropicClaude/mcp-servers' 或 '%APPDATA%\AnthropicClaude\mcp-servers' 或 '~/Library/Application Support/AnthropicClaude/mcp-servers' 目录下):

{
  "name": "x",
  "display_name": "X (Twitter)",
  "description": "X (Twitter) MCP 服务器允许 Claude 与 X (Twitter) 平台互动,进行推文发布、内容搜索、账号和列表管理。",
  "path": "path/to/twitter-mcp/dist/index.js",
  "startup": {
    "env": {
      "TWITTER_API_KEY": "你的API密钥", // 你的 X (Twitter) API 密钥
      "TWITTER_API_SECRET": "你的API密钥", // 你的 X (Twitter) API Secret
      "TWITTER_ACCESS_TOKEN": "你的Access Token", // 你的 X (Twitter) Access Token
      "TWITTER_ACCESS_TOKEN_SECRET": "你的Access Token Secret" // 你的 X (Twitter) Access Token Secret
    }
  },
  "transport": "stdio"
}

配置参数说明:

  • 'name': 服务器的唯一标识符,例如 "x"。
  • 'display_name': 服务器在客户端中显示的名称,例如 "X (Twitter)"。
  • 'description': 服务器的简短描述,用于在客户端界面中展示。
  • 'path': 重要: 指向服务器启动入口文件 'index.js' 的绝对路径。你需要将 'path/to/twitter-mcp/dist/index.js' 替换为你实际的 'twitter-mcp' 仓库 'dist/index.js' 文件的绝对路径。例如,如果你的仓库位于 '~/Documents/twitter-mcp',则 'path' 应为 '"/Users/你的用户名/Documents/twitter-mcp/dist/index.js"' (macOS/Linux) 或 '"C:\Users\你的用户名\Documents\twitter-mcp\dist\index.js"' (Windows)。
  • 'startup.env': 用于传递环境变量给服务器的配置。这里配置了 X (Twitter) API 密钥,你需要将 '"你的API密钥"' 等占位符替换为你实际的 API 密钥信息。
  • 'transport': 指定 MCP 服务器使用的传输协议,这里使用 'stdio' (标准输入输出)。

基本使用方法

配置完成后,你的 MCP 客户端(如 Claude)将能够发现并连接到 X (Twitter) MCP 服务器。你可以通过客户端的功能调用服务器提供的工具,例如:

  • 在 Claude 中,你可以指示 Claude 使用 "X (Twitter)" 工具来发布推文、搜索信息、获取用户资料等。
  • 客户端会根据你选择的工具和提供的参数,自动构建 MCP 请求并发送给 X (Twitter) MCP 服务器。
  • 服务器接收到请求后,会调用相应的 Twitter API 功能,并将结果格式化后返回给客户端。

示例使用场景:

  • "Claude,帮我在 Twitter 上发布一条关于今天天气真好的推文。" (使用 'post_tweet' 工具)
  • "Claude,搜索一下 Twitter 上关于 #OpenAI 的最新推文。" (使用 'search_tweets' 工具)
  • "Claude,获取 Elon Musk 的 Twitter 个人资料。" (使用 'get_profile' 工具)
  • "Claude,列出我的 Twitter 关注者。" (使用 'list_followers' 工具)

通过 X (Twitter) MCP 服务器,LLM 客户端可以无缝集成 Twitter 的强大功能,为用户提供更丰富、更智能的应用体验。

信息

分类

通信与社交