Drops Commerce API- und MCP-Integration
Eine robuste Lösung für die Integration von Kryptowährungszahlungen mithilfe des MCP (Model Context Protocol), die es KI-Assistenten wie Claude ermöglicht, USDT-Transaktionen über die Gotas Commerce API zu erstellen und zu überprüfen.
🚀 Übersicht
Dieses Projekt schlägt eine Brücke zwischen KI-Assistenten und Kryptowährungs-Zahlungsdiensten. Mit dem implementierten MCP-Server können Assistenten Zahlungslinks generieren, den Transaktionsstatus überprüfen und detaillierte Informationen zu USDT-Zahlungen erhalten, ohne dass spezielle technische Blockchain-Kenntnisse erforderlich sind.
Related MCP server: MCP Coinbase Commerce Server
✨ Ressourcen
MCP-Werkzeuge
create-payment
Erstellt eine neue USDT-Zahlungstransaktion und gibt alle erforderlichen Details zurück, einschließlich Zahlungs-URL und Wallet-Adresse.
Parameter:
amount: Zahlungsbetrag (z. B. 100,50)currency: Währungscode (derzeit nur „USDT“)return_url: URL zur Weiterleitung des Kunden nach der Zahlungdescription: Optionale Zahlungsbeschreibung
Zurückkehren:
Vollständiges JSON-Objekt mit allen Zahlungsdetails:
Eindeutige Zahlungs-ID
Zahlungs-URL
Wallet-Adresse
Status (ausstehend, abgeschlossen, fehlgeschlagen, abgelaufen)
Erstellungs- und Ablaufdaten
Andere relevante Metadaten
check-payment-status
Es prüft den aktuellen Status einer bestehenden Zahlung anhand ihrer eindeutigen Kennung.
Parameter:
payment_id: Eindeutige ID der zu verifizierenden Zahlung
Zurückkehren:
Vollständiges JSON-Objekt mit aktuellem Zahlungsstatus
Zeitstempelinformationen für Erstellung, Ablauf und Abschluss (sofern zutreffend)
Blockchain-Transaktions-Hash (wenn die Zahlung bestätigt ist)
MCP-Ressourcen
payment-status://{payment_id}
Es stellt eine formatierte und vereinfachte Version des Zahlungsstatus als MCP-Ressource bereit.
Zurückkehren:
Formatierter Text mit den wichtigsten Zahlungsinformationen
Kennung, Status, Wert, Zeitstempel und Beschreibung
MCP-Eingabeaufforderungen
create-payment-prompt
Eine geführte Eingabeaufforderung, die dem Benutzer hilft, die zum Erstellen einer neuen Zahlung erforderlichen Informationen bereitzustellen.
🔧 Architektur
Der MCP-Server fungiert als Abstraktionsschicht über der Drops Commerce API und übersetzt API-Funktionen in Tools, Ressourcen und Eingabeaufforderungen, die von KI-Assistenten wie Claude problemlos verwendet werden können.
┌────────────────┐ ┌───────────────┐ ┌──────────────────┐
│ │ │ │ │ │
│ Assistente IA ├────┤ Servidor MCP ├────┤ API Gotas │
│ (Claude) │ │ (FastAPI) │ │ Commerce │
│ │ │ │ │ │
└────────────────┘ └───────────────┘ └──────────────────┘📋 Voraussetzungen
Python 3.8 oder höher
Gotas Commerce API-Schlüssel (erhalten unter: commerce.gotas.com )
Zugriff auf einen MCP-kompatiblen Assistenten (z. B. Claude)
🔌 Installation
Klonen Sie dieses Repository:
git clone https://github.com/caiovicentino/mcpGOTAS.git cd mcpGOTASInstallieren Sie Abhängigkeiten:
pip install -r requirements.txtOder verwenden Sie das automatisierte Setup-Skript:
./setup.batKonfigurieren Sie Umgebungsvariablen:
Erstellen Sie eine
.envDatei mit den folgenden Werten:GOTAS_API_KEY=sua_chave_api_aqui GOTAS_BASE_URL=https://commerce.gotas.com
🏃♂️ Ausführung
MCP-Server
Führen Sie den Server aus, um die Tools über MCP verfügbar zu machen:
uvicorn src.gotas_mcp_server:app --host 0.0.0.0 --port 8000Integration mit Claude Desktop
Zur direkten Verwendung mit Claude Desktop:
python install_claude.pyAlternativ können Sie die Installation auch manuell durchführen:
mcp install src.gotas_mcp_server.pyDirekte API-Nutzung (Testskripte)
Zum direkten Testen ohne Assistent:
Zahlung erstellen :
python test_client.pyStatus prüfen :
python check_payment.py
📊 Zahlungsfluss
Zahlungsinitialisierung :
Den Betrag und weitere Zahlungsdetails erfragt der Mitarbeiter vom Nutzer.
Der Assistent ruft das Tool
create-paymentmit den erforderlichen Parametern aufEine neue Zahlung wird in Gotas Commerce erstellt
Der Zahlungslink wird an den Benutzer zurückgegeben
Zahlungsvorgang :
Der Benutzer greift auf den bereitgestellten Zahlungslink zu
Der Benutzer überweist USDT an die angezeigte Wallet-Adresse
Gotas Commerce überwacht Blockchain zur Bestätigung von Transaktionen
Statusprüfung :
Der Assistent kann den Zahlungsstatus überprüfen, indem er
check-payment-status-status aufruft.Der Status kann sein: ausstehend, abgeschlossen, abgelaufen oder fehlgeschlagen.
Wenn die Zahlung bestätigt ist, wird der Blockchain-Transaktions-Hash verfügbar gemacht.
🔍 Technische Daten
API-Details
Drops Commerce API-Endpunkte :
Zahlung erstellen
POST /api/v1/paymentsAnforderungstext:
{ "amount": "100.00", "currency": "USDT", "return_url": "https://exemplo.com/retorno", "description": "Descrição do pagamento" }
Zahlungsstatus prüfen
GET /api/v1/payments/{payment_id}
MCP-Kommunikation
Transport : SSE (Server-Sent Events)
Format : JSON für die Kommunikation zwischen Assistent und MCP-Server
Authentifizierung : API-Schlüssel als Umgebungsvariable gespeichert
📂 Projektstruktur
├── src/
│ └── gotas_mcp_server.py # Implementação principal do servidor MCP
├── .env # Variáveis de ambiente (API key, etc.)
├── .smithery.json # Configuração para Smithery CLI
├── check_payment.py # Utilitário para verificar status de pagamentos
├── docsdaapigotas.md # Documentação detalhada da API
├── install_claude.py # Script para instalação no Claude Desktop
├── mcp.md # Documentação do servidor MCP
├── MCPPROTOCOLpython.MD # Documentação do protocolo MCP em Python
├── requirements.txt # Dependências do projeto
├── setup.bat # Script de configuração para Windows
├── smithery.json # Schema para integração com Smithery
└── test_client.py # Cliente de teste para criação de pagamentos🔒 Sicherheit
Der API-Schlüssel wird als Umgebungsvariable gespeichert, nicht im Quellcode
Die Kommunikation mit der Gotas Commerce API erfolgt über HTTPS
Der MCP-Server validiert alle Parameter vor dem Senden an die API
Richtige Fehlerbehandlung, um die Offenlegung vertraulicher Informationen zu vermeiden
🧩 Erweiterbarkeit
Das Projekt ist so konzipiert, dass es leicht erweitert werden kann:
Neue Funktionen : Fügen Sie neue MCP-Tools hinzu, die mit
@mcp.tool()dekorierte Funktionen auf dem Server implementierenIntegration mit anderen Diensten : Die Architektur ermöglicht Ihnen die einfache Integration anderer Dienste neben Gotas Commerce
Unterstützung neuer Münzen : Das Framework ist darauf vorbereitet, in Zukunft neben USDT auch andere Kryptowährungen zu unterstützen
📚 Anwendungsbeispiele
Erstellen einer Zahlung (über Claude)
Usuário: Preciso gerar um link de pagamento de 50 USDT.
Claude: Vou gerar um link de pagamento para você. Para qual URL devo configurar o redirecionamento após o pagamento?
Usuário: https://meusite.com.br/obrigado
Claude: [Utilizando ferramenta create-payment]
Criando pagamento de 50 USDT com redirecionamento para https://meusite.com.br/obrigado...
Pronto! Criei um link de pagamento para 50 USDT.
Link de pagamento: [URL gerado pela API]
Este link expirará em 30 minutos. O cliente deve transferir exatamente 50 USDT para o endereço da carteira mostrado na página de pagamento.Status prüfen (über Claude)
Usuário: Verifique o status do meu pagamento com ID xyz123.
Claude: [Utilizando ferramenta check-payment-status]
Verificando o status do pagamento ID xyz123...
O status atual do pagamento é: PENDENTE
- Valor: 50.00 USDT
- Criado em: [timestamp]
- Expira em: [timestamp]
O pagamento ainda não foi confirmado na blockchain. Você pode acompanhar usando o link de pagamento ou me pedir para verificar novamente mais tarde.📞 Support und Kontakt
Für Support oder weitere Informationen wenden Sie sich bitte an das Gotas-Entwicklungsteam oder öffnen Sie ein Problem im GitHub-Repository.