Twitter读取MCP服务器
用于读取Twitter/X参与数据和指标的MCP(模型上下文协议)服务器。使AI代理能够衡量推文性能、跟踪提及、分析回复,并使用参与度指标搜索推文。
特性
- 获取推特指标:获取任何推文的点赞、转发、回复、引用、书签和展示
- 获取提及:使用参与度数据检索最近的@提及
- 获取回复:使用指标访问特定推文的所有回复
- 搜索推文:在推特上搜索参与度指标
- 内置速率限制:强制执行Twitter API限制(每15分钟500个请求)
- OAuth 2.0支持:与Twitter API v2身份验证兼容
安装
先决条件
- Node.js 18或更高版本
- Twitter API证书(承载令牌或API密钥+机密)
来源
git clone
cd twitter-read-mcp
npm install
npm run build来自npm(未来)
npm install -g @polsia/twitter-read-mcp配置
Twitter API证书
您需要访问Twitter API。从获取凭据 Twitter开发者门户:
- 创建Twitter开发者帐户
- 创建新应用程序
- 生成凭据
环境变量
创建 .env 文件或设置环境变量:
# Option 1: Bearer Token (recommended for read-only access)
TWITTER_BEARER_TOKEN=your_bearer_token_here
# Option 2: API Key + Secret (for OAuth 2.0)
TWITTER_API_KEY=your_api_key_here
TWITTER_API_SECRET=your_api_secret_here备注:承载令牌对于只读操作更简单。API密钥+密钥是用户文本操作所必需的,如获得自己的提及。
MCP配置
添加到您的MCP设置文件中(例如,Claude Desktop配置):
{
"mcpServers": {
"twitter-read": {
"command": "twitter-read-mcp",
"env": {
"TWITTER_BEARER_TOKEN": "your_bearer_token_here"
}
}
}
}或者,如果从源代码安装:
{
"mcpServers": {
"twitter-read": {
"command": "node",
"args": ["/path/to/twitter-read-mcp/build/index.js"],
"env": {
"TWITTER_BEARER_TOKEN": "your_bearer_token_here"
}
}
}
}用法
可用工具
1. get_tweet_metrics
获取特定推文的参与度指标。
参数:
tweet_id(必填):推特的ID
退货:
{
"tweet_id": "1234567890",
"text": "Tweet content here",
"created_at": "2026-01-25T00:00:00.000Z",
"author_id": "1234567890",
"metrics": {
"likes": 42,
"retweets": 8,
"replies": 5,
"quotes": 2,
"bookmarks": 10,
"impressions": 5000
},
"requestsRemaining": 498
}例子:
Get metrics for tweet 18821634084765126032. get_mentions
获取您帐户的最近@提及。
参数:
since_date(可选):ISO 8601日期(例如,“2026-01-20T00:00:00Z”)max_results(可选):返回的提及次数(5-100,默认值:10)
退货:
{
"mentions": [
{
"tweet_id": "1234567890",
"text": "@yourhandle great work!",
"created_at": "2026-01-25T00:00:00.000Z",
"author_id": "9876543210",
"metrics": {
"likes": 5,
"retweets": 1,
"replies": 0,
"quotes": 0
}
}
],
"count": 1,
"requestsRemaining": 497
}例子:
Show me mentions from the last 24 hours3. get_replies
获取特定推文的所有回复。
参数:
tweet_id(必填):推特的IDmax_results(可选):返回的回复数(5-100,默认值:10)
退货:
{
"replies": [
{
"tweet_id": "1234567891",
"text": "This is a reply",
"created_at": "2026-01-25T01:00:00.000Z",
"author_id": "9876543210",
"metrics": {
"likes": 2,
"retweets": 0,
"replies": 1,
"quotes": 0
}
}
],
"count": 1,
"requestsRemaining": 496
}例子:
Get all replies to tweet 18821634084765126034. search_tweets
搜索与查询和参与度指标相匹配的推文。
参数:
query(必填):搜索查询(支持 推特搜索运营商)max_results(可选):要返回的推文数量(10-100,默认值:10)start_time(可选):最早推特的ISO 8601日期
退货:
{
"tweets": [
{
"tweet_id": "1234567890",
"text": "Tweet matching your query",
"created_at": "2026-01-25T00:00:00.000Z",
"author_id": "1234567890",
"metrics": {
"likes": 100,
"retweets": 20,
"replies": 10,
"quotes": 5
}
}
],
"count": 1,
"query": "from:polsiaHQ",
"requestsRemaining": 495
}例子:
Search for tweets from @polsiaHQ in the last week速率限制
服务器强制执行Twitter API v2速率限制:
- 每15分钟窗口500个请求
- 每个工具响应包括
requestsRemaining领域 - 超出限制的请求返回速率限制错误
发展
建筑
npm run build观看模式
npm run watch本地测试
直接运行MCP服务器:
export TWITTER_BEARER_TOKEN=your_token
npm run dev服务器通过stdio进行通信,因此您需要一个MCP客户端与之交互。
建筑
- 语言:TypeScript
- MCP-SDK:
@modelcontextprotocol/sdkv1.x - Twitter客户端:
twitter-api-v2用于Twitter API v2 - 运输:stdio(标准MCP传输)
- 认证:承载令牌或OAuth 2.0 PKCE
错误处理
所有工具都返回结构化错误响应:
{
"error": "Error message",
"code": "ERROR_CODE",
"requestsRemaining": 499
}常见错误:
Rate limit exceeded:15分钟窗口内的请求太多Missing Twitter API credentials:未设置环境变量Invalid tweet ID:推特不存在或为私人推特Search query too complex:简化您的搜索查询
贡献
该项目是Polsia生态系统的一部分。欢迎投稿!
- 克隆该仓库
- 创建要素分支
- 进行更改
- 提交拉取请求
路线图
- \[\]用于用户身份验证的OAuth 2.0 PKCE流
- \[\]频繁访问推文的缓存层
- \[\]多条推文的批处理操作
- \[\]历史数据提取(7天窗口)
- \[\]用户配置文件指标
- \[\]列出管理工具
许可证
MIT许可证-有关详细信息,请参阅许可证文件
支持
- 文档: Twitter API v2文档
- MCP规范: 模型上下文协议
- 问题:在GitHub上报告错误和功能请求
学分
由Polsia构建,用于衡量推特/X上的营销绩效。由Anthropic的模型上下文协议提供支持。
