12 KiB
Twitter MCP 数据服务
MCP Twitter AI工具 实时监控 推文搜索
Twitter MCP 服务器
Twitter/X 数据 · 用户资料 · 推文搜索 · 关注者事件 · KOL 追踪
快速安装
首先,前往 https://6551.io/mcp 获取您的 API Token。
Claude Code
claude mcp add twitter \
-e TWITTER_TOKEN=<your-token> \
-- uv --directory /path/to/twitter-mcp run twitter-mcp
将
/path/to/twitter-mcp替换为本地项目路径,将<your-token>替换为您的 Token。
OpenClaw
export TWITTER_TOKEN="<your-token>"
cp -r openclaw-skill/opentwitter ~/.openclaw/skills/
让 AI 帮你审查并安装
不确定这个 MCP 是否安全?将以下提示词发送给您的 AI 助手——它会先审查源码,确认安全后再安装:
复制以下提示词发送给您的 AI 助手(将
<project-path>和<your-token>替换为实际值):
请帮我审查并安装 twitter-mcp MCP 服务器。项目路径为 <project-path>。
步骤:
1. 审查以下文件的安全性:
- src/twitter_mcp/api_client.py — 确认只连接 ai.6551.io,不向其他地方发送数据
- src/twitter_mcp/config.py — 确认 Token 只从本地 config.json 或环境变量读取,无硬编码密钥或泄露
- src/twitter_mcp/tools.py — 确认所有工具只执行 API 查询,不写文件、不执行命令、不含危险操作
- pyproject.toml — 确认依赖只有 mcp、httpx,无可疑包
2. 告知结论:安全 / 有风险 / 有问题,并说明具体原因
3. 如果安全,执行安装(Token 从 https://6551.io/mcp 获取):
claude mcp add twitter -e TWITTER_TOKEN=<your-token> -- uv --directory <project-path> run twitter-mcp
能做什么?
连接后,直接向 AI 助手提问:
| 你说 | 它做 |
|---|---|
| "显示 @elonmusk 的 Twitter 资料" | 获取用户资料信息 |
| "查看 @VitalikButerin 最近发了什么推文" | 获取用户最新推文 |
| "搜索比特币相关推文" | 关键词搜索 |
| "查找带 #crypto 话题标签的推文" | 话题标签搜索 |
| "获赞超过 1000 的 ETH 相关热门推文" | 带互动量过滤的搜索 |
| "谁引用了这条推文" | 获取指定推文的引用推文 |
| "谁转发了这条推文" | 获取转发该推文的用户 |
| "最近谁关注了 @elonmusk" | 获取新增关注者事件 |
| "谁取关了 @elonmusk" | 获取取消关注事件 |
| "@elonmusk 删除了哪些推文" | 获取已删除的推文 |
| "哪些 KOL 关注了 @elonmusk" | 获取 KOL 关注者 |
可用工具
| 工具 | 描述 |
|---|---|
get_twitter_user |
通过用户名获取用户资料 |
get_twitter_user_by_id |
通过数字 ID 获取用户资料 |
get_twitter_user_tweets |
获取用户最近的推文 |
search_twitter |
基础过滤条件搜索推文 |
search_twitter_advanced |
多条件高级搜索 |
get_twitter_follower_events |
获取关注/取关事件 |
get_twitter_deleted_tweets |
获取用户已删除的推文 |
get_twitter_kol_followers |
获取 KOL(关键意见领袖)关注者 |
get_twitter_article_by_id |
通过 ID 获取 Twitter 文章 |
get_twitter_tweet_by_id |
通过 ID 获取推文(含嵌套回复/引用) |
get_twitter_quote_tweets_by_id |
获取引用指定推文的所有推文 |
get_twitter_retweet_users_by_id |
获取转发指定推文的用户 |
get_twitter_watch |
获取所有 Twitter 监控用户 |
add_twitter_watch |
添加 Twitter 用户到监控列表 |
delete_twitter_watch |
从监控列表中按用户名删除用户 |
配置
获取 API Token
前往 https://6551.io/mcp 获取您的 API Token。
设置环境变量:
# macOS / Linux
export TWITTER_TOKEN="<your-token>"
# Windows PowerShell
$env:TWITTER_TOKEN = "<your-token>"
| 变量 | 必填 | 描述 |
|---|---|---|
TWITTER_TOKEN |
是 | 6551 API Bearer Token(从 https://6551.io/mcp 获取) |
TWITTER_API_BASE |
否 | 覆盖 REST API 地址 |
TWITTER_MAX_ROWS |
否 | 每次查询的最大结果数(默认:100) |
也支持在项目根目录下放置 config.json(环境变量优先级更高):
{
"api_base_url": "https://ai.6551.io",
"api_token": "<your-token>",
"max_rows": 100
}
WebSocket 实时订阅
端点:wss://ai.6551.io/open/twitter_wss?token=YOUR_TOKEN
订阅您监控的 Twitter 账号的实时事件。
订阅 Twitter 事件
{
"jsonrpc": "2.0",
"id": 1,
"method": "twitter.subscribe"
}
响应:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true
}
}
取消订阅
{
"jsonrpc": "2.0",
"id": 2,
"method": "twitter.unsubscribe"
}
服务器推送 - Twitter 事件
当监控账号有动态时,服务器推送:
{
"jsonrpc": "2.0",
"method": "twitter.event",
"params": {
"id": 123456,
"twAccount": "elonmusk",
"twUserName": "Elon Musk",
"profileUrl": "https://twitter.com/elonmusk",
"eventType": "NEW_TWEET",
"content": "...",
"ca": "0x1234...",
"remark": "自定义备注",
"createdAt": "2026-03-06T10:00:00Z"
}
}
注意:content 字段的结构因事件类型而异(见下文)。
事件类型及内容结构:
推文事件
NEW_TWEET- 发布新推文NEW_TWEET_REPLY- 发布回复推文NEW_TWEET_QUOTE- 发布引用推文NEW_RETWEET- 转发推文CA- 含 CA 地址的推文
推文事件的内容结构:
{
"id": "1234567890",
"text": "推文内容...",
"createdAt": "2026-03-06T10:00:00Z",
"language": "en",
"retweetCount": 100,
"favoriteCount": 500,
"replyCount": 20,
"quoteCount": 10,
"viewCount": 10000,
"userScreenName": "elonmusk",
"userName": "Elon Musk",
"userIdStr": "44196397",
"userFollowers": 170000000,
"userVerified": true,
"conversationId": "1234567890",
"isReply": false,
"isQuote": false,
"hashtags": ["crypto", "bitcoin"],
"media": [
{
"type": "photo",
"url": "https://...",
"thumbUrl": "https://..."
}
],
"urls": [
{
"url": "https://...",
"expandedUrl": "https://...",
"displayUrl": "example.com"
}
],
"mentions": [
{
"username": "VitalikButerin",
"name": "Vitalik Buterin"
}
]
}
关注者事件
NEW_FOLLOWER- 新增关注者NEW_UNFOLLOWER- 取消关注事件
关注者事件的内容结构(数组):
[
{
"id": 123,
"twId": 44196397,
"twAccount": "elonmusk",
"twUserName": "Elon Musk",
"twUserLabel": "Verified",
"description": "用户简介...",
"profileUrl": "https://...",
"bannerUrl": "https://...",
"followerCount": 170000000,
"friendCount": 500,
"createdAt": "2026-03-06T10:00:00Z"
}
]
资料更新事件
UPDATE_NAME- 用户名变更(内容:新用户名字符串)UPDATE_DESCRIPTION- 简介更新(内容:新简介字符串)UPDATE_AVATAR- 头像变更(内容:新头像 URL 字符串)UPDATE_BANNER- 横幅图片变更(内容:新横幅 URL 字符串)
其他事件
TWEET_TOPPING- 推文置顶DELETE- 推文删除SYSTEM- 系统事件TRANSLATE- 推文翻译CA_CREATE- CA 代币创建
数据结构
Twitter 用户
{
"userId": "44196397",
"screenName": "elonmusk",
"name": "Elon Musk",
"description": "...",
"followersCount": 170000000,
"friendsCount": 500,
"statusesCount": 30000,
"verified": true
}
推文
{
"id": "1234567890",
"text": "推文内容...",
"createdAt": "2024-02-20T12:00:00Z",
"retweetCount": 1000,
"favoriteCount": 5000,
"replyCount": 200,
"userScreenName": "elonmusk",
"hashtags": ["crypto", "bitcoin"],
"urls": [{"url": "https://..."}]
}
其他客户端 — 手动安装(点击展开)
以下所有配置中,将
/path/to/twitter-mcp替换为本地项目实际路径,将<your-token>替换为从 https://6551.io/mcp 获取的 Token。
Claude Desktop
编辑配置文件(macOS:~/Library/Application Support/Claude/claude_desktop_config.json,Windows:%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"twitter": {
"command": "uv",
"args": ["--directory", "/path/to/twitter-mcp", "run", "twitter-mcp"],
"env": {
"TWITTER_TOKEN": "<your-token>"
}
}
}
}
Cursor
~/.cursor/mcp.json 或 设置 > MCP Servers:
{
"mcpServers": {
"twitter": {
"command": "uv",
"args": ["--directory", "/path/to/twitter-mcp", "run", "twitter-mcp"],
"env": {
"TWITTER_TOKEN": "<your-token>"
}
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"twitter": {
"command": "uv",
"args": ["--directory", "/path/to/twitter-mcp", "run", "twitter-mcp"],
"env": {
"TWITTER_TOKEN": "<your-token>"
}
}
}
}
Cline
VS Code 侧边栏 > Cline > MCP Servers > Configure,编辑 cline_mcp_settings.json:
{
"mcpServers": {
"twitter": {
"command": "uv",
"args": ["--directory", "/path/to/twitter-mcp", "run", "twitter-mcp"],
"env": {
"TWITTER_TOKEN": "<your-token>"
},
"disabled": false,
"autoApprove": []
}
}
}
Continue.dev
~/.continue/config.yaml:
mcpServers:
- name: twitter
command: uv
args:
- --directory
- /path/to/twitter-mcp
- run
- twitter-mcp
env:
TWITTER_TOKEN: <your-token>
Cherry Studio
设置 > MCP Servers > 添加 > 类型选 stdio:命令填 uv,参数填 --directory /path/to/twitter-mcp run twitter-mcp,环境变量填 TWITTER_TOKEN。
Zed 编辑器
~/.config/zed/settings.json:
{
"context_servers": {
"twitter": {
"command": {
"path": "uv",
"args": ["--directory", "/path/to/twitter-mcp", "run", "twitter-mcp"],
"env": {
"TWITTER_TOKEN": "<your-token>"
}
}
}
}
}
任意 stdio MCP 客户端
TWITTER_TOKEN=<your-token> \
uv --directory /path/to/twitter-mcp run twitter-mcp
兼容性
| 客户端 | 安装方式 | 状态 |
|---|---|---|
| Claude Code | claude mcp add |
一行命令 |
| OpenClaw | 复制 skill 目录 | 一行命令 |
| Claude Desktop | JSON 配置 | 已支持 |
| Cursor | JSON 配置 | 已支持 |
| Windsurf | JSON 配置 | 已支持 |
| Cline | JSON 配置 | 已支持 |
| Continue.dev | YAML / JSON | 已支持 |
| Cherry Studio | 图形界面 | 已支持 |
| Zed | JSON 配置 | 已支持 |
开发
cd /path/to/twitter-mcp
uv sync
uv run twitter-mcp
# MCP Inspector
npx @modelcontextprotocol/inspector uv --directory /path/to/twitter-mcp run twitter-mcp
项目结构
├── README.md
├── docs/
│ ├── README_JA.md # 日本語
│ └── README_KO.md # 한국어
├── openclaw-skill/opentwitter/ # OpenClaw Skill
├── pyproject.toml
├── config.json
└── src/twitter_mcp/
├── server.py # 入口点
├── app.py # FastMCP 实例
├── config.py # 配置加载器
├── api_client.py # HTTP 客户端
└── tools.py # 8 个工具
许可证
MIT