使用说明
项目简介
X (Twitter) MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在为 LLM 客户端(如 Claude)提供与 X (Twitter) 平台交互的能力。通过此服务器,LLM 可以安全、可控地执行推文发布、内容搜索、用户和列表管理等操作,从而扩展 LLM 的应用场景,使其能够更好地利用社交媒体数据和功能。
主要功能点
- 推文操作:
- 发布新的推文内容。
- 根据关键词搜索推文。
- 账号管理:
- 获取用户个人资料信息(包括当前认证用户和其他用户)。
- 更新当前认证用户的个人资料(如用户名、简介、地点、网站链接)。
- 关注和取消关注用户。
- 列出用户的关注者和正在关注的用户。
- 列表管理:
- 创建新的 Twitter 列表(公开或私密)。
- 获取指定列表的详细信息。
- 获取当前认证用户拥有的所有列表。
安装步骤
-
创建 X (Twitter) 开发者账号并获取 API 密钥: 访问 X Developer Portal 创建开发者账号并获取 API Key、API Secret、Access Token 和 Access Token Secret。确保你的开发者应用具有 API v1 和 v2 的访问权限。
-
克隆仓库: 在你的本地计算机上克隆 GitHub 仓库 'twitter-mcp':
git clone https://github.com/Dishant27/twitter-mcp.git cd twitter-mcp -
安装依赖: 确保你已安装 Node.js 18.x 或更高版本。在仓库目录下运行以下命令安装项目依赖:
npm install -
配置环境变量: 你需要将 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 密钥信息。
-
-
启动服务器: 配置完环境变量后,在仓库目录下运行以下命令启动 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 的强大功能,为用户提供更丰富、更智能的应用体验。
信息
分类
通信与社交