TapTools API MCP

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

  • Supports loading the TapTools API key from a .env file, providing a secure way to store and access authentication credentials.

  • Provides access to Cardano blockchain data through the TapTools API, enabling fetching of token information, NFT collection details, market statistics, wallet portfolio positions, and on-chain data for Cardano-based assets.

  • Uses Pydantic models to structure and validate request data for TapTools API operations, ensuring all JSON requests conform to the expected data schemas.

API MCP de TapTools

Un servidor de Protocolo de Contexto de Modelo (MCP) basado en Python que proporciona acceso a la API de TapTools , lo que permite que los Modelos de Lenguaje Grandes (LLM) (como Claude o GPT) obtengan datos relacionados con Cardano (tokens, NFT, información de mercado, etc.). Este servidor estandariza las operaciones de la API de TapTools en herramientas MCP, lo que facilita su integración en flujos de trabajo de IA.

Características

  • Implementación asincrónica : utiliza patrones asincrónicos de Python modernos y httpx para E/S sin bloqueo.
  • Autenticación segura : lee TAPTOOLS_API_KEY desde las variables de entorno o el archivo .env .
  • MCP-Ready : expone la funcionalidad de TapTools como "herramientas" accesibles para cualquier cliente compatible con MCP.
  • Operaciones de tokens : precios, tokens principales, datos de capitalización de mercado, estadísticas de volumen y más.
  • Operaciones NFT : estadísticas de recopilación de NFT, intercambios, listados, distribución, etc.
  • Datos del mercado : estadísticas agregadas sobre volumen, direcciones, titulares y más.
  • Integración y Onchain : acceso a datos onchain, información de bloques, eventos, pares DEX, etc.
  • Datos de la billetera : posiciones de cartera, tenencias de tokens/NFT, historial de transacciones, operaciones.

Inicio rápido

  1. Clonar el repositorio :
    git clone https://github.com/yourusername/taptools-api-mcp.git cd taptools-api-mcp
  2. Crear y activar un entorno virtual :
    python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
  3. Instalar dependencias :
    pip install -e .
  4. Configure su clave API de TapTools :
    • Opción A : Agregar a su archivo .env :
      TAPTOOLS_API_KEY=your-real-taptools-api-key
    • Opción B : Establecer la variable de entorno:
      export TAPTOOLS_API_KEY="your-real-taptools-api-key"
  5. Ejecute el servidor MCP :
    python -m taptools_api_mcp
    De forma predeterminada, se ejecutará en entrada/salida estándar (stdio) para la integración de MCP.
  6. Pruebe la conexión (opcional):
    python test_connection.py

Ejemplo de uso

Si tiene un cliente MCP (como las herramientas CLI de Python mcp ), puede iniciar el servidor y llamar a cualquiera de las herramientas disponibles:

# In one terminal, start the server: python -m taptools_api_mcp # In another terminal (or from the same, if you prefer): mcp cli

Una vez dentro de la mcp cli , puedes llamar a herramientas como:

> tool verify_connection

Esto verificará que su clave API de TapTools sea válida y accesible.

O, por ejemplo, para obtener información sobre la capitalización de mercado del token:

> tool get_token_mcap {"unit": "lovelace"}

Debería recibir datos JSON con la capitalización de mercado del token, el precio, el suministro, etc.

Documentación de la API: Herramientas MCP

A continuación, se muestra una lista de las herramientas MCP disponibles, sus parámetros y breves descripciones. Estas herramientas deben llamarse con las cargas útiles JSON correctas. Todas las solicitudes JSON deben coincidir con los modelos de Pydantic que se encuentran en src/taptools_api_mcp/models/ .

1. verify_connection

  • Descripción : Verificar la autenticación de la API de TapTools.
  • Parámetros : (Sin parámetros).
  • Ejemplo de uso :
    { }

2. get_token_mcap

  • Descripción : Obtenga información sobre la capitalización de mercado del token.
  • Parámetros ( TokenMcapRequest ):
    { "unit": "string" // required: token unit identifier }
  • Ejemplo de uso :
    { "unit": "lovelace" }

3. get_token_holders

  • Descripción : Obtenga el número total de poseedores de tokens.
  • Parámetros ( TokenHoldersRequest ):
    { "unit": "string" // required: token unit identifier }
  • Ejemplo de uso :
    { "unit": "lovelace" }

4. get_token_holders_top

  • Descripción : Consigue los mejores poseedores de tokens.
  • Parámetros ( TokenTopHoldersRequest ):
    { "unit": "string", // required "page": "number", // optional (default 1) "per_page": "number"// optional (default 20) }
  • Ejemplo de uso :
    { "unit": "some_token_unit", "page": 1, "per_page": 5 }

5. get_nft_asset_sales

  • Descripción : Obtenga el historial de ventas de activos NFT.
  • Parámetros ( NFTAssetSalesRequest ):
    { "policy": "string", // required: NFT policy ID "name": "string" // optional: NFT name }
  • Ejemplo de uso :
    { "policy": "abc123polid", "name": "coolNFT" }

6. get_nft_collection_stats

  • Descripción : Obtenga estadísticas de colección de NFT.
  • Parámetros ( NFTCollectionStatsRequest ):
    { "policy": "string" // required: NFT collection policy ID }
  • Ejemplo de uso :
    { "policy": "abc123polid" }

7. get_market_stats

  • Descripción : Obtenga estadísticas de todo el mercado.
  • Parámetros ( MarketStatsRequest ):
    { "quote": "string" // optional, default "ADA" }
  • Ejemplo de uso :
    { "quote": "USD" }

8. get_integration_asset

  • Descripción : Obtenga detalles del activo por ID (punto final de integración).
  • Parámetros ( IntegrationAssetRequest ):
    { "id": "string" // required: ID of the asset }
  • Ejemplo de uso :
    { "id": "asset123abc" }

9. get_asset_supply

  • Descripción : Obtenga suministro de activos en cadena.
  • Parámetros ( AssetSupplyRequest ):
    { "unit": "string" // required: token unit identifier }
  • Ejemplo de uso :
    { "unit": "lovelace" }

10. get_wallet_portfolio

  • Descripción : Obtenga posiciones de cartera de billetera.
  • Parámetros ( WalletPortfolioPositionsRequest ):
    { "address": "string" // required: wallet address }
  • Ejemplo de uso :
    { "address": "addr1xyz..." }

(Se pueden agregar puntos finales adicionales para tokens, NFT, onchain, etc. en el mismo formato si es necesario. Consulte la carpeta src/taptools_api_mcp/models/ para obtener más solicitudes posibles).

Despliegue

Puedes contener o alojar este servidor MCP de Python en servicios como AWS ECS, Azure Container Instances o Google Cloud Run. Asegúrate de almacenar de forma segura tu TAPTOOLS_API_KEY como secreto. Para una implementación basada en Docker:

# Example Dockerfile snippet FROM python:3.10-slim WORKDIR /app COPY . /app RUN pip install -e . # environment variable for TapTools API key ENV TAPTOOLS_API_KEY=your-real-taptools-api-key CMD ["python", "-m", "taptools_api_mcp"]

Nota : El servidor escucha en stdio por defecto, según la especificación de MCP. Para una implementación avanzada o una integración personalizada, puede adaptar server.py para que se ejecute con transportes alternativos (como sockets) si su entorno lo requiere.

-
security - not tested
A
license - permissive license
-
quality - not tested

Un servidor MCP basado en Python que integra la API TapTools, lo que permite que los modelos de IA obtengan datos de la cadena de bloques de Cardano, incluidos tokens, NFT, estadísticas de mercado e información de billetera, a través de herramientas estandarizadas.

  1. Features
    1. Quick Start
      1. Usage Example
        1. API Documentation: MCP Tools
          1. Deployment
            ID: ltabcci6zs