Integrations
Uses environment variables for storing and accessing API keys and configuration settings securely without hardcoding them in the source code.
Implements the MCP server using FastAPI as the framework, providing endpoints for payment creation and status verification that bridge Claude with the Gotas Commerce API.
Built using Python for implementing the MCP server functionality, handling API requests, and processing payment data from the Gotas Commerce platform.
Drops Commerce API & MCP Integration
A robust solution for cryptocurrency payments integration using the MCP (Model Context Protocol), allowing AI assistants like Claude to create and verify USDT transactions through the Gotas Commerce API.
🚀 Overview
This project provides a bridge between AI assistants and cryptocurrency payment services. With the MCP server implemented, assistants can generate payment links, check transaction status, and obtain detailed information about USDT payments without requiring specialized blockchain technical knowledge.
✨ Resources
MCP Tools
create-payment
Creates a new USDT payment transaction and returns all required details including payment URL and wallet address.
Parameters:
amount
: Payment amount (ex: 100.50)currency
: Currency code (currently just "USDT")return_url
: URL to redirect the customer after paymentdescription
: Optional payment description
Return:
- Complete JSON object with all payment details:
- Unique Payment ID
- Payment URL
- Wallet address
- Status (pending, completed, failed, expired)
- Creation and expiration dates
- Other relevant metadata
check-payment-status
It checks the current status of an existing payment through its unique identifier.
Parameters:
payment_id
: Unique ID of the payment to be verified
Return:
- Full JSON object with current payment status
- Timestamp information for creation, expiration, and completion (where applicable)
- Blockchain transaction hash (when payment is confirmed)
MCP Resources
payment-status://{payment_id}
It provides a formatted and simplified version of the payment status as an MCP resource.
Return:
- Formatted text with the most relevant payment information
- Identifier, status, value, timestamps, and description
MCP Prompts
create-payment-prompt
A guided prompt to help the user provide the information needed to create a new payment.
🔧 Architecture
The MCP server acts as an abstraction layer over the Drops Commerce API, translating API capabilities into tools, resources, and prompts that are easily usable by AI assistants like Claude.
📋 Prerequisites
- Python 3.8 or higher
- Gotas Commerce API Key (get it at: commerce.gotas.com )
- Access to an MCP-compatible assistant (such as Claude)
🔌 Installation
- Clone this repository:Copy
- Install dependencies:Or use the automated setup script:CopyCopy
- Configure environment variables:
- Create a
.env
file with the following values:Copy
- Create a
🏃♂️ Execution
MCP Server
Run the server to make the tools available via MCP:
Integration with Claude Desktop
To use directly with Claude Desktop:
Alternatively, install manually:
Direct API Usage (Test Scripts)
For direct testing without a wizard:
- Create payment :
python test_client.py
- Check status :
python check_payment.py
📊 Payment Flow
- Payment Initialization :
- The attendant obtains the amount and other payment details from the user.
- The wizard calls the
create-payment
tool with the required parameters - A new payment is created in Gotas Commerce
- The payment link is returned to the user
- Payment Process :
- The user accesses the payment link provided
- User transfers USDT to the displayed wallet address
- Gotas Commerce monitors blockchain to confirm transaction
- Status Check :
- The assistant can check the payment status by calling
check-payment-status
status - The status can be: pending, completed, expired or failed.
- When the payment is confirmed, the blockchain transaction hash is made available.
- The assistant can check the payment status by calling
🔍 Technical Specifications
API Details
Drops Commerce API Endpoints :
- Create Payment
POST /api/v1/payments
- Request body:Copy
- Check Payment Status
GET /api/v1/payments/{payment_id}
MCP Communication
- Transport : SSE (Server-Sent Events)
- Format : JSON for communication between assistant and MCP server
- Authentication : API key stored as environment variable
📂 Project Structure
🔒 Security
- The API key is stored as an environment variable, not in the source code
- Communication with Gotas Commerce API is done via HTTPS
- The MCP server validates all parameters before sending to the API
- Proper error handling to avoid exposing sensitive information
🧩 Extensibility
The project is designed to be easily extended:
- New Features : Add new MCP tools implementing functions decorated with
@mcp.tool()
on the server - Integration with Other Services : The architecture allows you to easily integrate other services besides Gotas Commerce
- New Coin Support : The framework is prepared to support other cryptocurrencies besides USDT in the future
📚 Usage Examples
Creating a Payment (via Claude)
Checking Status (via Claude)
📞 Support and Contact
For support or additional information, please contact the Gotas development team or open an issue in the GitHub repository.
📜 License
This server cannot be installed
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.
A bridge between AI assistants and crypto payment services that enable creating and verifying USDT transactions through the Drops Commerce API.
Related MCP Servers
- -securityFlicense-qualityEnables secure interactions with cryptocurrency daemon RPC interfaces through AI assistants, supporting transaction management, wallet operations, and daemon monitoring for Bitcoin-derived cryptocurrencies.Last updated -1TypeScript
- -securityAlicense-qualityA secure system enabling AI assistants to interact with blockchain data and prepare transactions while ensuring users maintain exclusive control over their private keys and transaction signing.Last updated -3TypeScriptMIT License
- AsecurityAlicenseAqualityProvides tools for AI assistants to interact with the Ethereum blockchain through standard JSON-RPC methods, enabling queries for account balances, gas prices, and smart contract code.Last updated -63JavaScriptMIT License
- -securityFlicense-qualityConnects to the Coinbase Commerce API, allowing AI assistants like Claude to generate cryptocurrency payment links.Last updated -TypeScript