Twitter多功能控制协议服务器

XMCP是一个基于权限控制的Twitter多功能服务器,提供70+工具支持研究、内容发布和社交管理,适用于自动化工作流和数据分析。

  • by vibeforge1111
  • Python
  • 本地部署
  • 19 星标
  • 更新于
在 GitHub 查看 vibeforge1111/xmcp

使用说明

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密钥的错误, 遵循以下快速指南:

  1. 首选https://developer.twitter.com并登录。
  2. 创建一个项目和应用程序(或打开一个现有的)。
  3. 在“应用密钥和令牌”选项卡中,生成:
    • API密钥和API机密
    • 访问令牌和访问令牌密钥
    • 持有者令牌
  4. 复制 .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许可证-请参阅 许可证