使用说明
XMCP
适用于X/Twitter的最全面的MCP服务器 基于权限的访问控制, 70+工具,以及 剧作家驱动的文章抓取.
亮点
- 70多种工具,涵盖研究、参与、出版、社交、列表、DM
- 具有运行时强制的权限配置文件
- X文章的剧作家驱动文章获取
- 全面参与度指标和线程支持
- 广泛的MCP客户端兼容性
快速开始
1.安装
pip install "xmcp[articles] @ git+https://github.com/vibeforge1111/xmcp.git"
python -m playwright install chromium
注:包名为 xmcp 服务器命令为 xmcp-server.
2.获取API密钥(必需)
XMCP需要X/Twitter API凭据才能运行。如果您看到有关缺少API密钥的错误, 遵循以下快速指南:
- 首选https://developer.twitter.com并登录。
- 创建一个项目和应用程序(或打开一个现有的)。
- 在“应用密钥和令牌”选项卡中,生成:
- API密钥和API机密
- 访问令牌和访问令牌密钥
- 持有者令牌
- 复制
.env.example到.env然后粘贴你的钥匙。
常见错误消息和修复:
- “缺少必需的环境变量”->将缺少的键添加到
.env或您的MCP配置。 - “403禁止”/“错误453”->您的X API访问层不包括该端点。
从获取您的凭据 developer.twitter.com:
- API密钥和秘密
- 访问令牌和密码
- 持有者令牌
您可以将它们存储在本地 .env 文件:
# Windows (PowerShell)
copy .env.example .env
# macOS/Linux
cp .env.example .env
不要承诺 .env默认情况下,它被忽略。
3.配置
添加到您的Claude设置(~/.claude.json):
{
"mcpServers": {
"xmcp": {
"type": "stdio",
"command": "xmcp-server",
"env": {
"TWITTER_API_KEY": "your_key",
"TWITTER_API_SECRET": "your_secret",
"TWITTER_ACCESS_TOKEN": "your_token",
"TWITTER_ACCESS_TOKEN_SECRET": "your_token_secret",
"TWITTER_BEARER_TOKEN": "your_bearer",
"X_MCP_PROFILE": "researcher"
}
}
}
}
如果您命名服务器 xmcp,工具将显示为 mcp__xmcp__* 在显示工具前缀的客户端中。
4.使用
"Search for tweets about AI" -> search_twitter
"Read this article: x.com/..." -> get_article (Playwright)
"Post: Hello world!" -> post_tweet (requires creator profile)
权限配置文件
选择要启用的功能:
| 简介 | 工具 | 用例 |
|---|---|---|
| 研究人员 | 23 | 监测、分析、研究(只读) |
| 创造者 | 41 | 内容创作、观众参与度 |
| 经理 | 55 | 全面账户管理 |
| 自动化 | 70 | 机器人,全自动化(包括DM) |
| 定制 | 变化 | 准确选择你需要的东西 |
设置个人资料
"env": {
"X_MCP_PROFILE": "creator"
}
权限在运行时进行评估。您可以在不重新启动服务器的情况下切换配置文件或组。
自定义配置文件
"env": {
"X_MCP_PROFILE": "custom",
"X_MCP_GROUPS": "research,engage,publish"
}
工具组
研究(18个工具)-只读,安全
搜索、用户查找、推特详细信息、时间线、趋势、, 文章提取
参与(9个工具)-低风险
喜欢,不喜欢,书签,转发,取消推特
发布(7个工具)-中等风险
发布推文、删除、引用、创建帖子、投票
社交(8种工具)-中高风险
关注、取消关注、阻止、取消阻止、静音、取消静音
对话(5个工具)-安全
获取完整帖子、回复、引用推文、隐藏/取消隐藏回复
列表(14个工具)-低风险
创建、删除、管理列表和成员
dms(3个工具)-高风险
发送和阅读直接消息
账户(1个工具)-高风险
获取经过身份验证的用户配置文件
关键工具
搜索与发现
| 工具 | 说明 |
|---|---|
search_twitter |
使用完整的参与度指标进行搜索 |
search_articles |
查找包含X篇文章的推文 |
get_trends |
全球热门话题 |
get_article |
获取文章内容(剧作家) |
用户和推特信息
| 工具 | 说明 |
|---|---|
get_user_by_screen_name |
用户@handle |
get_user_profile |
按ID和指标列出的用户 |
get_tweet_details |
完整推特信息 |
get_conversation |
完整线程 |
get_replies |
对推特的回复 |
参与
| 工具 | 说明 |
|---|---|
favorite_tweet |
喜欢 |
retweet |
转发 |
bookmark_tweet |
书签 |
quote_tweet |
带评论的引用 |
出版
| 工具 | 说明 |
|---|---|
post_tweet |
发布媒体、标签、回复 |
create_thread |
以帖子形式发布多条推文 |
create_poll_tweet |
创建投票 |
社交
| 工具 | 说明 |
|---|---|
follow_user / unfollow_user |
跟踪管理 |
block_user / unblock_user |
区块管理 |
mute_user / unmute_user |
静音管理 |
人在循环咨询
该MCP旨在改进研究和工作流程,而不是取代人类的判断。
发布工具返回 advisory 建议对帖子和回复进行人工审核的字段。
实时用例(无需额外遥测)
您可以通过从客户端或cron作业按计划轮询工具来驱动实时工作流。 常见模式:
- 每小时使用趋势快照
get_trends - 关键字监控使用
search_twitter - 文章跟踪使用
search_articles+get_article
这使服务器保持简单,同时仍能实现实时可见性。
文章获取
X文章需要JavaScript来呈现。 此MCP使用Playwright。
# Correct - uses Playwright internally
result = await get_article("https://x.com/user/status/123")
# Returns: {title, author, content, url}
# WRONG - will fail
WebFetch("https://x.com/...") # Returns empty content
设置
pip install playwright
python -m playwright install chromium
配置参考
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
X_MCP_PROFILE |
权限配置文件 | researcher |
X_MCP_GROUPS |
自定义配置文件组 | research |
X_MCP_DISABLED_TOOLS |
禁用工具 | 无 |
X_MCP_ENABLED_TOOLS |
强制启用工具 | 无 |
凭据在本地读取,仅用于对X/Twitter的请求进行身份验证。
例子
仅限研究(最安全):
"X_MCP_PROFILE": "researcher"
内容创建者:
"X_MCP_PROFILE": "creator"
自定义-仅限研究+点赞:
"X_MCP_PROFILE": "custom",
"X_MCP_GROUPS": "research,engage",
"X_MCP_DISABLED_TOOLS": "retweet,unretweet"
运行时权限
权限在运行时进行评估。这意味着您可以:
- 在不重新启动服务器的情况下切换配置文件或组
- 在HTTP模式下为每个请求使用不同的配置文件
错误响应
错误返回一致的信封:
{
"ok": false,
"error": {
"type": "rate_limit_exceeded",
"message": "Rate limit exceeded",
"status": 429,
"details": {
"action_type": "tweet_actions",
"retry_after_seconds": 10
}
},
"tool": "post_tweet",
"timestamp": "2026-02-03T12:00:00+00:00"
}
速率限制
内置保护:
| 动作 | 限制 | 窗口 |
|---|---|---|
| 推特 | 300 | 15分钟 |
| 喜欢 | 1000 | 24小时 |
| 后续 | 400 | 24小时 |
| DM | 1000 | 15分钟 |
注:这些限制是当地的护栏,而不是官方的Twitter API限制。
局限性
get_user_followers_you_know和get_highlights_tweets使用可用的API数据进行模拟vote_on_poll回报not_supported因为API不支持程序化投票- 文章获取需要Playwright和Chromium安装
兼容客户端
使用 所有主要MCP客户。参见 兼容性.md 获取完整的设置指南。
| 客户端 | 配置位置 | 状态 |
|---|---|---|
| 克劳德桌面版 | ~/.claude.json |
原住民 |
| 克劳德代码 | CLAUDE.md |
原住民 |
| 光标 | .cursorrules |
原住民 |
| 克莱恩 | .clinerules |
原住民 |
| 帆板运动 | .windsurfrules |
原住民 |
| Continue.dev | .continue/mcpServers/ |
原住民 |
| 开爪 | ~/.openclaw/skills/ |
原住民 |
| 泽德 | .zed/settings.json |
原住民 |
| ChatGPT桌面 | ~/.chatgpt/mcp.json |
原住民 |
| 源代码图科迪 | OpenCTX | 本机 |
| Firebase Genkit | genkitx mcp插件 | 插件 |
| 塔尔 | taal.yaml (全部同步) |
同步 |
| VS代码+OpenMCP | 扩展设置 | 插件 |
| Ollama+继续 | 继续配置 | 本机 |
预制配置文件
中的即用配置 configs/ 目录:
configs/
|-- continue.yaml # Continue.dev (YAML)
|-- continue.json # Continue.dev (JSON)
|-- openclaw-skill.yaml # OpenClaw skill
|-- zed-settings.json # Zed editor
|-- chatgpt-mcp.json # ChatGPT Desktop
|-- taal.yaml # Taal cross-client sync
|-- sourcegraph-openctx.json # Sourcegraph Cody
|-- genkit-plugin.ts # Firebase Genkit
`-- vscode-openmcp.json # VS Code OpenMCP
对于AI代理
此软件包包括用于AI代码编辑器的规则文件:
| 文件 | 编辑器 |
|---|---|
.cursorrules |
光标 |
.clinerules |
克莱恩 |
.windsurfrules |
风帆冲浪 |
CLAUDE.md |
克劳德代码 |
LLM_CONTEXT.md |
任何LLM(复制到提示符) |
docs/AGENT_RULES.md |
综合规则 |
关键规则: 使用 get_article 对于X个URL,不是WebFetch。
HTTP服务器模式
对于云部署:
xmcp-http # Runs on port 8081
PORT=8080 xmcp-http # Custom port
安装选项
来自GitHub(推荐)
pip install "xmcp[articles] @ git+https://github.com/vibeforge1111/xmcp.git"
来自PyPI(发布时)
pip install xmcp[articles]
来源
git clone https://github.com/vibeforge1111/xmcp.git
cd xmcp
pip install -e .[articles]
python -m playwright install chromium
文档
| 文档 | 描述 |
|---|---|
| README.md | 此文件-完整文档 |
| QUICKSTART.md | 5分钟设置指南 |
| CLAUDE.md | AI代理说明 |
| LLM_CONTEXT.md | LLM提示的上下文块 |
| docs/AGENT_RULES.md | 所有AI编辑的规则 |
学分
基于Rafal Janicki的上游项目:
https://github.com/rafaljanicki/x-twitter-mcp-server
更新日志
看 CHANGELOG.md 以获取XMCP中增强功能的摘要。
增强通过 VibeShip 与:
- 基于权限的访问控制(5个配置文件,8个组)
- 70+工具(原始约20个)
- 剧作家文章抓取
- 线程创建和读取
- 完整列表、DM、社交活动
- 全面的参与度指标
- AI代理文档
许可证
MIT许可证-请参阅 许可证