Penumbra MCP Server

by bmorphism
Verified

Servidor MCP de Penumbra

Un servidor MCP que proporciona herramientas para interactuar con la blockchain de Penumbra. Este servidor permite interacciones que preservan la privacidad con las funciones principales de Penumbra, como consultas de transacciones, información del conjunto de validadores, estado de DEX y propuestas de gobernanza.

Características

Herramientas actuales

  • get_validator_set : obtiene la información del conjunto de validadores actual
  • get_chain_status : obtiene el estado actual de la cadena, incluida la altura del bloque y la identificación de la cadena
  • get_transaction : Obtener detalles de una transacción específica
  • get_dex_state : obtiene el estado actual de DEX, incluidos los resultados de la última subasta por lotes
  • get_governance_proposals : Obtener propuestas de gobernanza activas

Funciones planificadas

  • Envío de transacción
  • Operaciones de staking privado
  • Comercio DEX (subastas por lotes con ofertas selladas)
  • Votación de gobernanza privada
  • Gestión de la posición de liquidez

Instalación

Puede instalar el paquete a través de npm:

npm install @timeheater/penumbra-mcp

O usando hilo:

yarn add @timeheater/penumbra-mcp

Configuración

Desarrollo local desde la fuente

  1. Instalar dependencias:
npm install
  1. Construir el servidor:
npm run build
  1. Ejecutar en modo de desarrollo:
npm run watch

Integración de escritorio de Claude

Para integrarse con el escritorio Claude, agregue la siguiente configuración a su archivo de configuración del escritorio Claude ( ~/Library/Application Support/Claude/claude_desktop_config.json ):

{ "mcpServers": { "penumbra-mcp": { "command": "node", "args": ["/Users/barton/infinity-topos/penumbra-mcp/build/index.js"], "env": { "PENUMBRA_NODE_URL": "https://rpc.penumbra.zone", "PENUMBRA_NETWORK": "mainnet", "PENUMBRA_CHAIN_ID": "penumbra-1", "PENUMBRA_REQUEST_TIMEOUT": "30000", "PENUMBRA_REQUEST_RETRIES": "5", "PENUMBRA_BLOCK_TIME": "6000", "PENUMBRA_EPOCH_DURATION": "100", "PENUMBRA_DEX_BATCH_INTERVAL": "60000", "PENUMBRA_DEX_MIN_LIQUIDITY": "1000", "PENUMBRA_DEX_MAX_PRICE_IMPACT": "0.05", "PENUMBRA_GOVERNANCE_VOTING_PERIOD": "1209600000", "PENUMBRA_GOVERNANCE_MIN_DEPOSIT": "100000" } } } }

Reemplace /path/to/penumbra-mcp con la ruta real donde instaló el servidor.

Uso del servidor MCP

Una vez configurado, podrás interactuar con Penumbra a través de Claude utilizando las siguientes herramientas:

  1. Conjunto de validadores de consultas:
Tell Claude: "Show me the current Penumbra validator set"
  1. Comprobar el estado de la cadena:
Tell Claude: "What's the current status of the Penumbra chain?"
  1. Obtener detalles de la transacción:
Tell Claude: "Look up Penumbra transaction [HASH]"
  1. Ver el estado de DEX:
Tell Claude: "Show me the current Penumbra DEX state"
  1. Lista de propuestas de gobernanza:
Tell Claude: "List active Penumbra governance proposals"

Desarrollo

  • npm run watch : Modo de vigilancia para el desarrollo
  • npm run inspector : ejecuta el inspector MCP para realizar pruebas
  • npm test : Ejecutar conjunto de pruebas

Variables de entorno

Configuración del nodo

  • PENUMBRA_NODE_URL : URL del nodo Penumbra (predeterminado: https://rpc.penumbra.zone )
  • PENUMBRA_REQUEST_TIMEOUT : tiempo de espera de la solicitud HTTP en milisegundos (valor predeterminado: 30000)
  • PENUMBRA_REQUEST_RETRIES : Número de reintentos de solicitud (predeterminado: 5)

Configuración de la cadena

  • PENUMBRA_NETWORK : Red a la que conectarse (predeterminado: red principal)
  • PENUMBRA_CHAIN_ID : ID de cadena (predeterminado: penumbra-1)
  • PENUMBRA_BLOCK_TIME : Tiempo de bloque en milisegundos (predeterminado: 6000)
  • PENUMBRA_EPOCH_DURATION : Número de bloques por época (predeterminado: 100)

Configuración de DEX

  • PENUMBRA_DEX_BATCH_INTERVAL : Intervalo de subasta por lotes en milisegundos (valor predeterminado: 60000)
  • PENUMBRA_DEX_MIN_LIQUIDITY : Monto mínimo de liquidez (predeterminado: 1000)
  • PENUMBRA_DEX_MAX_PRICE_IMPACT : Impacto máximo del precio en decimal (predeterminado: 0,05)

Configuración de gobernanza

  • PENUMBRA_GOVERNANCE_VOTING_PERIOD : Duración del período de votación en milisegundos (valor predeterminado: 1209600000 - 14 días)
  • PENUMBRA_GOVERNANCE_MIN_DEPOSIT : Monto mínimo de depósito de propuesta (predeterminado: 100000)

Arquitectura

El servidor está desarrollado con TypeScript e implementa el Protocolo de Contexto de Modelo (MCP) para interfaces de herramientas estandarizadas. Actualmente ofrece implementaciones simuladas para la funcionalidad principal, con planes para integrarse directamente con las bibliotecas cliente de Penumbra y los endpoints de la API de nodo.

Consideraciones de privacidad

Todas las interacciones respetan el diseño de preservación de la privacidad de Penumbra:

  • Transacciones protegidas
  • Operaciones de staking privado
  • Subastas por lotes con oferta sellada
  • Votación anónima de gobernanza

Contribuyendo

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

Licencia

ISC

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

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.

Permite interacciones que preservan la privacidad con la cadena de bloques Penumbra, ofreciendo herramientas para consultas de transacciones, información del conjunto de validadores, estado de DEX y propuestas de gobernanza.

  1. Features
    1. Current Tools
    2. Planned Features
  2. Installation
    1. Setup
      1. Local Development from Source
      2. Claude Desktop Integration
      3. Using the MCP Server
    2. Development
      1. Environment Variables
        1. Node Configuration
        2. Chain Configuration
        3. DEX Configuration
        4. Governance Configuration
      2. Architecture
        1. Privacy Considerations
      3. Contributing
        1. License
          ID: 21fa1hhrxw