返回市场
X.COM-MCP服务器

X.COM-MCP服务器

作者:tiovikram4 星标更新:2025-06-04

项目介绍

X.com MCP Server

这是一个提供访问X.com API功能的Model Context Protocol服务器。该服务器通过OAuth 2.0认证使LLMs能够与X.com(前身为Twitter)进行交互,支持所有主要的帖子相关操作,包括阅读、撰写、搜索和管理帖子、点赞、转发和书签。

功能

  • OAuth 2.0 认证 - 安全的Bearer令牌认证
  • 完整的帖子API覆盖 - 包括官方API中的所有X.com帖子端点
  • 类型安全 - 使用Zod验证的完整TypeScript实现
  • 全面的工具 - 覆盖所有主要X.com操作的21个工具

可用工具

查找

  • getSinglePost - 根据ID检索单个帖子,可选字段扩展
  • getBulkPosts - 根据ID检索最多100个帖子

管理帖子

  • createPost - 创建带有文本、媒体、投票、回复等的新帖子
  • deletePost - 根据ID删除帖子
  • hideReply - 隐藏或取消隐藏对帖子的回复

时间线

  • getUserTimeline - 获取用户的帖子时间线
  • getUserMentions - 获取提及特定用户的帖子

搜索

  • searchRecent - 搜索最近的帖子(过去7天)
  • searchAll - 搜索所有帖子(完整档案 - 需要学术/企业访问权限)

帖子计数

  • getPostCountsRecent - 获取最近帖子的时间桶计数
  • getPostCountsAll - 获取所有帖子的时间桶计数(学术/企业)

转发

  • getRetweets - 获取转发特定帖子的帖子
  • createRetweet - 转发帖子
  • deleteRetweet - 删除转发

点赞

  • getLikingUsers - 获取喜欢特定帖子的用户
  • getLikedTweets - 获取用户已点赞的帖子
  • likePost - 点赞帖子
  • unlikePost - 取消点赞帖子

书签

  • getUserBookmarks - 获取用户的书签帖子
  • bookmarkPost - 书签帖子
  • removeBookmark - 移除书签

安装

使用pnpm(推荐)

pnpm install
pnpm run build

安装后,可以使用以下命令运行:

node dist/index.js

使用Docker

docker build -t x.com-mcp .
docker run -i --rm -e X_COM_ACCESS_TOKEN=your-access-token x.com-mcp

配置

环境变量

  • X_COM_ACCESS_TOKEN(必需):您的X.com OAuth 2.0访问令牌

认证设置

  1. developer.x.com创建一个X.com开发者账户
  2. 创建一个新的项目和应用
  3. 生成OAuth 2.0凭证
  4. 实现OAuth 2.0授权码PKCE流程
  5. 将生成的访问令牌存储为X_COM_ACCESS_TOKEN

配置Claude.app

在您的Claude设置中添加:

<details> <summary>使用pnpm</summary>
"mcpServers": {
  "x-com": {
    "command": "node",
    "args": ["dist/index.js"],
    "env": {
      "X_COM_ACCESS_TOKEN": "your-access-token"
    }
  }
}
</details> <details> <summary>使用Docker</summary>
"mcpServers": {
  "x-com": {
    "command": "docker",
    "args": ["run", "-i", "--rm", "-e", "X_COM_ACCESS_TOKEN=your-access-token", "x.com-mcp"]
  }
}
</details>

示例交互

  1. 创建帖子:
{
  "name": "createPost",
  "arguments": {
    "text": "Hello world! 这是我通过MCP服务器发布的第一个帖子。",
    "reply_settings": "everyone"
  }
}
  1. 搜索近期帖子:
{
  "name": "searchRecent",
  "arguments": {
    "query": "人工智能",
    "max_results": 10,
    "tweet.fields": "created_at,author_id,public_metrics"
  }
}
  1. 获取用户时间线:
{
  "name": "getUserTimeline",
  "arguments": {
    "id": "123456789",
    "max_results": 20,
    "expansions": "author_id"
  }
}
  1. 点赞帖子:
{
  "name": "likePost",
  "arguments": {
    "user_id": "123456789",
    "tweet_id": "987654321"
  }
}
  1. 获取帖子计数:
{
  "name": "getPostCountsRecent",
  "arguments": {
    "query": "机器学习",
    "granularity": "day"
  }
}

API端点覆盖

此服务器实现了X.com API v2规范中的所有帖子相关端点:

  • 查找/2/tweets/:id/2/tweets
  • 管理帖子/2/tweets(POST),/2/tweets/:id(DELETE),/2/tweets/:id/hidden(PUT)
  • 时间线/2/users/:id/tweets/2/users/:id/mentions
  • 搜索/2/tweets/search/recent/2/tweets/search/all
  • 帖子计数/2/tweets/counts/recent/2/tweets/counts/all
  • 转发/2/tweets/:id/retweets/2/users/:id/retweets
  • 点赞/2/tweets/:id/liking_users/2/users/:id/liked_tweets/2/users/:id/likes
  • 书签/2/users/:id/bookmarks

所需范围

确保您的X.com应用具有以下OAuth 2.0范围:

  • tweet.read - 阅读帖子和用户信息
  • tweet.write - 创建和删除帖子
  • tweet.moderate.write - 隐藏/取消隐藏回复
  • users.read - 阅读用户信息
  • like.read - 阅读点赞信息
  • like.write - 点赞和取消点赞帖子
  • bookmark.read - 阅读书签
  • bookmark.write - 创建和删除书签

调试

您可以使用MCP检查器来调试服务器:

npx @modelcontextprotocol/inspector node dist/index.js

Claude示例问题

  1. "你能搜索关于人工智能的近期帖子吗?"
  2. "创建一篇关于TypeScript优势的文章。"
  3. "找到提到机器学习的帖子并显示它们的互动指标。"
  4. "获取我的近期书签并分析主题。"

构建

# 安装依赖
pnpm install

# 构建TypeScript
pnpm run build

# 启动服务器
pnpm start

请求限制

请注意X.com API请求限制:

  • 大多数读取操作:每15分钟300次请求
  • 写入操作:每15分钟50次请求
  • 书签操作:写入50次/读取180次,每15分钟

详细请求限制信息,请参阅X.com API文档