Bitrefill MCP Server

Bitrefill MCP Server

By bitrefill GitHub

A Model Context Protocol Server connector for Bitrefill public API, to enable AI agents to search and shop on Bitrefill.

agent ai
Overview

What is Bitrefill MCP Server?

Bitrefill MCP Server is a TypeScript-based Model Context Protocol (MCP) server that connects to the Bitrefill public API, enabling AI agents to search for and shop for gift cards, mobile top-ups, and more.

How to use Bitrefill MCP Server?

To use the Bitrefill MCP Server, install it via Smithery or Docker, and configure it in your AI assistant settings to allow it to communicate with the Bitrefill API for product searches and details.

Key features of Bitrefill MCP Server?

  • Access to a wide range of Bitrefill services including gift cards and mobile top-ups.
  • Implements the Model Context Protocol for seamless integration with AI assistants.
  • Provides structured JSON responses for easy processing by AI.

Use cases of Bitrefill MCP Server?

  1. Enabling AI assistants to help users find and purchase gift cards.
  2. Allowing users to top up their mobile phones through AI interactions.
  3. Facilitating product searches for various digital goods via AI agents.

FAQ from Bitrefill MCP Server?

  • What is the Model Context Protocol (MCP)?

MCP is a protocol that allows AI assistants to communicate with external services like Bitrefill.

  • Is Bitrefill MCP Server free to use?

Yes! The server is open-source and free to use.

  • How do I install Bitrefill MCP Server?

You can install it via Smithery or Docker, following the installation instructions provided in the documentation.

Content

Bitrefill MCP Server

smithery badge

A TypeScript-based MCP server that provides access to Bitrefill services, allowing you to search for gift cards, mobile topups, and more. This server implements the Model Context Protocol to expose Bitrefill functionality to AI assistants.

How It Works

The server operates using the Model Context Protocol (MCP) to communicate with Claude and similar AI assistants. It:

  1. Runs as a standalone process using stdio for communication
  2. Registers resources and tools for accessing Bitrefill services
  3. Interfaces with the Bitrefill API to provide product search and details
  4. Returns structured JSON responses that can be processed by AI assistants

Architecture

The app server follows this architecture:

src/
├── index.ts                # Main entry point
├── constants/              # Static data
│   ├── categories.ts       # Product categories
│   └── payment_methods.ts  # Payment methods
├── handlers/               # MCP request handlers
│   ├── resources.ts        # Resource endpoints
│   └── tools.ts            # Tool implementations
├── schemas/                # Data validation schemas
│   ├── detail.ts           # Product detail response types
│   ├── invoice.ts          # Invoice schemas
│   ├── misc.ts             # Miscellaneous schemas
│   ├── order.ts            # Order schemas
│   └── search.ts           # Search parameters and response types
├── services/               # API services
│   ├── invoices.ts         # Invoice service
│   ├── misc.ts             # Miscellaneous services
│   ├── orders.ts           # Order services
│   ├── products.ts         # Product details service
│   └── search.ts           # Search functionality
└── utils/                  # Utility functions
    ├── index.ts            # Error logging, etc.
    └── api/                # API clients
        ├── authenticated.ts # Authenticated API client
        ├── base.ts         # Base API client
        └── public.ts       # Public API client

Features

Resources

  • bitrefill://product-types - List of available product types on Bitrefill
  • bitrefill://categories/{type} - List of available categories for a specific product type (e.g., bitrefill://categories/gift-cards)

Tools

  • search - Search for gift cards, esims, mobile topups and more

    • Required: query (e.g., 'Amazon', 'Netflix', 'AT&T' or '*' for all)
    • Optional: country, language, limit, skip, category
  • detail - Get detailed information about a product

    • Required: id (product identifier)
  • categories - Get the full product type/categories map

    • No required parameters
  • create_invoice - Create a new invoice for purchasing products (requires API key)

    • Required: products (array of products to include in the invoice)
      • Each product requires: product_id
      • Optional product fields: quantity, value, package_id, phone_number, email, send_email, send_sms
    • Required: payment_method (one of: "balance", "bitcoin", "lightning")
    • Optional: webhook_url, auto_pay
  • get_invoices - Retrieve a list of invoices with optional filtering

    • Optional: start, limit, after, before
  • get_invoice - Retrieve details for a specific invoice by ID

    • Required: id (invoice identifier)
  • pay_invoice - Pay an unpaid invoice (only works with 'balance' payment method)

    • Required: id (invoice identifier)
  • get_orders - Retrieve a list of orders with optional filtering

    • Optional: start, limit, after, before
  • get_order - Retrieve details for a specific order by ID

    • Required: id (order identifier)
  • unseal_order - Reveal codes and PINs for a specific order by ID

    • Required: id (order identifier)
  • get_account_balance - Retrieve your account balance

    • No required parameters
  • ping - Check if the Bitrefill API is available

    • No required parameters

Configuration

API Key Setup

To use the all the tools that rely on the Bitrefill API except for search, categories and detail, you need to set up Bitrefill API credentials:

  1. Create a Bitrefill account
  2. Ask for a developer API key by filing a request on this form
  3. Create a .env file in the root directory (you can copy from .env.example)
  4. Add your Bitrefill API credentials:
    BITREFILL_API_SECRET=your_api_key_here
    BITREFILL_API_ID=your_api_id_here
    

The create_invoice tool will only be available if the API credentials are set. If the API credentials are not set, the tool will not be registered and won't appear in the list of available tools.

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Installation

Installing via Smithery

To install Bitrefill for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @bitrefill/bitrefill-mcp-server --client claude

Claude Desktop

Add the server config at:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "bitrefill": {
      "command": "npx",
      "args": ["-y", "bitrefill-mcp-server"],
      "env": {
        "BITREFILL_API_SECRET": "your_api_key_here",
        "BITREFILL_API_ID": "your_api_id_here"
      }
    }
  }
}

Cline

  1. Open the Cline extension settings
  2. Open "MCP Servers" tab
  3. Click on "Configure MCP Servers"
  4. Add the server config:
{
  "mcpServers": {
    "github.com/bitrefill/bitrefill-mcp-server": {
      "command": "npx",
      "args": ["-y", "bitrefill-mcp-server"],
      "disabled": false,
      "autoApprove": ["search", "detail", "categories"],
      "env": {
        "BITREFILL_API_ID": "your_api_id_here",
        "BITREFILL_API_SECRET": "your_api_key_here"
      }
    }
  }
}

Additional Cline configuration options:

  • disabled: Set to false to enable the server
  • autoApprove: List of tools that don't require explicit approval for each use

Cursor

  1. Open the Cursor settings
  2. Open "Features" settings
  3. In the "MCP Servers" section, click on "Add new MCP Server"
  4. Choose a name, and select "command" as "Type"
  5. In the "Command" field, enter the following:
npx -y bitrefill-mcp-server
  1. (Optional) If you're using the create_invoice tool, add environment variables:
    • BITREFILL_API_SECRET: your_api_key_here
    • BITREFILL_API_ID: your_api_id_here

Docker

You can also run the server using Docker. First, build the image:

docker build -t bitrefill-mcp-server .

Then run the container:

docker run -e BITREFILL_API_SECRET=your_api_key_here -e BITREFILL_API_ID=your_api_id_here bitrefill-mcp-server

For development, you might want to mount your source code as a volume:

docker run -v $(pwd):/app --env-file .env bitrefill-mcp-server
No tools information available.

A Model Context Protocol server for integrating HackMD's note-taking platform with AI assistants.

YouTube MCP Server
YouTube MCP Server by IA-Programming

YouTube MCP Server is an AI-powered solution designed to revolutionize your YouTube experience. It empowers users to search for YouTube videos, retrieve detailed transcripts, and perform semantic searches over video content—all without relying on the official API. By integrating with a vector database, this server streamlines content discovery.

youtube ai
View Details

🤖 The Semantic Engine for Model Context Protocol(MCP) Clients and AI Agents 🔥

agent semantic
View Details

MCP Deep Research Server using Gemini creating a Research AI Agent

research ai
View Details
MCP-Mealprep
MCP-Mealprep by JoshuaRL

This project takes a number of MCP servers from GitHub locations, packages them together with this repo's GHCR container, and launches them with docker-compose to run as a stack for ML/AI resources.

docker ai
View Details

Send Nano currency from AI agents/LLMs

agent crypto
View Details

BioMCP: Biomedical Model Context Protocol

bioinformatics ai
View Details