Hive MCP Server
Permite que los asistentes de IA interactúen con la blockchain de Hive a través del Protocolo de Contexto de Modelo.
Documentación
Servidor MCP de Hive
Un servidor MCP que permite a los asistentes de IA interactuar con la blockchain de 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 blockchain de Hive, permitiendo que los modelos de IA puedan:
- Obtener información de cuentas e historial
- Recuperar publicaciones de blog y discusiones
- Obtener publicaciones por etiqueta o usuario
- Votar en contenido y crear publicaciones (cuando esté correctamente autenticado)
- Enviar tokens HIVE o HBD a otras cuentas
- Firmar y verificar mensajes con claves de Hive
- Enviar y recibir mensajes cifrados
Características
Prompts
create-post- Crea un prompt estructurado para guiar a la IA en la creación de una nueva publicación en Hive con el formato y las etiquetas correctasanalyze-account- Genera un prompt 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- Obtener información detallada sobre una cuenta de la blockchain de Hiveget_post_content- Recuperar una publicación específica por autor y permlinkget_posts_by_tag- Recuperar publicaciones por etiqueta y categoría (tendencias, populares, etc.)get_posts_by_user- Obtener publicaciones de un usuario específico o de su feedget_account_history- Obtener el historial de transacciones de una cuenta con filtrado opcional por operaciónget_chain_properties- Obtener las propiedades y estadísticas actuales de la blockchain de Hiveget_vesting_delegations- Obtener una lista de delegaciones de vesting realizadas por una cuenta específica
Interacciones con la blockchain (requieren autenticación)
vote_on_post- Votar en contenido de Hive (requiere clave de publicación)create_post- Crear nuevas publicaciones de blog en la blockchain de Hive (requiere clave de publicación)create_comment- Comentar en publicaciones existentes o responder a comentarios (requiere clave de publicación)send_token- Enviar criptomonedas HIVE o HBD a otras cuentas (requiere clave activa)
Criptografía
sign_message- Firmar un mensaje usando una clave privada de Hiveverify_signature- Verificar la firma de un mensaje contra una clave pública de Hive
Mensajería cifrada
encrypt_message- Cifrar un mensaje para una cuenta específica de Hivedecrypt_message- Descifrar un mensaje cifrado de una cuenta específica de Hivesend_encrypted_message- Enviar un mensaje cifrado usando una transferencia de tokensget_encrypted_messages- Recuperar y opcionalmente descifrar mensajes del historial de la cuenta
Depuración con MCP Inspector
El MCP Inspector 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 (votar, publicar, enviar 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 confirme en el control de versiones. Utilice variables de entorno o un enfoque de configuración seguro.
Integración con asistentes de IA
Claude Desktop
Para usar este servidor con Claude Desktop:
-
Asegúrese de tener Claude Desktop instalado
-
Abra o cree el archivo de configuración de Claude:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Agregue este servidor a su 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, deberá usar el formato de comando de una línea en la sección MCP de la 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 en tendencia en la etiqueta #photography en Hive?"
- "Muéstrame las publicaciones recientes del usuario 'alice'"
- "¿Cuál es el saldo de la cuenta y los detalles de 'bob'?"
- "Obtén el historial de transacciones de 'charlie'"
- "¿Puedes votar positivamente la publicación de 'dave' con permlink 'my-awesome-post'?"
- "Crea una nueva publicación en Hive sobre tecnología de IA"
- "Envía 1 HIVE al usuario 'frank' con el memo '¡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 blockchain de Hive?"
- "Muéstrame las delegaciones de vesting realizadas por el usuario 'grace'"
- "Cifra este mensaje para el usuario '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 descifrarlos"
- "Obtén los últimos 10 mensajes cifrados que he intercambiado con 'dave'"
Documentación de herramientas
get_account_info
Obtiene información detallada sobre una cuenta de la blockchain de Hive, incluidos saldo, autoridad, 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 específica del blog de Hive identificada por autor y permlink.
- Parámetros:
author: Autor de la publicaciónpermlink: Permlink 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: Categoría de ordenamiento (tendencias, populares, creadas, etc.)tag: La etiqueta para filtrar las publicacioneslimit: Número de publicaciones a devolver (1-20)
get_posts_by_user
Recupera publicaciones escritas por un usuario específico de Hive o de su feed.
- Parámetros:
category: Tipo de publicaciones de usuario a obtener (blog o feed)username: Nombre de usuario de Hive para obtener publicacioneslimit: Número de publicaciones a devolver (1-20)
get_account_history
Recupera el historial de transacciones de una cuenta de Hive con filtrado opcional por tipo de operación.
- Parámetros:
username: Nombre de usuario de Hivelimit: Número de operaciones a devolveroperation_filter: Lista opcional de tipos de operación para filtrar
get_chain_properties
Obtiene las propiedades y estadísticas actuales de la blockchain de Hive.
- Parámetros: Ninguno
get_vesting_delegations
Obtiene una lista de delegaciones de vesting realizadas por una cuenta específica de Hive.
- Parámetros:
username: Cuenta de Hive para obtener delegacioneslimit: Número máximo de delegaciones a recuperarfrom: Cuenta inicial opcional para paginación
vote_on_post
Vota en una publicación de Hive (a favor o en contra) usando la cuenta de Hive configurada.
- Parámetros:
author: Autor de la publicación en la que votarpermlink: Permlink de la publicación en la que votarweight: Peso del voto de -10000 (100% voto negativo) a 10000 (100% voto positivo)
create_post
Crea una nueva publicación de blog en la blockchain de Hive usando la cuenta configurada.
- Parámetros:
title: Título de la publicación del blogbody: Contenido de la publicación del blog (Markdown compatible)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 comentario al que respondeparent_permlink: Permlink de la publicación o comentario al que respondebody: Contenido del comentario (Markdown compatible)- 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 destinatarioamount: Cantidad de tokens a enviarcurrency: Moneda a enviar (HIVE o HBD)memo: Memo opcional para incluir con la transacción
sign_message
Firma un mensaje usando una clave privada de Hive de las variables de entorno.
- Parámetros:
message: Mensaje a firmarkey_type: Tipo de clave a usar (publicación, activa o memo)
verify_signature
Verifica una firma digital contra una clave pública de Hive.
- Parámetros:
message_hash: El hash SHA-256 del mensaje en formato hexadecimalsignature: Cadena de firma a verificarpublic_key: Clave pública para verificar
encrypt_message
Cifra un mensaje para una cuenta específica de Hive usando cifrado de memo.
- Parámetros:
message: Mensaje a cifrarrecipient: Nombre de usuario de Hive del destinatario
decrypt_message
Descifra 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 usando una pequeña transferencia de tokens.
- Parámetros:
message: Mensaje a cifrar y enviarrecipient: Nombre de usuario de Hive del destinatarioamount: Cantidad de HIVE a enviar (mínimo 0.001, predeterminado: 0.001)
get_encrypted_messages
Recupera mensajes cifrados del historial de la cuenta con descifrado opcional.
- Parámetros:
username: Nombre de usuario de Hive para obtener mensajes cifradoslimit: 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 principal del servidorsrc/tools/- Implementación de todas las herramientassrc/schemas/- Esquemas Zod para parámetros de herramientassrc/utils/- Funciones de utilidad para interactuar con la blockchain de Hivesrc/config/- Configuración del cliente y manejo del nivel de registro
Dependencias
- @hiveio/dhive - Cliente de la blockchain de Hive
- @modelcontextprotocol/sdk - SDK de MCP
- zod - Validación de esquemas
Licencia
ISC
Contribuciones
¡Las contribuciones son bienvenidas! No dude en enviar una Solicitud de Extracción.
Consulte el archivo CONTRIBUTING.md para obtener pautas de contribución más detalladas.