关于 X (Twitter) MCP Server
这是一个通过 X API 让 MCP 客户端执行社交平台操作的服务器,面向需要在对话中管理 X 内容和账号的用户。它涵盖发帖、搜索、个人资料、关注关系及列表管理。
主要功能
- 01发布和搜索帖子
- 02读取用户资料
- 03更新个人资料
- 04关注或取消关注用户
- 05管理用户列表
适用场景
- 01从 MCP 客户端发布 X 内容
- 02按关键词查找帖子
- 03查看或修改账号资料
- 04整理关注者及列表
MCP 相关
该服务器以 stdio 运行,通过 MCP 工具向客户端提供 X API 操作,包括发帖、搜索、账号管理和列表管理。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
X(Twitter)MCP 服务
此 MCP 服务允许客户端与 X(原 Twitter)交互,支持全面的平台操作,包括发布推文、搜索内容、管理账号和整理列表。
快速开始
- 创建 X 开发者账号,并从 X 开发者门户获取 API 密钥
- 克隆此仓库:
git clone https://github.com/Dishant27/twitter-mcp.git - 安装依赖并构建:
npm install && npm run build - 设置 API 密钥,可通过环境变量设置,也可写入
.env文件(将.env.example复制为.env并填写相应值;.env已加入 git 忽略列表,因此切勿提交) - 运行服务:
- 使用环境变量:
TWITTER_API_KEY=your_api_key \
TWITTER_API_SECRET=your_api_secret \
TWITTER_ACCESS_TOKEN=your_access_token \
TWITTER_ACCESS_TOKEN_SECRET=your_access_token_secret \
npm start
- 使用
.env文件:
cp .env.example .env
# edit .env with your own keys, then:
npm start
- 配合 MCP 客户端使用,例如 Claude。
Claude 配置
要将此服务与 Claude 配合使用,需要设置 MCP 配置。以下是配置结构示例:
{
"name": "x",
"display_name": "X",
"description": "X MCP allows Claude to interact with X (formerly Twitter)",
"path": "path/to/twitter-mcp/dist/index.js",
"startup": {
"env": {
"TWITTER_API_KEY": "your_api_key",
"TWITTER_API_SECRET": "your_api_secret",
"TWITTER_ACCESS_TOKEN": "your_access_token",
"TWITTER_ACCESS_TOKEN_SECRET": "your_access_token_secret"
}
},
"transport": "stdio"
}
将此配置保存到 Claude MCP 配置目录,通常位于:
- Windows:
%APPDATA%\AnthropicClaude\mcp-servers - macOS:
~/Library/Application Support/AnthropicClaude/mcp-servers - Linux:
~/.config/AnthropicClaude/mcp-servers
功能
发布操作
- 发布内容(最多 280 个字符)
- 按查询条件搜索帖子,并自定义结果数量
账号管理
- 获取任意用户或已认证账号的个人资料信息
- 更新个人资料详情(姓名、简介、位置、网站 URL)
- 关注和取消关注用户
- 列出任意用户或已认证账号的关注者
- 列出用户关注的账号
列表管理
- 创建新列表(公开或私密)
- 获取特定列表的信息
- 获取已认证用户拥有的所有列表
可用的 MCP 工具
| 工具名称 | 描述 |
|---|---|
post_tweet | 在 X 上发布新内容 |
search_tweets | 搜索 X 上的内容 |
get_profile | 获取用户或已认证账号的个人资料信息 |
update_profile | 更新已认证用户的个人资料 |
follow_user | 关注用户 |
unfollow_user | 取消关注用户 |
list_followers | 列出用户或已认证账号的关注者 |
list_following | 列出用户或已认证账号关注的账号 |
create_list | 创建新列表 |
get_list_info | 获取列表信息 |
get_user_lists | 获取已认证用户拥有的所有列表 |
要求
- Node.js 18.x 或更高版本
- 拥有 API 密钥的 X 开发者账号
- API v1 和 v2 访问权限
基于 @modelcontextprotocol/sdk 1.x 构建(采用 McpServer / registerTool API 和 zod 输入架构)。服务通过 stdio 运行,因此 stdout 专用于 MCP 协议,所有日志均输出到 stderr。
环境变量
| 变量 | 描述 |
|---|---|
TWITTER_API_KEY | API 密钥 |
TWITTER_API_SECRET | API 密钥密文 |
TWITTER_ACCESS_TOKEN | 访问令牌 |
TWITTER_ACCESS_TOKEN_SECRET | 访问令牌密文 |
四项均为必填;如果缺少任何一项,服务将在启动时退出。请参阅 .env.example。
开发
npm run build # compile TypeScript to dist/
npm run smoke # start the built server with placeholder keys and check it lists its 11 tools (no X API calls)
CI(.github/workflows/ci.yml)会在推送到 master 分支以及针对该分支的拉取请求中运行 npm ci、类型检查、构建和冒烟测试。
仓库结构
twitter-mcp/
├── .github/
│ └── workflows/
│ └── ci.yml # Build + smoke test
├── code/
│ ├── account_management.py # Sample Python code for account management
│ ├── post_tweet.py # Sample Python code for posting content
│ └── retrieve_tweets.py # Sample Python code for retrieving content
├── src/
│ ├── index.ts # Main entry point (MCP server and tools)
│ ├── twitter-api.ts # X API client
│ ├── formatter.ts # Response formatter
│ └── types.ts # Type definitions
├── test/
│ └── smoke.mjs # Stdio smoke test
├── .env.example
├── .gitignore
├── LICENSE
├── package.json
├── package-lock.json
├── README.md
└── tsconfig.json
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。