项目简介
这是一个基于 Model Context Protocol (MCP) 构建的服务器端应用,旨在让大型语言模型(如Claude Desktop)能够通过标准化的协议与Twitter (X) API进行交互。它将Twitter的各种功能(如发布推文、获取用户信息、搜索等)封装成可由AI调用的“工具”。
主要功能点
- 获取用户信息: 获取用户个人资料、粉丝列表、关注列表等。
- 管理推文: 发布新推文(含媒体、回复、标签)、删除推文、赞/取消赞推文、创建含投票的推文。
- 管理书签: 添加、删除推文书签。
- 时间线与搜索: 获取个人主页时间线(“为你推荐”和“正在关注”)、搜索推文、获取热门话题(趋势)、获取提及你的推文。
- API认证与限流: 使用Twitter API v2官方认证方式,并内置基础的API调用频率限制处理。
安装步骤
此服务器需要 Python 3.10 或更高版本以及 Twitter 开发者账号凭据。
推荐的安装方式有:
-
通过 Smithery 安装 (适用于 Claude Desktop): 使用 Smithery CLI 工具自动安装和配置。 安装 Node.js,然后运行:
npx -y @smithery/cli install @rafaljanicki/x-twitter-mcp-server --client claude -
通过 pip 安装: 直接从 PyPI 仓库安装 Python 包:
pip install x-twitter-mcp -
从源码安装: 克隆 GitHub 仓库,安装依赖。这种方式需要手动管理环境和配置。
服务器配置
安装完成后,你需要配置 MCP 客户端(如 Claude Desktop)来连接并启动此服务器。配置通常在一个 JSON 文件中完成(例如 Claude Desktop 的 'claude_desktop_config.json')。
配置的核心是告诉客户端如何启动服务器进程及其参数。你需要提供:
-
一个唯一的服务器名称(例如 '"x-twitter-mcp"')。
-
启动服务器的命令 ('command')。
- 如果通过 'pip' 安装:命令通常是服务器提供的 CLI 脚本名,例如 '"x-twitter-mcp-server"'。
- 如果从源码安装并使用 'uv':命令是 '"uv"',参数 ('args') 中包含 '--directory' 指向项目路径和 'run x-twitter-mcp-server'。
-
启动命令所需的参数 ('args'),通常为空或包含特定指令。
-
服务器运行所需的环境变量 ('env')。对于 Twitter API 凭据,你需要在环境变量中提供:
- 'TWITTER_API_KEY'
- 'TWITTER_API_SECRET'
- 'TWITTER_ACCESS_TOKEN'
- 'TWITTER_ACCESS_TOKEN_SECRET'
- 'TWITTER_BEARER_TOKEN'
这些环境变量可以直接写在客户端的 JSON 配置中,或者在启动服务器的环境中提前设置好(如果从源码运行并使用 '.env' 文件)。
配置完成后,重启 MCP 客户端即可加载服务器。
基本使用方法
当 MCP 服务器成功配置并运行后,在支持 MCP 的客户端界面中,你会看到可用的“工具”图标(例如 Claude Desktop 右下角的锤子图标)。点击图标可以查看此 Twitter MCP 服务器提供的所有工具列表,例如 'post_tweet', 'search_twitter', 'get_user_profile' 等。
你可以在与 AI 对话时,使用自然语言描述你的意图,客户端会识别并调用相应的 MCP 工具来完成任务。
示例:
- 要获取用户信息,你可以说:“获取用户 ID 为 123456789 的 Twitter 资料。” 客户端会调用 'get_user_profile' 工具。
- 要发布推文,你可以说:“发一条推文,内容是 '测试从 AI 发布推文!'” 客户端会调用 'post_tweet' 工具。
- 要搜索推文,你可以说:“搜索关于人工智能的最新推文。” 客户端会调用 'search_twitter' 工具。
首次使用工具时,客户端可能会询问你是否授权 AI 使用此 MCP 服务器的功能。
信息
分类
通信与社交