mcpField
T
Twitter Client MCP

Twitter Client MCP

本地服务
github.com/mzkrasner社交媒体672 周前更新

关于 Twitter Client MCP

这是一个通过 `agent-twitter-client` 库向客户端提供 Twitter 操作的 MCP 服务,涵盖资料、推文、搜索和关注关系,并包含凭据保护机制。

主要功能

  1. 01获取用户资料和推文
  2. 02发布、点赞和转推
  3. 03搜索推文与用户资料
  4. 04查看粉丝和关注列表
  5. 05关注用户
  6. 06隔离并清理凭据

适用场景

  1. 01搜索推文或 Twitter 用户资料
  2. 02发布推文或与推文互动
  3. 03查看用户的粉丝和关注列表

MCP 相关

向 MCP 客户端提供 Twitter 资料、推文、搜索和关系操作工具。服务端加载凭据,并避免其进入日志或被 LLM 访问。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"twitter-client": {
"command": "npx",
"args": [
"-y",
"github:mzkrasner/twitter-client-mcp"
],
"env": {
"TWITTER_USERNAME": "<TWITTER_USERNAME>",
"TWITTER_PASSWORD": "<TWITTER_PASSWORD>",
"TWITTER_EMAIL": "<TWITTER_EMAIL>"
}
}
}
}
启动命令npx -y github:mzkrasner/twitter-client-mcp
需要配置的环境变量
TWITTER_USERNAME
TWITTER_PASSWORD密钥
TWITTER_EMAIL

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgithub:mzkrasner/twitter-client-mcp

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Twitter 客户端 MCP

一个模型上下文协议(MCP)服务,通过 agent-twitter-client 库提供对 Twitter 功能的安全访问。

功能

Twitter 客户端 MCP 提供以下功能:

  • 个人资料操作

    • 根据用户名获取个人资料信息
    • 获取已认证用户的个人资料
  • 推文操作

    • 根据 ID 获取指定推文
    • 获取用户的推文
    • 发布新推文
    • 点赞推文
    • 转推推文
  • 搜索操作

    • 搜索推文
    • 搜索个人资料
  • 关系操作

    • 获取用户的关注者
    • 获取用户关注的账号
    • 关注用户

安全 ⚠️

重要:保护 TWITTER 凭据

此 MCP 服务需要 Twitter 凭据才能运行。为保护这些敏感凭据:

  1. 切勿分享您的凭据
  2. 切勿运行会显示您凭据的命令
  3. 未经您批准,切勿允许大模型直接执行 shell 命令
多层保护

此服务实现了多层安全保护,以确保您的凭据安全:

1. 凭据隔离
  • 仅在初始化期间加载您的凭据
  • 加载后,立即从环境变量中移除凭据
  • 绝不会将凭据记录到日志或传输给大模型
2. 内存保护
  • 使用 sodium-native 安全分配内存
  • 锁定内存,防止交换到磁盘
  • 使用后将内存缓冲区清零
3. 防止未经授权的访问
  • 安全处理环境变量
  • 严格验证必需的环境变量
  • 对控制台输出进行清理,防止泄露机密信息

设置

  1. 克隆代码库
  2. 安装依赖项:
    npm install
    
  3. 构建项目:
    npm run build
    

必需的环境变量

Twitter 客户端 MCP 需要以下环境变量:

TWITTER_USERNAME=your_username
TWITTER_PASSWORD=your_password
[email protected]

您也可以添加 Twitter API v2 凭据,以使用高级功能:

TWITTER_API_KEY=your_api_key
TWITTER_API_SECRET_KEY=your_api_secret
TWITTER_ACCESS_TOKEN=your_access_token
TWITTER_ACCESS_TOKEN_SECRET=your_access_secret

工具

此服务提供以下 MCP 工具:

工具名称描述参数
profileByUsername根据用户名获取 Twitter 个人资料username:字符串
myProfile获取已认证用户的个人资料check:布尔值
getTweet根据 ID 获取指定推文tweetId:字符串
getUserTweets获取 Twitter 用户的推文username:字符串,count?:数字
sendTweet发布新推文text:字符串,inReplyToId?:字符串
likeTweet点赞推文tweetId:字符串
retweet转推推文tweetId:字符串
searchTweets搜索推文query:字符串,count?:数字,searchMode?:字符串('top'、'latest'、'photos'、'videos')
searchProfiles搜索 Twitter 个人资料query:字符串,count?:数字
getFollowers获取关注某个 Twitter 用户的用户列表username:字符串,count?:数字
getFollowing获取某个 Twitter 用户关注的账号列表username:字符串,count?:数字
followUser关注 Twitter 用户username:字符串

用法

本地运行
# Start the server with environment variables
TWITTER_USERNAME=your_username TWITTER_PASSWORD=your_password [email protected] npm start
添加到 Cursor

如需将此 MCP 服务添加到 Cursor:

  1. 在 Cursor 中,前往 Settings > MCP Servers
  2. 点击 "Add Server"
  3. 使用以下设置配置服务:
    • 名称:Twitter Client MCP(或您喜欢的任意名称)
    • 类型:command
    • 命令:node
    • 参数:/path/to/twitter-client-mcp/dist/index.js(替换为您的实际路径)
    • 环境变量:
      • TWITTER_USERNAME:您的 Twitter 用户名
      • TWITTER_PASSWORD:您的 Twitter 密码
      • TWITTER_EMAIL:您的 Twitter 邮箱
      • 您想要设置的任何其他变量
  4. 点击 "Save"
使用 NPX(推荐)

您也可以使用 npx 直接从 GitHub 运行 MCP 服务:

TWITTER_USERNAME=your_username TWITTER_PASSWORD=your_password [email protected] npx -y github:mzkrasner/twitter-client-mcp
在 Cursor 配置中使用环境变量

为提高安全性和易用性,请通过主目录中的 .cursor/mcp.json 文件配置 Cursor:

{
  "mcpServers": {
    "twitter-client-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "github:mzkrasner/twitter-client-mcp"
      ],
      "env": {
        "TWITTER_USERNAME": "your_username",
        "TWITTER_PASSWORD": "your_password",
        "TWITTER_EMAIL": "[email protected]"
      }
    }
  }
}

开发

开发重要提示

开发 MCP 服务时,所有调试和日志语句都应使用 console.error(),而不是 console.log()。MCP 协议通过 stdout 与客户端通信,因此任何 console.log() 语句都会干扰此通信。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。