Bitnovo Pay

आधिकारिक

Bitnovo Pay के एकीकरण के लिए AI एजेंटों हेतु MCP सर्वर। Bitnovo Pay API के माध्यम से क्रिप्टोकरेंसी भुगतान क्षमताएँ प्रदान करता है। सुविधाओं में भुगतान निर्माण, स्थिति जाँच, QR कोड जनरेशन, और एकाधिक टनल प्रदाताओं (ngrok, zrok, manual) के साथ वेबहुक प्रबंधन शामिल हैं।

Bitnovo Pay MCP के साथ आप क्या कर सकते हैं?

  • ऑन-चेन क्रिप्टो भुगतान बनाएं — अपने सहायक से create_payment_onchain के माध्यम से किसी विशिष्ट सिक्के और यूरो राशि के लिए क्रिप्टोकरेंसी पता जनरेट करने का अनुरोध करें।
  • साझा करने योग्य भुगतान लिंक बनाएं — अपने सहायक से create_payment_link के माध्यम से एक वेब भुगतान URL बनवाएं जहां ग्राहक अपनी क्रिप्टो चुन सकें।
  • भुगतान स्थिति जांचेंget_payment_status का उपयोग करके किसी भी भुगतान की वर्तमान स्थिति और विवरण प्राप्त करें।
  • समर्थित मुद्राओं की सूची बनाएंlist_currencies_catalog का उपयोग करके उपलब्ध क्रिप्टोकरेंसी प्राप्त करें, जिन्हें वैकल्पिक रूप से न्यूनतम यूरो राशि द्वारा फ़िल्टर किया जा सकता है।
  • ब्रांडेड भुगतान QR जनरेट करेंgenerate_payment_qr के माध्यम से मौजूदा भुगतान के लिए उच्च-रिज़ॉल्यूशन QR कोड तैयार करें।
  • वेबहुक ईवेंट का निरीक्षण करेंget_webhook_events का उपयोग करके Bitnovo से प्राप्त रीयल-टाइम भुगतान सूचनाएं क्वेरी करें।

दस्तावेज़

MCP Bitnovo Pay

License: MIT Node.js MCP

AI एजेंटों के साथ Bitnovo Pay एकीकरण के लिए MCP सर्वर

एक मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) सर्वर जो AI एजेंटों को Bitnovo Pay API एकीकरण के माध्यम से क्रिप्टोकरेंसी भुगतान क्षमताएँ प्रदान करता है। यह सर्वर AI मॉडलों को भुगतान बनाने, भुगतान की स्थिति जाँचने, QR कोड प्रबंधित करने और क्रिप्टोकरेंसी कैटलॉग तक पहुँचने में सक्षम बनाता है।

🚀 विशेषताएँ

  • व्यापक भुगतान प्रबंधन के लिए 8 MCP उपकरण:

    • create_payment_onchain - सीधे भुगतान के लिए क्रिप्टोकरेंसी पते उत्पन्न करें
    • create_payment_link - रीडायरेक्ट हैंडलिंग के साथ वेब भुगतान URL बनाएँ
    • get_payment_status - विस्तृत जानकारी के साथ भुगतान की स्थिति पूछें
    • list_currencies_catalog - फ़िल्टरिंग के साथ समर्थित क्रिप्टोकरेंसी प्राप्त करें
    • generate_payment_qr - मौजूदा भुगतानों से कस्टम QR कोड उत्पन्न करें
    • get_webhook_events - रीयल-टाइम में प्राप्त वेबहुक ईवेंट पूछें
    • get_webhook_url - कॉन्फ़िगरेशन निर्देशों के साथ सार्वजनिक वेबहुक URL प्राप्त करें
    • get_tunnel_status - टनल कनेक्शन स्थिति का निदान करें
  • 3 टनल प्रदाताओं के साथ स्वचालित वेबहुक प्रणाली:

    • 🔗 ngrok: मुफ़्त स्थायी URL (प्रति खाता 1 स्थिर डोमेन)
    • 🌐 zrok: स्थायी URL के साथ 100% मुफ़्त ओपन-सोर्स
    • 🏢 manual: सार्वजनिक IP वाले सर्वरों के लिए (N8N, Opal, VPS)
  • बहु-LLM समर्थन - इसके साथ संगत:

    • 🤖 OpenAI ChatGPT (GPT-5, GPT-4o, Responses API, Agents SDK)
    • 🧠 Google Gemini (Gemini 2.5 Flash/Pro सितंबर 2025, CLI, FastMCP)
    • 🔮 Claude (Claude Desktop, Claude Code)
  • उच्च-गुणवत्ता वाले QR कोड (v1.1.0+):

    • 📱 आधुनिक डिस्प्ले के लिए 512px डिफ़ॉल्ट रिज़ॉल्यूशन (300px से बढ़ा)
    • 🖨️ पेशेवर मुद्रण के लिए 2000px तक का समर्थन
    • ✨ अनुकूलित इंटरपोलेशन एल्गोरिदम के साथ तीक्ष्ण किनारे
    • 🎨 सहज लोगो स्केलिंग के साथ कस्टम Bitnovo Pay ब्रांडिंग
  • डिफ़ॉल्ट रूप से गोपनीयता - लॉग में संवेदनशील डेटा छिपाया गया, न्यूनतम डेटा एक्सपोज़र

  • सुरक्षित - HTTPS प्रवर्तन, HMAC हस्ताक्षर सत्यापन, सुरक्षित गुप्त प्रबंधन

  • विश्वसनीय - अंतर्निहित पुनर्प्रयास तर्क, टाइमआउट हैंडलिंग, स्टेटलेस संचालन

📋 पूर्वापेक्षाएँ

  • Node.js 18+
  • Bitnovo Pay खाता जिसमें डिवाइस ID और वैकल्पिक डिवाइस सीक्रेट हो
  • पर्यावरण कॉन्फ़िगरेशन (नीचे सेटअप गाइड देखें)

⚡ त्वरित शुरुआत

1. अपने Bitnovo क्रेडेंशियल प्राप्त करें

  1. Bitnovo Pay पर साइन अप करें
  2. Bitnovo डैशबोर्ड से अपनी डिवाइस ID प्राप्त करें
  3. (वैकल्पिक) वेबहुक हस्ताक्षर सत्यापन के लिए एक डिवाइस सीक्रेट उत्पन्न करें

2. अपने MCP क्लाइंट को कॉन्फ़िगर करें

अपनी MCP क्लाइंट कॉन्फ़िग फ़ाइल में यह कॉन्फ़िगरेशन जोड़ें:

Claude Desktop के लिए (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com"
      }
    }
  }
}

OpenAI ChatGPT के लिए (OpenAI सेटअप गाइड देखें):

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com"
      }
    }
  }
}

3. अपने MCP क्लाइंट को पुनरारंभ करें

सर्वर लोड करने के लिए Claude Desktop, ChatGPT, या अपने MCP क्लाइंट को पुनरारंभ करें।

4. एकीकरण का परीक्षण करें

अपने AI सहायक से पूछें: "10 यूरो का भुगतान बनाएँ"


☁️ क्लाउड परिनियोजन (v1.2.0 में नया)

MCP Bitnovo Pay अब HTTP ट्रांसपोर्ट मोड के साथ क्लाउड प्लेटफ़ॉर्म पर दूरस्थ परिनियोजन का समर्थन करता है। यह claude.ai जैसे AI प्लेटफ़ॉर्म को आपके MCP सर्वर से दूरस्थ रूप से कनेक्ट करने में सक्षम बनाता है।

Railway पर परिनियोजित करें (अनुशंसित)

Deploy on Railway

त्वरित सेटअप:

  1. "Railway पर परिनियोजित करें" पर क्लिक करें या एक नया प्रोजेक्ट बनाएँ
  2. पर्यावरण चर सेट करें:
    • BITNOVO_DEVICE_ID - आपकी Bitnovo डिवाइस ID
    • BITNOVO_BASE_URL - https://pos.bitnovo.com
  3. परिनियोजित करें (Railway स्वचालित रूप से Dockerfile का पता लगाता है)
  4. अपना सार्वजनिक URL प्राप्त करें: https://your-app.up.railway.app

claude.ai से कनेक्ट करें:

  • सेटिंग्स → मॉडल कॉन्टेक्स्ट प्रोटोकॉल में सर्वर जोड़ें
  • सर्वर URL: https://your-app.up.railway.app/mcp

📖 पूर्ण गाइड: विस्तृत परिनियोजन निर्देशों, समस्या निवारण और कॉन्फ़िगरेशन के लिए RAILWAY.md देखें।

Docker पर परिनियोजित करें

# Build the image
docker build -t mcp-bitnovo-pay .

# Run with environment variables
docker run -d \
  -p 3000:3000 \
  -e PORT=3000 \
  -e BITNOVO_DEVICE_ID=your_device_id \
  -e BITNOVO_BASE_URL=https://pos.bitnovo.com \
  mcp-bitnovo-pay

अन्य प्लेटफ़ॉर्म पर परिनियोजित करें

सर्वर किसी भी प्लेटफ़ॉर्म पर काम करता है जो Node.js और Docker का समर्थन करता है:

  • Heroku: पर्यावरण चर के साथ Dockerfile पुश करें
  • Fly.io: fly.toml कॉन्फ़िगरेशन के साथ परिनियोजित करें
  • Google Cloud Run: Docker कंटेनर परिनियोजित करें
  • AWS ECS/Fargate: कार्य परिभाषा के साथ परिनियोजित करें

आवश्यक पर्यावरण चर:

  • PORT - HTTP पोर्ट (अधिकांश प्लेटफ़ॉर्म द्वारा स्वतः सेट)
  • BITNOVO_DEVICE_ID - आपकी Bitnovo डिवाइस ID
  • BITNOVO_BASE_URL - Bitnovo API URL

ट्रांसपोर्ट मोड का पता लगाना:

  • यदि PORT env var सेट है → HTTP मोड (दूरस्थ कनेक्शन)
  • यदि कोई PORT नहीं है → stdio मोड (स्थानीय कनेक्शन)

📦 स्थापना विकल्प

विकल्प A: npx का उपयोग करना (अनुशंसित)

कोई स्थापना आवश्यक नहीं! npx कमांड स्वचालित रूप से नवीनतम संस्करण डाउनलोड और चलाता है।

npx -y @bitnovopay/mcp-bitnovo-pay

लाभ:

  • ✅ हमेशा नवीनतम संस्करण प्राप्त करें
  • ✅ कोई मैन्युअल अपडेट आवश्यक नहीं
  • ✅ कोई स्थानीय स्थापना आवश्यक नहीं
  • ✅ तुरंत काम करता है

विकल्प B: रिपॉजिटरी क्लोन करें (विकास के लिए)

योगदानकर्ताओं या उन्नत उपयोगकर्ताओं के लिए जिन्हें कोड संशोधित करने की आवश्यकता है:

# Clone the repository
git clone https://github.com/bitnovo/mcp-bitnovo-pay.git
cd mcp-bitnovo-pay

# Or install from npm
npm install -g @bitnovopay/mcp-bitnovo-pay

# Install dependencies
npm install

# Build the project
npm run build

# Run locally
npm start

लाभ:

  • ✅ स्रोत कोड पर पूर्ण नियंत्रण
  • ✅ परिवर्तनों को संशोधित और परीक्षण करने की क्षमता
  • ✅ परियोजना में योगदान के लिए आदर्श

🔧 LLM प्लेटफ़ॉर्म द्वारा कॉन्फ़िगरेशन

अपना AI प्लेटफ़ॉर्म चुनें और विशिष्ट सेटअप गाइड का पालन करें:

Claude Desktop (Anthropic)

कॉन्फ़िग फ़ाइल स्थान: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) गाइड: Claude सेटअप गाइड

मूल कॉन्फ़िगरेशन:

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com"
      }
    }
  }
}

वेबहुक के साथ (रीयल-टाइम भुगतान सूचनाओं के लिए):

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com",
        "BITNOVO_DEVICE_SECRET": "your_device_secret_hex",
        "WEBHOOK_ENABLED": "true",
        "TUNNEL_ENABLED": "true",
        "TUNNEL_PROVIDER": "ngrok",
        "NGROK_AUTHTOKEN": "your_ngrok_token",
        "NGROK_DOMAIN": "your-domain.ngrok-free.app"
      }
    }
  }
}

OpenAI ChatGPT

गाइड: OpenAI सेटअप गाइड समर्थित: GPT-5, GPT-4o, Responses API, Agents SDK

मूल कॉन्फ़िगरेशन:

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com"
      }
    }
  }
}

Google Gemini

गाइड: Gemini सेटअप गाइड समर्थित: Gemini 2.5 Flash/Pro (सितंबर 2025), CLI, FastMCP

मूल कॉन्फ़िगरेशन:

{
  "mcpServers": {
    "bitnovo-pay": {
      "command": "npx",
      "args": ["-y", "@bitnovopay/mcp-bitnovo-pay"],
      "env": {
        "BITNOVO_DEVICE_ID": "your_device_id_here",
        "BITNOVO_BASE_URL": "https://pos.bitnovo.com"
      }
    }
  }
}

पर्यावरण चर

चरआवश्यकविवरणउदाहरण
BITNOVO_DEVICE_ID✅ हाँआपका Bitnovo Pay डिवाइस पहचानकर्ता12345678-abcd-1234-abcd-1234567890ab
BITNOVO_BASE_URL✅ हाँBitnovo API एंडपॉइंटhttps://pos.bitnovo.com (उत्पादन)
https://payments.pre-bnvo.com (विकास)
BITNOVO_DEVICE_SECRET⚠️ वैकल्पिकवेबहुक सत्यापन के लिए HMAC गुप्तyour_hex_secret
WEBHOOK_ENABLED⚠️ वैकल्पिकवेबहुक सर्वर सक्षम करेंtrue या false
TUNNEL_ENABLED⚠️ वैकल्पिकवेबहुक के लिए ऑटो-स्टार्ट टनलtrue या false
TUNNEL_PROVIDER⚠️ वैकल्पिकटनल प्रदाताngrok, zrok, या manual

सुरक्षा नोट: कभी भी क्रेडेंशियल्स को संस्करण नियंत्रण में कमिट न करें। पर्यावरण चर या सुरक्षित गुप्त प्रबंधन का उपयोग करें।

🛠️ MCP उपकरण संदर्भ

भुगतान निर्माण

create_payment_onchain

सीधे लेन-देन के लिए एक विशिष्ट पते के साथ क्रिप्टोकरेंसी भुगतान बनाता है।

कब उपयोग करें: उपयोगकर्ता एक क्रिप्टोकरेंसी निर्दिष्ट करता है (Bitcoin, ETH, USDC, आदि)

{
  "amount_eur": 50.0,
  "input_currency": "BTC",
  "notes": "Coffee payment"
}

create_payment_link

एक वेब-आधारित भुगतान URL बनाता है जहाँ ग्राहक अपनी क्रिप्टोकरेंसी चुन सकते हैं।

कब उपयोग करें: विशिष्ट क्रिप्टो उल्लेख के बिना सामान्य भुगतान अनुरोध (डिफ़ॉल्ट विकल्प)

{
  "amount_eur": 50.0,
  "url_ok": "https://mystore.com/success",
  "url_ko": "https://mystore.com/cancel",
  "notes": "Order #1234"
}

भुगतान प्रबंधन

get_payment_status

विस्तृत जानकारी के साथ वर्तमान भुगतान स्थिति प्राप्त करता है।

{
  "identifier": "payment_id_here"
}

स्थिति कोड:

  • NR (तैयार नहीं): पूर्व-भुगतान बनाया गया, कोई क्रिप्टो असाइन नहीं किया गया
  • PE (लंबित): ग्राहक भुगतान की प्रतीक्षा में
  • AC (पूर्णता की प्रतीक्षा): मेमपूल में क्रिप्टो का पता चला
  • CO (पूर्ण): ब्लॉकचेन पर भुगतान की पुष्टि
  • EX (समाप्त): भुगतान समय सीमा पार हो गई
  • CA (रद्द): भुगतान रद्द कर दिया गया
  • FA (विफल): लेन-देन पुष्टि करने में विफल

list_currencies_catalog

वैकल्पिक राशि-आधारित फ़िल्टरिंग के साथ उपलब्ध क्रिप्टोकरेंसी प्राप्त करता है।

{
  "filter_by_amount": 25.0
}

generate_payment_qr

उच्च-गुणवत्ता वाले आउटपुट के साथ मौजूदा भुगतानों के लिए कस्टम QR कोड बनाता है।

{
  "identifier": "payment_id_here",
  "qr_type": "both",
  "size": 512,
  "style": "branded"
}

QR प्रकार:

  • address: केवल क्रिप्टो पता (ग्राहक मैन्युअल रूप से राशि दर्ज करता है)
  • payment_uri: पता + राशि शामिल (अनुशंसित)
  • both: दोनों प्रकार उत्पन्न करें (अनुशंसित)
  • gateway_url: भुगतान गेटवे URL का QR

QR आकार विकल्प (v1.1.0+):

  • डिफ़ॉल्ट: 512px (आधुनिक डिस्प्ले के लिए अनुकूलित)
  • सीमा: 100px - 2000px
  • अनुशंसित आकार:
    • 512px: मोबाइल और वेब डिस्प्ले
    • 800-1200px: मानक मुद्रण
    • 1600-2000px: उच्च-गुणवत्ता मुद्रण (पोस्टर, स्टैंड)

गुणवत्ता सुधार (v1.1.0):

  • ✨ QR पैटर्न के लिए nearest कर्नेल इंटरपोलेशन के साथ तीक्ष्ण किनारे
  • 🎯 lanczos3 कर्नेल के साथ उच्च-गुणवत्ता वाली लोगो स्केलिंग
  • 📦 अनुकूली फ़िल्टरिंग के साथ PNG संपीड़न स्तर 6
  • 🖼️ बेहतर स्पष्टता के लिए डिफ़ॉल्ट आकार 300px से बढ़ाकर 512px किया गया

वेबहुक उपकरण

get_webhook_events

Bitnovo Pay API से रीयल-टाइम में प्राप्त वेबहुक ईवेंट पूछें।

कब उपलब्ध: WEBHOOK_ENABLED=true

{
  "identifier": "payment_id_here",
  "limit": 50,
  "validated_only": true
}

get_webhook_url

Bitnovo पैनल के लिए कॉन्फ़िगरेशन निर्देशों के साथ सार्वजनिक वेबहुक URL प्राप्त करें।

कब उपलब्ध: WEBHOOK_ENABLED=true

{
  "validate": true
}

get_tunnel_status

टनल कनेक्शन स्थिति का निदान करें (ngrok, zrok, या manual)।

कब उपलब्ध: WEBHOOK_ENABLED=true

{}

📚 दस्तावेज़ीकरण

🏗️ विकास

उपलब्ध स्क्रिप्ट

npm run build        # Compile TypeScript to JavaScript
npm run dev          # Run development server with hot reload
npm start            # Start production server
npm test             # Run test suite
npm run test:watch   # Run tests in watch mode
npm run lint         # Run ESLint
npm run format       # Format code with Prettier

आर्किटेक्चर

┌─────────────────┐
│   MCP Tools     │ ← 8 tools: 5 payment + 3 webhook
│ (src/tools/)    │
├─────────────────┤
│   Services      │ ← Business logic: PaymentService, CurrencyService
│ (src/services/) │
├─────────────────┤
│   API Client    │ ← Bitnovo API integration with retry logic
│ (src/api/)      │
├─────────────────┤
│ Webhook Server  │ ← HTTP Express + Event Store + Tunnel Manager
│ (src/webhook-*) │
├─────────────────┤
│   Utilities     │ ← Logging, validation, error handling, crypto
│ (src/utils/)    │
└─────────────────┘

दोहरी-सर्वर आर्किटेक्चर

MCP सर्वर एक साथ दो सर्वर चला सकता है:

┌─────────────────────────────────────────────────────────┐
│             MCP Bitnovo Pay Server                      │
│                                                         │
│  ┌──────────────┐  ┌──────────────────┐ ┌────────────┐│
│  │ MCP Server   │  │ Webhook Server   │ │  Tunnel    ││
│  │ (stdio)      │  │ (HTTP :3000)     │ │  Manager   ││
│  └──────┬───────┘  └────────┬─────────┘ └──────┬─────┘│
│         │                   │                   │      │
│         │    Event Store    │     Public URL    │      │
│         │   (in-memory)     │   (ngrok/zrok)    │      │
│         └──────────┬────────┴──────────┬────────┘      │
└────────────────────┼───────────────────┼───────────────┘
                     │                   │
            ┌────────┴────────┐  ┌───────┴────────┐
            │                 │  │                │
       Claude Desktop   Bitnovo API    Tunnel Provider
       (MCP Tools)      (Webhooks)    (ngrok/zrok/manual)

🔒 सुरक्षा

  • केवल HTTPS - सभी API कॉल HTTPS का उपयोग करते हैं
  • HMAC सत्यापन - SHA-256 के साथ वेबहुक हस्ताक्षर सत्यापन
  • रीप्ले अटैक रोकथाम - 5-मिनट TTL के साथ नॉन्स कैशिंग
  • डेटा गोपनीयता - लॉग में संवेदनशील जानकारी छिपाई जाती है
  • कोई दर डेटा नहीं - अशुद्धियों को रोकने के लिए विनिमय दरें उजागर नहीं की जातीं
  • स्टेटलेस डिज़ाइन - कोई स्थानीय स्थायित्व नहीं, रीयल-टाइम API प्रश्न
  • ऑटो-रीकनेक्शन - टनल के लिए 10 पुनर्प्रयासों तक एक्सपोनेंशियल बैकऑफ़
  • स्वास्थ्य निगरानी - हर 60 सेकंड में कनेक्शन सत्यापन

📄 लाइसेंस

यह परियोजना MIT लाइसेंस के तहत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।

🤝 योगदान

  1. रिपॉजिटरी को फोर्क करें
  2. अपनी सुविधा शाखा बनाएँ (git checkout -b feature/amazing-feature)
  3. अपने परिवर्तन कमिट करें (git commit -m 'Add amazing feature')
  4. शाखा में पुश करें (git push origin feature/amazing-feature)
  5. एक पुल अनुरोध खोलें

📞 समर्थन

🌟 संबंधित