Hive MCP Server

by gluneau
Verified

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

  • Allows AI assistants to interact with the Hive blockchain through reading data, performing blockchain interactions, cryptography operations, and encrypted messaging

  • Supports creating blog posts and comments with Markdown formatting on the Hive blockchain

Servidor MCP de Hive

Un servidor MCP que permite a los asistentes de IA interactuar con la cadena de bloques Hive a través del Protocolo de Contexto de Modelo.

Descripción general

Este servidor proporciona un puente entre los asistentes de IA (como Claude) y la cadena de bloques Hive, lo que permite a los modelos de IA:

  • Obtener información y el historial de la cuenta
  • Recuperar publicaciones y debates del blog
  • Obtener publicaciones por etiqueta o usuario
  • Votar sobre el contenido y crear publicaciones (cuando esté debidamente autenticado)
  • Envía tokens HIVE o HBD a otras cuentas
  • Firmar y verificar mensajes con claves de Hive
  • Enviar y recibir mensajes cifrados

Características

Indicaciones

  • create-post : crea un mensaje estructurado para guiar a la IA en la creación de una nueva publicación de Hive con el formato y las etiquetas correctos.
  • analyze-account : genera un mensaje para analizar las estadísticas, el historial de publicaciones y los patrones de actividad de una cuenta de Hive.

Herramientas

Lectura de datos

  • get_account_info - Obtenga información detallada sobre una cuenta de blockchain de Hive
  • get_post_content - Recupera una publicación específica por autor y enlace permanente
  • get_posts_by_tag - Recupera publicaciones por etiqueta y categoría (tendencia, popular, etc.)
  • get_posts_by_user - Obtener publicaciones de un usuario específico o de su feed
  • get_account_history : obtiene el historial de transacciones de una cuenta con filtrado de operaciones opcional
  • get_chain_properties : recupera las propiedades y estadísticas actuales de la cadena de bloques de Hive
  • get_vesting_delegations - Obtener una lista de delegaciones de derechos realizadas por una cuenta específica

Interacciones de blockchain (requieren autenticación)

  • vote_on_post - Vota sobre el contenido de Hive (requiere clave de publicación)
  • create_post : crea nuevas publicaciones de blog en la cadena de bloques Hive (requiere una clave de publicación)
  • create_comment - Comentar publicaciones existentes o responder a comentarios (requiere clave de publicación)
  • send_token - Envía criptomonedas HIVE o HBD a otras cuentas (requiere una clave activa)

Criptografía

  • sign_message - Firma un mensaje usando una clave privada de Hive
  • verify_signature - Verificar la firma de un mensaje con una clave pública de Hive

Mensajería cifrada

  • encrypt_message : cifra un mensaje para una cuenta específica de Hive
  • decrypt_message : descifra un mensaje cifrado de una cuenta específica de Hive
  • send_encrypted_message - Envía un mensaje cifrado mediante una transferencia de token
  • get_encrypted_messages : recupera y, opcionalmente, descifra mensajes del historial de la cuenta

Depuración con MCP Inspector

El Inspector MCP proporciona una interfaz interactiva para probar y depurar el servidor:

npx @modelcontextprotocol/inspector npx @gluneau/hive-mcp-server

Configuración de autenticación

Para habilitar operaciones autenticadas (votación, publicación, envío de tokens), deberá configurar variables de entorno:

export HIVE_USERNAME=your-hive-username export HIVE_POSTING_KEY=your-hive-posting-private-key # For content operations export HIVE_ACTIVE_KEY=your-hive-active-private-key # For token transfers export HIVE_MEMO_KEY=your-hive-memo-private-key # For encrypted messaging

Nota de seguridad : Nunca comparta sus claves privadas ni las envíe al control de versiones. Utilice variables de entorno o un enfoque de configuración seguro.

Integración con asistentes de IA

Escritorio de Claude

Para utilizar este servidor con Claude Desktop:

  1. Asegúrese de tener instalado Claude Desktop
  2. Abra o cree el archivo de configuración de Claude:
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Ventanas: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  3. Añade este servidor a tu configuración:
{ "mcpServers": { "hive": { "command": "npx", "args": ["-y", "@gluneau/hive-mcp-server"], "env": { "HIVE_USERNAME": "your-hive-username", "HIVE_POSTING_KEY": "your-hive-posting-private-key", "HIVE_ACTIVE_KEY": "your-hive-active-private-key", "HIVE_MEMO_KEY": "your-hive-memo-private-key" } } } }

Windsurf y Cursor

La misma configuración JSON funciona para Windsurf (en windsurf_config.json ) y para Cursor (en ~/.cursor/mcp.json para la versión >= 0.47).

En versiones anteriores, tendrás que usar el formato de comando de 1 línea en la sección MCP de Configuración: env HIVE_USERNAME=your-hive-username env HIVE_POSTING_KEY=your-hive-posting-private-key env HIVE_ACTIVE_KEY=your-hive-active-private-key env HIVE_MEMO_KEY=your-hive-memo-private-key npx -y @gluneau/hive-mcp-server

Ejemplos

Una vez conectado a un cliente MCP, puede hacer preguntas como:

  • "¿Cuáles son las publicaciones de tendencia en la etiqueta #fotografía en Hive?"
  • Muéstrame las publicaciones recientes del usuario 'alice'
  • "¿Cuál es el saldo y los detalles de la cuenta de 'bob'?"
  • Obtener el historial de transacciones de 'Charlie'
  • "¿Podrías votar positivamente la publicación de 'dave' con el enlace permanente 'my-awesome-post'?"
  • "Crear una nueva publicación en Hive sobre tecnología de IA"
  • Envía 1 HIVE al usuario 'frank' con el mensaje '¡Gracias por tu ayuda!'
  • Firma este mensaje con mi clave de publicación de Hive: "Verificando mi identidad".
  • ¿Cuáles son las propiedades actuales de la cadena de bloques Hive?
  • "Muéstrame las delegaciones de derechos realizadas por el usuario 'grace'"
  • Cifrar este mensaje para la usuaria 'alice': 'Este es un mensaje secreto'.
  • "Descifra este mensaje de 'bob': '#4f3a5b...'"
  • Envía un mensaje cifrado a 'Charlie' diciendo: 'Nos vemos mañana'.
  • "Muéstrame mis mensajes cifrados y descifralos"
  • Obtener los últimos 10 mensajes cifrados que intercambié con 'dave'

Documentación de herramientas

get_account_info

Obtiene información detallada sobre una cuenta de blockchain de Hive, incluido el saldo, la autoridad, el poder de voto y otras métricas.

  • Parámetros:
    • username : nombre de usuario de Hive para obtener información

get_post_content

Recupera una publicación de blog específica de Hive identificada por autor y enlace permanente.

  • Parámetros:
    • author : Autor de la publicación
    • permlink : Enlace permanente de la publicación

get_posts_by_tag

Recupera publicaciones de Hive filtradas por una etiqueta específica y ordenadas por una categoría.

  • Parámetros:
    • category : Clasificación por categoría (tendencia, popular, creado, etc.)
    • tag : La etiqueta para filtrar publicaciones por
    • limit : Número de publicaciones a devolver (1-20)

get_posts_by_user

Recupera publicaciones creadas por o en el feed de un usuario específico de Hive.

  • Parámetros:
    • category : Tipo de publicaciones de usuario a buscar (blog o feed)
    • username : nombre de usuario de Hive para obtener publicaciones
    • limit : Número de publicaciones a devolver (1-20)

get_account_history

Recupera el historial de transacciones de una cuenta de Hive con filtrado de tipo de operación opcional.

  • Parámetros:
    • username : nombre de usuario de Hive
    • limit : Número de operaciones a devolver
    • operation_filter : Lista opcional de tipos de operaciones para filtrar

get_chain_properties

Obtenga propiedades y estadísticas actuales de la cadena de bloques Hive.

  • Parámetros: Ninguno

get_vesting_delegations

Obtenga una lista de delegaciones de derechos realizadas por una cuenta específica de Hive.

  • Parámetros:
    • username : Cuenta de Hive para obtener delegaciones para
    • limit : Número máximo de delegaciones a recuperar
    • from : Cuenta de inicio opcional para paginación

vote_on_post

Vota una publicación de Hive (a favor o en contra) usando la cuenta de Hive configurada.

  • Parámetros:
    • author : Autor de la publicación a votar
    • permlink : Enlace permanente de la publicación para votar
    • weight : Peso del voto de -10000 (100% votos negativos) a 10000 (100% votos positivos)

create_post

Cree una nueva publicación de blog en la cadena de bloques Hive utilizando la cuenta configurada.

  • Parámetros:
    • title : Título de la entrada del blog
    • body : Contenido de la entrada del blog (compatible con Markdown)
    • tags : Etiquetas para la publicación
    • Varios parámetros opcionales para recompensas, beneficiarios, etc.

create_comment

Crea un comentario en una publicación existente de Hive o responde a otro comentario.

  • Parámetros:
    • parent_author : Nombre de usuario del autor de la publicación o del comentario al que estás respondiendo
    • parent_permlink : Enlace permanente de la publicación o comentario al que estás respondiendo
    • body : Contenido del comentario (compatible con Markdown)
    • Varios parámetros opcionales para recompensas, beneficiarios, etc.

send_token

Envía tokens HIVE o HBD a otra cuenta de Hive usando la cuenta configurada.

  • Parámetros:
    • to : Nombre de usuario de Hive del destinatario
    • amount : Cantidad de tokens a enviar
    • currency : Moneda a enviar (HIVE o HBD)
    • memo : memo opcional para incluir con la transacción

sign_message

Firme un mensaje utilizando una clave privada de Hive desde variables de entorno.

  • Parámetros:
    • message : Mensaje para firmar
    • key_type : Tipo de clave a utilizar (publicación, activa o memo)

verify_signature

Verificar una firma digital con una clave pública de Hive.

  • Parámetros:
    • message_hash : El hash SHA-256 del mensaje en formato hexadecimal
    • signature : Cadena de firma para verificar
    • public_key : Clave pública para verificar

encrypt_message

Cifrar un mensaje para una cuenta específica de Hive usando el cifrado de notas.

  • Parámetros:
    • message : Mensaje a cifrar
    • recipient : nombre de usuario de Hive del destinatario

decrypt_message

Descifrar un mensaje cifrado recibido de una cuenta específica de Hive.

  • Parámetros:
    • encrypted_message : Mensaje cifrado (comienza con #)
    • sender : nombre de usuario de Hive del remitente

send_encrypted_message

Envía un mensaje cifrado a una cuenta de Hive mediante una pequeña transferencia de token.

  • Parámetros:
    • message : Mensaje para cifrar y enviar
    • recipient : nombre de usuario de Hive del destinatario
    • amount : Cantidad de HIVE a enviar (mínimo 0,001, predeterminado: 0,001)

get_encrypted_messages

Recupere mensajes cifrados del historial de la cuenta con descifrado opcional.

  • Parámetros:
    • username : nombre de usuario de Hive para obtener mensajes cifrados
    • limit : Número máximo de mensajes a recuperar (predeterminado: 20)
    • decrypt : si se debe intentar descifrar los mensajes (predeterminado: falso)

Desarrollo

Estructura del proyecto

  • src/index.ts - Implementación del servidor principal
  • src/tools/ - Implementación de todas las herramientas
  • src/schemas/ - Esquemas Zod para parámetros de herramientas
  • src/utils/ - Funciones de utilidad para interactuar con la cadena de bloques Hive
  • src/config/ - Configuración del cliente y manejo del nivel de registro

Dependencias

Licencia

ISC

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Consulte el archivo CONTRIBUTING.md para obtener pautas de contribución más detalladas.

ID: pobodojvqv