MCP 服务器 - Twitter NoAuth
一个 MCP(模型上下文协议)服务器,无需设置本地凭证或令牌即可提供 Twitter API 访问。它提供 Twitter 的核心操作,例如搜索推文、获取用户推文、发布推文以及回复推文。
演示视频
https://www.youtube.com/watch?v=LOxFqCTPedc
Related MCP server: Twitter MCP Server
为什么选择 MCP Twitter NoAuth 服务器?
关键优势
无头和远程操作:该服务器可以在没有浏览器和没有本地文件访问的远程环境中完全无头运行。
解耦架构:任何客户端都可以独立完成 OAuth 流程,然后将凭证作为上下文传递给此 MCP 服务器,从而在凭证存储和服务器实现之间实现完全分离。
不错,但不是批评
重点功能:提供核心 Twitter 操作,如搜索推文、获取用户推文、发布推文和回复推文。
Docker-Ready :设计时考虑了容器化,可实现良好隔离、独立于环境的一键式设置。
可靠的依赖项:基于标准 Python 请求库构建,用于 Twitter API 集成。
特征
使用 Twitter API 搜索推文
获取特定用户的最新推文
获取特定用户的最近回复
发布新推文
回复现有推文
单独刷新访问令牌
自动刷新令牌处理
先决条件
Python 3.10 或更高版本
Twitter API 凭证(客户端 ID、客户端密钥、访问令牌和刷新令牌)
安装
Docker
构建 Docker 镜像
与 Claude Desktop 一起使用
Docker 使用
您可以通过将以下内容添加到 Claude 配置中来配置 Claude Desktop 以使用 Docker 镜像:
注意:使用此配置,您需要在工具调用中提供您的 Twitter API 凭据,如“使用工具”部分所示。Twitter 凭据不会作为环境变量传递,以保持凭据存储和服务器实现之间的分离。
跨平台发布
要为多个平台发布 Docker 镜像,可以使用docker buildx命令。请按以下步骤操作:
创建一个新的构建器实例(如果还没有):
docker buildx create --use为多个平台构建并推送图像:
docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t buryhuang/mcp-twitter-noauth:latest --push .验证该图像是否适用于指定的平台:
docker buildx imagetools inspect buryhuang/mcp-twitter-noauth:latest
用法
该服务器通过 MCP 工具提供 Twitter 功能。通过专用的令牌刷新工具简化了身份验证处理。
启动服务器
使用工具
当使用像 Claude 这样的 MCP 客户端时,您有两种主要方式来处理身份验证:
刷新令牌(第一步或令牌过期时)
如果您同时拥有访问令牌和刷新令牌:
如果您的访问令牌已过期,您可以仅使用刷新令牌进行刷新:
这将返回一个新的访问令牌及其到期时间,您可以在后续调用中使用它。
搜索推文
使用 Twitter API 搜索推文:
响应包括推文数据,包括文本、创建时间和作者信息。
获取用户推文
获取特定用户的最新推文:
获取用户回复
获取特定用户的最近回复:
发布推文
发布一条新推文:
回复推文
回复现有推文:
令牌刷新工作流程
首先使用以下任一方式调用
twitter_refresh_token工具:您的完整凭证(访问令牌、刷新令牌、客户端 ID 和客户端密钥),或
如果访问令牌已过期,则仅显示刷新令牌、客户端 ID 和客户端密钥
使用返回的新访问令牌进行后续 API 调用。
如果收到指示令牌过期的响应,请再次调用
twitter_refresh_token工具以获取新令牌。
这种方法不需要每个操作都提供客户端凭据,从而简化了大多数 API 调用,同时仍在需要时启用令牌刷新。
获取 Twitter API 凭证
要获取所需的 Twitter API 凭证,请按照以下步骤操作:
创建新项目和应用程序
设置 OAuth 2.0 身份验证
为您的应用配置 OAuth 设置
生成客户端 ID 和客户端密钥
完成 OAuth 流程以获取访问和刷新令牌
令牌刷新
此服务器实现了令牌自动刷新功能。当您的访问令牌过期时,服务器将使用刷新令牌、客户端 ID 和客户端密钥来获取新的访问令牌,无需用户干预。
安全说明
此服务器需要直接访问您的 Twitter API 凭证。请始终确保您的令牌和凭证安全无虞,切勿与不受信任的第三方共享。
执照
有关详细信息,请参阅 LICENSE 文件。