CrazyrabbitLTC_mcp Twitter Server

CrazyrabbitLTC_mcp Twitter Server

🚀 Twitter MCP 服务器

这是一个用于 Twitter API 集成的 Model Context Protocol 服务器实现,借助它可以方便地与 Twitter API 进行交互,实现多种推文、用户相关操作。

🚀 快速开始

环境准备

在开始使用本服务器前,请确保你已经安装了 npmnode.js

安装与配置步骤

  1. 克隆仓库到本地。
  2. 安装项目所需依赖,在项目根目录下执行命令:npm install
  3. 复制 .env.example 文件为 .env,并在 .env 文件中填写你的 Twitter API 凭证信息。
  4. 构建项目,执行命令:npm run build
  5. 启动服务器,执行命令:npm start

📦 安装指南

环境变量配置

.env 文件中,你需要填写必需的 Twitter API 凭证,具体如下:

X_API_KEY=your_api_key
X_API_SECRET=your_api_secret
X_ACCESS_TOKEN=your_access_token
X_ACCESS_TOKEN_SECRET=your_access_token_secret

💻 使用示例

基础用法

本服务器提供了丰富的工具来实现各种 Twitter 操作,以下是部分常用工具的使用示例。

推文操作

  • 发布一条新的推文 使用 postTweet 工具,示例请求如下:
{
"text": "你的推文内容"
}
  • 带有媒体附件的推文 使用 postTweetWithMedia 工具,示例请求如下:
{
"text": "你的推文内容",
"mediaPath": "媒体文件路径",
"mediaType": "image/jpeg|image/png|image/gif|video/mp4",
"altText": "可选的描述性文字(用于辅助功能)"
}
  • 通过 ID 获取推文 使用 getTweetById 工具,示例请求如下:
{
"id": "推文ID"
}
  • 删除指定的推文 使用 deleteTweet 工具,示例请求如下:
{
"id": "推文ID"
}

用户操作

  • 获取当前用户资料信息 使用 getUserProfile 工具,示例请求如下:
{
"userId": "目标用户 ID(可选,默认为当前用户)"
}
  • 更新用户资料信息 使用 updateUserProfile 工具,示例请求如下:
{
"name": "新用户名",
"username": "新用户名字",
"bio": "新的个人简介",
"location": "新位置信息",
"url": "新的网址链接"
}

关注与被关注

  • 关注指定用户 使用 followUser 工具,示例请求如下:
{
"userId": "要关注的用户 ID"
}
  • 取消关注指定用户 使用 unfollowUser 工具,示例请求如下:
{
"userId": "要取消关注的用户 ID"
}

搜索与分析

  • 搜索符合条件的推文 使用 searchTweets 工具,示例请求如下:
{
"query": "搜索关键词或短语",
"maxResults": "最多返回的结果数(可选,默认为10)"
}
  • 获取指定话题的趋势数据 使用 getTopicTrend 工具,示例请求如下:
{
"topic": "要查询的话题名称"
}

列表管理

  • 创建一个新的列表 使用 createList 工具,示例请求如下:
{
"listName": "新列表的名称",
"mode": "public|private"  // 列表访问权限,可选 public 或 private,默认为 public
}
  • 将用户添加到指定列表中 使用 addToList 工具,示例请求如下:
{
"listId": "目标列表 ID",
"userId": "要添加的用户 ID"
}
  • 从指定列表中移除用户 使用 removeFromList 工具,示例请求如下:
{
"listId": "目标列表 ID",
"userId": "要移除的用户 ID"
}
  • 获取指定列表的所有成员信息 使用 getListMembers 工具,示例请求如下:
{
"listId": "目标列表 ID",
"maxResults": "最多返回的结果数(可选,默认为10)"
}

高级用法

本服务器的所有工具都遵循统一的错误处理和响应格式,方便开发者进行集成和调试。

错误处理

所有工具都返回统一的标准错误响应:

  • 缺少参数:缺少必需的参数:parameter_name
  • API 错误:Twitter API 返回的错误信息
  • 资源未找到:相应的“未找到”消息,针对具体资源

响应格式

所有成功的响应均采用以下格式:

{
"content": [
{
"type": "text",
"text": "操作结果信息"
}
]
}

📚 详细文档

开发指南

在开发过程中,你可以使用以下命令来构建、启动和调试项目:

  • 构建项目:npm run build
  • 启动服务器:npm start
  • 开启调试模式:npm run dev
  • 0 关注
  • 0 收藏,7 浏览
  • system 提出于 2025-09-28 11:39

相似服务问题