Skip to main content
Glama

MCP Clusters API Server

by ayv8er

Servidor MCP - API de clústeres v1

Esta es una implementación de servidor del Protocolo de Contexto de Modelo (MCP) para la API de Clústeres v1. Proporciona puntos finales para autenticación, gestión de clústeres, registro de nombres y más.

Dependencias

{ "@modelcontextprotocol/sdk": "^1.7.0", "dotenv": "^16.4.7", "zod": "^3.24.2" }

Configuración

  1. Instalar dependencias:
npm install
  1. Cree un archivo .env con: CLUSTERS_API_KEY={CLUSTERS_API_KEY}
  2. Construya e inicie el servidor:
npm run dev

Prueba de puntos finales

Dado que este servidor usa StdioServerTransport , deberá enviar mensajes JSON-RPC a través de la entrada estándar. A continuación, se muestran comandos de ejemplo para probar cada punto final:

Puntos finales de autenticación

Recibir mensaje
echo '{"jsonrpc":"2.0","id":1,"method":"auth_get_message","params":{"address":"0x123...","chainId":1,"nonce":"abc123"}}' | node dist/index.js
Obtener token
echo '{"jsonrpc":"2.0","id":1,"method":"auth_get_token","params":{"signature":"0x123...","signingDate":"2024-03-21","type":"evm","wallet":"0x123..."}}' | node dist/index.js
Validar token
echo '{"jsonrpc":"2.0","id":1,"method":"auth_validate_token","params":{"authKey":"your-auth-key"}}' | node dist/index.js

Puntos finales de administración de clústeres

Crear clúster
echo '{"jsonrpc":"2.0","id":1,"method":"create_cluster","params":{"wallets":[{"address":"0x123...","name":"MyWallet","isPrivate":false}],"authKey":"your-auth-key","testnet":false}}' | node dist/index.js
Obtener clúster por ID
echo '{"jsonrpc":"2.0","id":1,"method":"get_cluster_by_id","params":{"id":"cluster-id","testnet":false}}' | node dist/index.js
Obtener clúster por nombre
echo '{"jsonrpc":"2.0","id":1,"method":"get_cluster_by_name","params":{"name":"cluster-name","testnet":false}}' | node dist/index.js
Obtener el ID del clúster por dirección
echo '{"jsonrpc":"2.0","id":1,"method":"get_cluster_id_by_address","params":{"address":"0x123...","testnet":false}}' | node dist/index.js
Agregar billeteras
echo '{"jsonrpc":"2.0","id":1,"method":"add_wallets","params":{"wallets":[{"address":"0x123...","name":"NewWallet","isPrivate":false}],"authKey":"your-auth-key","testnet":false}}' | node dist/index.js
Generar billetera
echo '{"jsonrpc":"2.0","id":1,"method":"generate_wallet","params":{"type":"evm","name":"NewWallet","isPrivate":false,"authKey":"your-auth-key","testnet":false}}' | node dist/index.js
Actualizar billeteras
echo '{"jsonrpc":"2.0","id":1,"method":"update_wallets","params":{"wallets":[{"address":"0x123...","name":"UpdatedName"}],"authKey":"your-auth-key","testnet":false}}' | node dist/index.js
Eliminar carteras
echo '{"jsonrpc":"2.0","id":1,"method":"remove_wallets","params":{"addresses":["0x123..."],"authKey":"your-auth-key","testnet":false}}' | node dist/index.js
Verificar billetera
echo '{"jsonrpc":"2.0","id":1,"method":"verify_wallet","params":{"clusterId":"cluster-id","authKey":"your-auth-key","testnet":false}}' | node dist/index.js

Dirección ↔ Puntos finales de resolución de nombres

Obtener datos por dirección
echo '{"jsonrpc":"2.0","id":1,"method":"get_data_by_address","params":{"address":"0x123...","testnet":false}}' | node dist/index.js
Obtener datos masivos por direcciones
echo '{"jsonrpc":"2.0","id":1,"method":"get_bulk_data_by_addresses","params":{"addresses":["0x123...","0x456..."],"testnet":false}}' | node dist/index.js
Obtener datos masivos por nombres
echo '{"jsonrpc":"2.0","id":1,"method":"get_bulk_data_by_names","params":{"names":[{"name":"name1"}],"testnet":false}}' | node dist/index.js

Puntos finales de registro

Comprobar disponibilidad de nombre
echo '{"jsonrpc":"2.0","id":1,"method":"check_name_availability","params":{"names":["name1","name2"]}}' | node dist/index.js
Obtener datos de la señal de registro
echo '{"jsonrpc":"2.0","id":1,"method":"get_registration_sign_data","params":{"network":"1","sender":"0x123...","names":[{"name":"name1","amountWei":"1000000000000000000"}],"referralClusterId":"optional-id","testnet":false}}' | node dist/index.js
Obtener el estado de la transacción
echo '{"jsonrpc":"2.0","id":1,"method":"get_transaction_status","params":{"txHash":"0x123..."}}' | node dist/index.js

Notas

  1. Reemplace los valores de marcador de posición (como 0x123... , your-auth-key , etc.) con valores reales
  2. El parámetro testnet es opcional para la mayoría de los puntos finales
  3. Todas las respuestas tendrán formato JSON-RPC 2.0
  4. Para los puntos finales autenticados, asegúrese de obtener e incluir una authKey válida
  5. El servidor utiliza variables de entorno para la configuración, asegúrese de que su archivo .env esté configurado correctamente

Método de prueba alternativo

Para facilitar las pruebas, podrías modificar el servidor para que use el transporte HTTP en lugar de stdio. Esto te permitiría usar comandos curl en lugar de canales de eco. Avísame si quieres cambiar al transporte HTTP.

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.

Una implementación de servidor de protocolo de contexto de modelo que proporciona puntos finales para autenticación basada en billetera, administración de clústeres y servicios de registro de nombres.

  1. Dependencias
    1. Configuración
      1. Prueba de puntos finales
        1. Puntos finales de autenticación
        2. Puntos finales de administración de clústeres
        3. Dirección ↔ Puntos finales de resolución de nombres
        4. Puntos finales de registro
      2. Notas
        1. Método de prueba alternativo

          Related MCP Servers

          • A
            security
            F
            license
            A
            quality
            A Model Context Protocol server implementation for interacting with Salesforce through its REST API.
            Last updated -
            4
            10
            TypeScript
          • A
            security
            F
            license
            A
            quality
            A Model Context Protocol server that provides tools to manage Keycloak users and realms, allowing you to create and delete users, list available realms, and view users in specific realms.
            Last updated -
            4
            36
            12
            TypeScript
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that provides tools for managing providers, clients, tenants, and access tokens through the UseGrant platform.
            Last updated -
            26
            116
            JavaScript
            MIT License
          • -
            security
            F
            license
            -
            quality
            A Model Context Protocol server that enables interactions with the Hedera network, providing tools for wallet creation, balance checking, transaction building, and sending signed transactions.
            Last updated -
            JavaScript

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/ayv8er/mcp-clusters-api-v1'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server