Ntropy MCP server

Enriquece datos bancarios usando la API de Ntropy.

Documentación

Ntropy MCP server

Servidor MCP para enriquecer datos bancarios utilizando la API de Ntropy. Esto permite que los agentes LLM que trabajan con datos financieros puedan llamar fácilmente a cualquiera de los endpoints de la API de Ntropy.

Componentes

Herramientas

El servidor implementa las siguientes herramientas para interactuar con la API de Ntropy:

  • check_connection: Verifica la conexión con la API de Ntropy

    • Devuelve: Información del estado de la conexión
  • set_api_key: Establece o actualiza la clave de API de Ntropy en tiempo de ejecución

    • Parámetros: api_key (string)
    • Devuelve: Estado de la actualización y validación de la clave de API
  • create_account_holder: Crea un titular de cuenta

    • Parámetros: id (string/int), type (string), name (string)
    • Devuelve: Los detalles del titular de cuenta creado
  • update_account_holder: Actualiza un titular de cuenta existente

    • Parámetros: id (string/int), name (string, opcional), type (string, opcional)
    • Devuelve: Los detalles del titular de cuenta actualizado
  • enrich_transaction: Enriquece una transacción bancaria

    • Parámetros: id (string/int), description (string), date (string), amount (float), entry_type (string), currency (string), account_holder_id (string/int), country (string, opcional)
    • Devuelve: Los datos de la transacción enriquecida
  • get_account_holder: Obtiene los detalles de un titular de cuenta

    • Parámetros: account_holder_id (string/int)
    • Devuelve: Detalles del titular de cuenta
  • list_transactions: Lista las transacciones de un titular de cuenta

    • Parámetros: account_holder_id (string/int), limit (int, default=10), offset (int, default=0)
    • Devuelve: Lista de transacciones
  • get_transaction: Obtiene los detalles de una transacción específica

    • Parámetros: transaction_id (string/int)
    • Devuelve: Detalles de la transacción
  • bulk_enrich_transactions: Enriquece múltiples transacciones a la vez

    • Parámetros: transactions (Lista de objetos de transacción)
    • Devuelve: Lista de transacciones enriquecidas
  • delete_account_holder: Elimina un titular de cuenta y todos los datos asociados

    • Parámetros: account_holder_id (string/int)
    • Devuelve: Estado de la eliminación
  • delete_transaction: Elimina una transacción específica

    • Parámetros: transaction_id (string/int)
    • Devuelve: Estado de la eliminación

Inicio rápido

Instalación

Primero, obtén tu clave de API de Ntropy creando una cuenta en ntropy.com. Asegúrate de reemplazar YOUR_NTROPY_API_KEY a continuación con tu clave de API real.

Ejecutar el servidor con uvx

uvx ntropy-mcp --api-key YOUR_NTROPY_API_KEY

Claude Desktop

El archivo de configuración de Claude Desktop suele ubicarse en:

En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

En Windows: %APPDATA%/Claude/claude_desktop_config.json

Añade lo siguiente al archivo de configuración si usas uvx:

  "mcpServers": {
    "ntropy-mcp": {
      "command": "uvx",
      "args": [
        "ntropy-mcp",
        "--api-key",
        "YOUR_NTROPY_API_KEY"
      ]
    }
  }

y lo siguiente si usas docker:

"mcpServers": {
  "ntropy-mcp": {
    "command": "docker",
    "args": [
      "run",
      "-i",
      "--rm",
      "ntropy-mcp"
      "--api-key",
      "YOUR_NTROPY_API_KEY"
    ]
  }
}

Ejemplo de uso

Verificar conexión

# Check if your API key is valid and the Ntropy API is accessible
connection_status = check_connection()
print(connection_status)

Crear y actualizar titulares de cuenta

# Create a new account holder
account_holder = create_account_holder(
    id="user123",
    type="individual",
    name="John Doe"
)

# Update an existing account holder
updated_account = update_account_holder(
    id="user123",
    name="John Smith"
)

Enriquecer transacciones

# Enrich a single transaction
enriched_transaction = enrich_transaction(
    id="tx123",
    description="AMAZON.COM*MK1AB6TE1",
    date="2023-05-15",
    amount=-29.99,
    entry_type="debit",
    currency="USD",
    account_holder_id="user123",
    country="US"
)

# Bulk enrich multiple transactions
transactions = [
    {
        "id": "tx124",
        "description": "NETFLIX.COM",
        "date": "2023-05-16",
        "amount": -13.99,
        "entry_type": "debit",
        "currency": "USD",
        "account_holder_id": "user123"
    },
    {
        "id": "tx125",
        "description": "Starbucks Coffee",
        "date": "2023-05-17",
        "amount": -5.65,
        "entry_type": "debit",
        "currency": "USD",
        "account_holder_id": "user123"
    }
]
enriched_transactions = bulk_enrich_transactions(transactions)

Depuración

Puedes usar el inspector de MCP para depurar el servidor. Para instalaciones con uvx:

npx @modelcontextprotocol/inspector uvx ntropy-mcp --api-key YOUR_NTROPY_API_KEY

Compilación

Compilación con Docker:

docker build -t ntropy-mcp .

Contribuciones

¡Las solicitudes de extracción son bienvenidas! Siéntete libre de contribuir con nuevas ideas, correcciones de errores o mejoras.

Licencia

ntropy-mcp está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.