Warpcast MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables interaction with Warpcast (a Farcaster client), allowing for posting casts, reading casts from users, searching by keyword or hashtag, browsing and interacting with channels, following/unfollowing channels, and viewing trending content.

Servidor MCP de Warpcast

Un servidor de Protocolo de Contexto de Modelo (MCP) para la integración de Warpcast que le permite usar Claude para interactuar con su cuenta de Warpcast.

Características

  • Publica transmisiones en tu cuenta de Warpcast
  • Leer los lanzamientos de Warpcast
  • Buscar elencos por palabra clave o hashtag
  • Navegar e interactuar con los canales
  • Seguir/dejar de seguir canales
  • Obtenga elencos de tendencia

Configuración

  1. Clonar este repositorio
    git clone https://github.com/zhangzhongnan928/mcp-warpcast-server.git cd mcp-warpcast-server
  2. Instalar dependencias
    npm install
  3. Generar claves API y configurar la autenticaciónEste servidor MCP proporciona un script auxiliar para generar el par de claves Ed25519 necesario:
    npm run generate-keys
    Siga las instrucciones para:
    • Generar un par de claves Ed25519 aleatorio
    • Guarde las claves en su archivo .env
    • Obtenga instrucciones para registrar la clave con Warpcast

    Alternativamente, si prefieres configurar las cosas manualmente:

Opción 1: Uso de solicitudes de clave firmadas

  1. Generar un par de claves Ed25519
  2. Utilice la API de solicitud de clave firmada de Warpcast para solicitar permiso para firmar mensajes en nombre de su cuenta
  3. Complete la autorización en la aplicación Warpcast

He aquí un ejemplo de implementación:

import * as ed from '@noble/ed25519'; import { mnemonicToAccount, signTypedData } from 'viem/accounts'; import axios from 'axios'; // Generate a keypair const privateKey = ed.utils.randomPrivateKey(); const publicKeyBytes = await ed.getPublicKey(privateKey); const key = '0x' + Buffer.from(publicKeyBytes).toString('hex'); // EIP-712 domain and types for SignedKeyRequest const SIGNED_KEY_REQUEST_VALIDATOR_EIP_712_DOMAIN = { name: 'Farcaster SignedKeyRequestValidator', version: '1', chainId: 10, verifyingContract: '0x00000000fc700472606ed4fa22623acf62c60553', }; const SIGNED_KEY_REQUEST_TYPE = [ { name: 'requestFid', type: 'uint256' }, { name: 'key', type: 'bytes' }, { name: 'deadline', type: 'uint256' }, ]; // Generate a Signed Key Request signature const appFid = process.env.APP_FID; const account = mnemonicToAccount(process.env.APP_MNEMONIC); const deadline = Math.floor(Date.now() / 1000) + 86400; // signature is valid for 1 day const signature = await account.signTypedData({ domain: SIGNED_KEY_REQUEST_VALIDATOR_EIP_712_DOMAIN, types: { SignedKeyRequest: SIGNED_KEY_REQUEST_TYPE, }, primaryType: 'SignedKeyRequest', message: { requestFid: BigInt(appFid), key, deadline: BigInt(deadline), }, }); // Create a Signed Key Request const warpcastApi = 'https://api.warpcast.com'; const { token, deeplinkUrl } = await axios .post(`${warpcastApi}/v2/signed-key-requests`, { key, requestFid: appFid, signature, deadline, }) .then((response) => response.data.result.signedKeyRequest); console.log('Deep link URL:', deeplinkUrl); console.log('Open this URL on your mobile device with Warpcast installed to authorize this key');

Opción 2: Usar una clave de aplicación existente

Si ya tiene una clave de aplicación configurada para su cuenta de Farcaster, puede usar el FID, la clave privada y la clave pública directamente.

  1. Construir el servidor
    npm run build
  2. Configurar Claude for Desktop para usar este servidor

Configuración con Claude para escritorio

Agregue lo siguiente a su claude_desktop_config.json :

{ "mcpServers": { "warpcast": { "command": "node", "args": [ "/absolute/path/to/mcp-warpcast-server/build/index.js" ], "env": { "WARPCAST_FID": "your_fid_here", "WARPCAST_PRIVATE_KEY": "your_private_key_here", "WARPCAST_PUBLIC_KEY": "your_public_key_here" } } } }

Reemplace /absolute/path/to/mcp-warpcast-server con la ruta absoluta real a donde clonó este repositorio y actualice las variables de entorno con sus credenciales reales.

Uso

Una vez configurado, puedes pedirle a Claude que:

  • "Publica un elenco sobre [tema]"
  • "Lee los últimos castings de [nombre de usuario]"
  • "Buscar elencos sobre [tema]"
  • "Muéstrame los lanzamientos más populares en Warpcast"
  • "Muéstrame canales populares en Warpcast"
  • "Obtener transmisiones del canal [canal]"
  • "Sigue el canal [canal] por mí"

Herramientas disponibles

Este servidor MCP proporciona varias herramientas que Claude puede utilizar:

  1. post-cast : Crea una nueva publicación en Warpcast (máximo 320 caracteres)
  2. get-user-casts : recupera conversiones recientes de un usuario específico
  3. search-casts : busca elencos por palabra clave o frase
  4. get-trending-casts : obtén los lanzamientos de tendencia actuales en Warpcast
  5. get-all-channels : lista de canales disponibles en Warpcast
  6. get-channel : obtener información sobre un canal específico
  7. get-channel-casts : Obtener transmisiones de un canal específico
  8. follow-channel : Seguir un canal
  9. unfollow-channel : Dejar de seguir un canal

Notas de autenticación

Este servidor utiliza el método de autenticación de clave de aplicación de Warpcast, que requiere un par de claves Ed25519 registrado con su cuenta de Farcaster. El proceso de autenticación es el siguiente:

  1. Crea un encabezado que contenga tu FID y clave pública
  2. Crea una carga útil con un tiempo de expiración
  3. Firme el encabezado y la carga útil usando su clave privada
  4. Utilice el token resultante para llamadas API

En aplicaciones de producción, se recomienda utilizar el SDK oficial de Farcaster para generar tokens de autenticación.

Consideraciones de seguridad

  • Mantenga su clave privada segura y nunca la comparta
  • Considere rotar sus llaves periódicamente
  • El servidor registra errores de autenticación para ayudar con la depuración

Solución de problemas

Si encuentra problemas:

  1. Compruebe que sus variables de entorno estén configuradas correctamente
  2. Asegúrese de que sus claves estén correctamente registradas en su cuenta de Farcaster
  3. Consulte los registros de Claude for Desktop para ver si hay errores
  4. Verifique que su cuenta de Warpcast tenga los permisos necesarios

Licencia

Instituto Tecnológico de Massachusetts (MIT)

-
security - not tested
F
license - not found
-
quality - not tested

Un servidor de protocolo de contexto de modelo que permite a Claude interactuar con cuentas de Warpcast, habilitando acciones como publicar transmisiones, leer contenido, buscar por palabras clave y administrar interacciones del canal a través del lenguaje natural.

  1. Features
    1. Setup
      1. Option 1: Using Signed Key Requests
      2. Option 2: Using an Existing App Key
    2. Configuration with Claude for Desktop
      1. Usage
        1. Available Tools
          1. Authentication Notes
            1. Security Considerations
              1. Troubleshooting
                1. License
                  ID: ulfvjoztgp