Ntropy MCP server

Enriqueça dados bancários usando a API Ntropy.

Documentação

Ntropy MCP server

Servidor MCP para enriquecer dados bancários usando a API Ntropy. Isso permite que agentes LLM que trabalham com dados financeiros chamem facilmente qualquer um dos endpoints da API Ntropy.

Componentes

Ferramentas

O servidor implementa as seguintes ferramentas para interagir com a API Ntropy:

  • check_connection: Verificar conexão com a API Ntropy

    • Retorna: Informações de status da conexão
  • set_api_key: Definir ou atualizar a chave da API Ntropy em tempo de execução

    • Parâmetros: api_key (string)
    • Retorna: Status da atualização e validação da chave da API
  • create_account_holder: Criar um titular de conta

    • Parâmetros: id (string/int), type (string), name (string)
    • Retorna: Detalhes do titular de conta criado
  • update_account_holder: Atualizar um titular de conta existente

    • Parâmetros: id (string/int), name (string, opcional), type (string, opcional)
    • Retorna: Detalhes do titular de conta atualizado
  • enrich_transaction: Enriquecer uma transação bancária

    • Parâmetros: id (string/int), description (string), date (string), amount (float), entry_type (string), currency (string), account_holder_id (string/int), country (string, opcional)
    • Retorna: Os dados da transação enriquecida
  • get_account_holder: Obter detalhes de um titular de conta

    • Parâmetros: account_holder_id (string/int)
    • Retorna: Detalhes do titular de conta
  • list_transactions: Listar transações de um titular de conta

    • Parâmetros: account_holder_id (string/int), limit (int, padrão=10), offset (int, padrão=0)
    • Retorna: Lista de transações
  • get_transaction: Obter detalhes de uma transação específica

    • Parâmetros: transaction_id (string/int)
    • Retorna: Detalhes da transação
  • bulk_enrich_transactions: Enriquecer várias transações de uma vez

    • Parâmetros: transactions (Lista de objetos de transação)
    • Retorna: Lista de transações enriquecidas
  • delete_account_holder: Excluir um titular de conta e todos os dados associados

    • Parâmetros: account_holder_id (string/int)
    • Retorna: Status da exclusão
  • delete_transaction: Excluir uma transação específica

    • Parâmetros: transaction_id (string/int)
    • Retorna: Status da exclusão

Início Rápido

Instalação

Primeiro, obtenha sua chave da API Ntropy criando uma conta em ntropy.com. Certifique-se de substituir YOUR_NTROPY_API_KEY abaixo pela sua chave real da API.

Execute o servidor com uvx

uvx ntropy-mcp --api-key YOUR_NTROPY_API_KEY

Claude Desktop

O arquivo de configuração do Claude Desktop geralmente está localizado em:

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

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

Adicione o seguinte ao arquivo de configuração se estiver usando uvx:

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

e o seguinte se estiver usando docker:

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

Exemplo de Uso

Verificar Conexão

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

Criar e Atualizar Titulares de Conta

# 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 Transações

# 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)

Depuração

Você pode usar o inspetor MCP para depurar o servidor. Para instalações via uvx:

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

Compilação

Compilação Docker:

docker build -t ntropy-mcp .

Contribuição

Pull requests são bem-vindos! Sinta-se à vontade para contribuir com novas ideias, correções de bugs ou melhorias.

Licença

ntropy-mcp é licenciado sob a Licença MIT. Isso significa que você é livre para usar, modificar e distribuir o software, sujeito aos termos e condições da Licença MIT. Para mais detalhes, consulte o arquivo LICENSE no repositório do projeto.