Warpcast交互服务

一个用于Warpcast集成的模型上下文协议(MCP)服务器,允许用户通过Claude与Warpcast账户进行交互,包括发布、阅读、搜索动态以及管理频道等功能。

  • by zhangzhongnan928
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 zhangzhongnan928/mcp-warpcast-server

使用说明

曲播MCP服务器

一个用于Warpcast集成的模型上下文协议(MCP)服务器,允许您使用Claude与您的Warpcast帐户进行交互。
现在的实施遵循 FastMCP 样式服务器来自MCP Python SDK。

特性

  • 将演员阵容发布到您的Warpcast帐户
  • 阅读Warpcast的演员阵容
  • 按关键字或标签搜索演员阵容
  • 浏览频道并与之互动
  • 关注/取消关注频道
  • 获取热门演员阵容

Warpcast API公司 https://docs.farcaster.xyz/reference/warpcast/api

用法

mcp-warpcast-server 配置曲播工具时,通常由Claude Desktop的MCP客户端自动启动。 服务器启动后,您可以要求Claude:

  • “发布关于[主题]的演员阵容”
  • “从[username]读取最新的演员阵容”
  • “搜索关于[主题]的演员阵容”
  • “在Warpcast上显示热门演员阵容”
  • “向我展示Warpcast上的热门频道”
  • “从[频道]频道获取演员阵容”
  • “为我关注[频道]频道”

可用工具

此MCP服务器提供了Claude可以使用的几个工具:

  1. 后浇:在Warpcast上创建新帖子(最多320个字符)
  2. 获取用户演员阵容:从特定用户检索最近的演员阵容
  3. 搜索演员阵容:按关键字或短语搜索演员阵容
  4. 获取热门演员阵容:获取Warpcast上当前流行的演员阵容
  5. 获取所有频道:列出Warpcast上的可用频道
  6. 获取频道:获取特定频道的信息
  7. 获取频道广播:从特定频道获取演员阵容
  8. 跟随频道:关注频道
  9. 取消关注频道:取消关注频道

设置

配置曲播工具时,Claude Desktop通常会为您启动此服务器。只有当您想手动运行服务器进行开发时,才需要以下步骤。

  1. 创建一个Python虚拟环境(建议使用Python 3.11或更高版本):

    python3 -m venv venv
    source venv/bin/activate
    
  2. 安装依赖项(要求包括MCP Python SDK):

    pip install -r requirements.txt
    
  3. 提供Warpcast API令牌:

    • 登录到 曲播 并打开 设置>开发人员.
    • 点击 创建API令牌 并复制该值。
    • 添加 WARPCAST_API_TOKEN 在...之下 env Claude桌面配置的一部分。
    • 如果手动启动服务器,您可以在shell中导出令牌:
      export WARPCAST_API_TOKEN=YOUR_TOKEN
      

    服务器在启动时验证此变量。如果丢失,则发出警告 已记录,授权请求将以 HTTP 500 错误。

  4. (可选)手动启动服务器: 这 app 变量导出自 main.py 使用创建 mcp.streamable_http_app() 因此,它可以由任何ASGI服务器提供服务。

    uvicorn main:app --reload
    

服务器公开了与上面列出的工具和标准相匹配的HTTP端点 /mcp FastMCP提供的端点。

与Claude Desktop一起使用

按照以下步骤从Claude的桌面应用程序访问Warpcast工具:

  1. 使用上面的设置说明启动服务器(或让Claude启动它)。
  2. 打开您的Claude配置文件:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  3. 在下面添加Warpcast服务器 mcpServers 钥匙。将路径替换为此存储库的位置:
{
  "mcpServers": {
    "warpcast": {
      "command": "uvicorn",
      "args": [
        "--app-dir",
        "/ABSOLUTE/PATH/TO/mcp-warpcast-server",
        "main:app",
        "--port",
        "8000"
      ],
      "url": "http://localhost:8000/mcp",
      "env": {
        "WARPCAST_API_TOKEN": "YOUR_API_TOKEN"
      }
    }
  }
}

指定 url 告诉ClaudeDesktop使用server-Sent事件而不是标准的输入和输出通过HTTP与服务器通信。 如果你忽略了 url,Claude Desktop默认通过标准输入和输出(stdio)进行通信,这将不适用于此服务器。

  1. 保存文件并重新启动Claude Desktop。现在,您应该在聊天输入中看到一个锤子图标,可以使用Warpcast工具。

运行测试

单元测试是用 pytest 并使用FastAPI TestClient (通过安装 fastapi[testclient]). 创建虚拟环境,安装依赖项并运行套件:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
make test        # or simply `pytest`

测试模拟Warpcast API层,因此不需要网络连接。

MCP兼容性

此服务器使用官方MCP Python SDK,与 模型上下文协议。客户端可以连接到 /mcp FastMCP提供的端点,并与此处定义的工具进行交互。

许可证

该项目根据 MIT许可证.