Skip to main content

MCP server for enriching banking data using the Ntropy API

Project description

Ntropy MCP server

MCP server for enriching banking data using the Ntropy API. This allows LLM agents that work with financial data to easily call any of the Ntropy API endpoints.

Components

Tools

The server implements the following tools to interact with the Ntropy API:

  • check_connection: Verify connection to the Ntropy API

    • Returns: Connection status information
  • set_api_key: Set or update the Ntropy API key at runtime

    • Parameters: api_key (string)
    • Returns: Status of the API key update and validation
  • create_account_holder: Create an account holder

    • Parameters: id (string/int), type (string), name (string)
    • Returns: The created account holder details
  • update_account_holder: Update an existing account holder

    • Parameters: id (string/int), name (string, optional), type (string, optional)
    • Returns: The updated account holder details
  • enrich_transaction: Enrich a bank transaction

    • Parameters: id (string/int), description (string), date (string), amount (float), entry_type (string), currency (string), account_holder_id (string/int), country (string, optional)
    • Returns: The enriched transaction data
  • get_account_holder: Get details of an account holder

    • Parameters: account_holder_id (string/int)
    • Returns: Account holder details
  • list_transactions: List transactions for an account holder

    • Parameters: account_holder_id (string/int), limit (int, default=10), offset (int, default=0)
    • Returns: List of transactions
  • get_transaction: Get details of a specific transaction

    • Parameters: transaction_id (string/int)
    • Returns: Transaction details
  • bulk_enrich_transactions: Enrich multiple transactions at once

    • Parameters: transactions (List of transaction objects)
    • Returns: List of enriched transactions
  • delete_account_holder: Delete an account holder and all associated data

    • Parameters: account_holder_id (string/int)
    • Returns: Deletion status
  • delete_transaction: Delete a specific transaction

    • Parameters: transaction_id (string/int)
    • Returns: Deletion status

Quickstart

Install

First, obtain your Ntropy API key by creating an account on ntropy.com. Make sure to replace YOUR_NTROPY_API_KEY below with your actual API key.

Run the server with uvx

uvx ntropy-mcp --api-key YOUR_NTROPY_API_KEY

Claude Desktop

The Claude Desktop configuration file is usually located at:

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

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

Add the following to the configuration file if using uvx:

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

and the following if using docker:

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

Example Usage

Check Connection

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

Create and Update Account Holders

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

Enrich Transactions

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

Debugging

You can use the MCP inspector to debug the server. For uvx installations:

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

Build

Docker build:

docker build -t ntropy-mcp .

Contributing

Pull requests are welcome! Feel free to contribute new ideas, bug fixes, or enhancements.

License

ntropy-mcp is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mseep_ntropy_mcp-0.1.1.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mseep_ntropy_mcp-0.1.1-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file mseep_ntropy_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: mseep_ntropy_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for mseep_ntropy_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 2e312ca766f00d3e9711aa561cc92ecdb6b0f746d6f5ab34cfae03ca37ba282f
MD5 9f0930b028d0caaae65b8a3203e89a27
BLAKE2b-256 2b6e439830acdfb09a873634ae1198754b4451af8302dfd548c78434c8dc9d30

See more details on using hashes here.

File details

Details for the file mseep_ntropy_mcp-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for mseep_ntropy_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d472cd85ea4ce596498d3990a31d012a03fb8aa5279b3a7d749a6b604e64c0f3
MD5 3bd64848976ad9ca404b929a0edda4c8
BLAKE2b-256 5e5172cf7b2d0a890df6de6d860f66a001fbd62a6d4796787537adf728d40bf2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page