X Mcp Server

X Mcp Server

🚀 X MCP 服务器

X MCP 服务器是一个基于模型上下文协议(MCP)的服务器,用于向 X(原 Twitter)发布推文,并与 X API 进行交互。

✨ 主要特性

  • 发布推文:创建并向 X(原 Twitter)发布推文。
  • 获取用户时间线:检索你最近发布的推文。
  • 搜索推文:使用查询语句搜索推文。
  • 回复推文:回复已有的推文。
  • 错误处理:具备全面的错误处理和验证机制。

📦 安装指南

前提条件

  1. X 开发者账户:你需要拥有一个 Twitter/X 开发者账户。
  2. Node.js:版本 18 或更高。

安装步骤

  1. 克隆项目并安装依赖

    npm install
    
  2. 配置环境变量

    cp env.example .env
    

    编辑 .env 文件,并添加你的 X API 凭证:

    X_API_KEY=your_api_key_here
    X_API_SECRET=your_api_secret_here
    X_ACCESS_TOKEN=your_access_token_here
    X_ACCESS_TOKEN_SECRET=your_access_token_secret_here
    
  3. 构建项目

    npm run build
    

💻 使用示例

启动服务器

# 开发模式
npm run dev

# 生产模式
npm start

可用工具

服务器提供以下工具:

1. post_tweet

向 X 发布一条新推文。

参数

  • text(必填):推文内容(最多 280 个字符)。
  • reply_to_tweet_id(可选):要回复的推文 ID。

示例

{
"text": "Hello, world! This is my first tweet via MCP! 🚀",
"reply_to_tweet_id": "1234567890123456789"
}

2. get_user_timeline

获取你最近的推文。

参数

  • count(可选):要检索的推文数量(默认值:10,最大值:100)。

示例

{
"count": 5
}

3. search_tweets

使用查询语句搜索推文。

参数

  • query(必填):搜索查询语句。
  • count(可选):结果数量(默认值:10,最大值:100)。

示例

{
"query": "MCP protocol",
"count": 20
}

MCP 客户端配置

要将此服务器与 MCP 客户端配合使用,请将其添加到你的客户端配置中:

{
"mcpServers": {
"x-server": {
"command": "node",
"args": ["dist/index.js"],
"env": {
"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"
}
}
}
}

🔧 技术细节

项目结构

x-mcp-server/
├── src/
│   └── index.ts          # 主服务器实现
├── dist/                 # 编译后的 JavaScript 文件(自动生成)
├── package.json          # 依赖项和脚本
├── tsconfig.json         # TypeScript 配置
├── env.example           # 环境变量模板
└── README.md            # 当前文件

脚本命令

  • npm run build:将 TypeScript 代码编译为 JavaScript。
  • npm start:运行编译后的服务器。
  • npm run dev:在开发模式下运行,并支持热重载。
  • npm test:运行测试(待实现)。

错误处理

服务器包含全面的错误处理机制,可处理以下情况:

  • 缺少 API 凭证。
  • 无效的推文内容(长度、格式)。
  • API 速率限制。
  • 网络错误。
  • 无效的参数。

安全注意事项

  • 切勿将 .env 文件提交到版本控制系统。
  • 妥善保管你的 API 凭证。
  • 对所有敏感数据使用环境变量。
  • 考虑使用 .gitignore 文件排除敏感文件。

🤝 贡献指南

  1. 分叉此仓库。
  2. 创建一个功能分支。
  3. 进行更改。
  4. 如有必要,添加测试。
  5. 提交拉取请求。

📄 许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

🛠️ 支持与帮助

若遇到问题或有疑问,请按以下步骤操作:

  1. 查看错误消息,排查常见问题。
  2. 验证你的 API 凭证是否正确。
  3. 确保你拥有必要的 X API 权限。
  4. 查阅 X API 文档,了解速率限制和限制条件。
  • 0 关注
  • 0 收藏,7 浏览
  • system 提出于 2025-09-28 11:42

相似服务问题