Warpcast

Un servidor MCP para interactuar con la red social Warpcast.

Documentación

Servidor MCP de Warpcast

Un servidor de Model Context Protocol (MCP) para la integración con Warpcast que te permite usar Claude para interactuar con tu cuenta de Warpcast.
La implementación ahora sigue el estilo de servidor FastMCP del SDK de Python de MCP.

Características

  • Publica casts en tu cuenta de Warpcast
  • Lee casts de Warpcast
  • Busca casts por palabra clave o hashtag
  • Explora e interactúa con canales
  • Sigue/deja de seguir canales
  • Obtén casts en tendencia

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

Uso

mcp-warpcast-server normalmente se inicia automáticamente mediante el cliente MCP de Claude Desktop cuando las herramientas de Warpcast están configuradas. Después de que el servidor se inicie, puedes pedirle a Claude que:

  • "Publica un cast sobre [tema]"
  • "Lee los últimos casts de [usuario]"
  • "Busca casts sobre [tema]"
  • "Muéstrame los casts en tendencia en Warpcast"
  • "Muéstrame los canales populares en Warpcast"
  • "Obtén los casts del canal [canal]"
  • "Sigue el canal [canal] por mí"

Herramientas Disponibles

Este servidor MCP proporciona varias herramientas que Claude puede usar:

  1. post-cast: Crea una nueva publicación en Warpcast (máximo 320 caracteres)
  2. get-user-casts: Recupera los casts recientes de un usuario específico
  3. search-casts: Busca casts por palabra clave o frase
  4. get-trending-casts: Obtén los casts actualmente en tendencia en Warpcast
  5. get-all-channels: Lista los canales disponibles en Warpcast
  6. get-channel: Obtén información sobre un canal específico
  7. get-channel-casts: Obtén los casts de un canal específico
  8. follow-channel: Sigue un canal
  9. unfollow-channel: Deja de seguir un canal

Configuración

Claude Desktop normalmente inicia este servidor por ti cuando las herramientas de Warpcast están configuradas. Los pasos a continuación solo son necesarios si deseas ejecutar el servidor manualmente para desarrollo.

  1. Crea un entorno virtual de Python (se recomienda Python 3.11 o superior):

    python3 -m venv venv
    source venv/bin/activate
    
  2. Instala las dependencias (los requisitos incluyen el SDK de Python de MCP):

    pip install -r requirements.txt
    
  3. Proporciona un token de API de Warpcast:

    • Inicia sesión en Warpcast y abre Configuración > Desarrollador.
    • Haz clic en Crear token de API y copia el valor.
    • Agrega WARPCAST_API_TOKEN en la sección env de tu configuración de Claude Desktop.
    • Si inicias el servidor manualmente, puedes exportar el token en tu shell:
      export WARPCAST_API_TOKEN=YOUR_TOKEN
      

    El servidor valida esta variable al iniciar. Si falta, se registra una advertencia y las solicitudes autorizadas responderán con errores HTTP 500.

  4. (Opcional) Inicia el servidor manualmente: La variable app exportada desde main.py se crea usando mcp.streamable_http_app() para que pueda ser servida por cualquier servidor ASGI.

    uvicorn main:app --reload
    

El servidor expone endpoints HTTP que coinciden con las herramientas listadas anteriormente y un endpoint estándar /mcp proporcionado por FastMCP.

Uso con Claude Desktop

Sigue estos pasos para acceder a las herramientas de Warpcast desde la aplicación de escritorio de Claude:

  1. Inicia el servidor (o deja que Claude lo inicie) usando las instrucciones de configuración anteriores.
  2. Abre tu archivo de configuración de Claude:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  3. Agrega el servidor de Warpcast bajo la clave mcpServers. Reemplaza la ruta con la ubicación de este repositorio:
{
  "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"
      }
    }
  }
}

Especificar un url le indica a Claude Desktop que se comunique con el servidor a través de HTTP usando Server-Sent Events en lugar de entrada y salida estándar. Si omites url, Claude Desktop usará por defecto la comunicación a través de entrada y salida estándar (stdio), que no funcionará con este servidor.

  1. Guarda el archivo y reinicia Claude Desktop. Ahora deberías ver un ícono de martillo en la entrada de chat que te permite usar las herramientas de Warpcast.

Ejecución de Pruebas

Las pruebas unitarias están escritas con pytest y usan TestClient de FastAPI (instalado a través de fastapi[testclient]). Crea un entorno virtual, instala las dependencias y ejecuta el conjunto:

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

Las pruebas simulan la capa de API de Warpcast, por lo que no se requiere conexión de red.

Compatibilidad con MCP

Este servidor usa el SDK oficial de Python de MCP y es totalmente compatible con el Model Context Protocol. Los clientes pueden conectarse al endpoint /mcp proporcionado por FastMCP e interactuar con las herramientas definidas aquí.

Licencia

Este proyecto está licenciado bajo la Licencia MIT.