by abhijay007
Power your e-commerce with BTCPayServer—secure Bitcoin payments, Lightning Network, and store management via 23 integrat
Connects to BTCPayServer's API to handle Bitcoin payments, manage stores, and process Lightning Network transactions. Provides access to 23+ services for Bitcoin payment processing and e-commerce integration.
BTCPayServer is a community-built MCP server published by abhijay007 that provides AI assistants with tools and capabilities via the Model Context Protocol. Power your e-commerce with BTCPayServer—secure Bitcoin payments, Lightning Network, and store management via 23 integrat It is categorized under finance, developer tools.
You can install BTCPayServer in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
BTCPayServer is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Add new capabilities to Claude beyond text generation
Example
Access external data sources, execute code, interact with tools and services
Transform Claude from chatbot to action-taking agent
Provide Claude with access to relevant context and data
Example
Load project documentation, access knowledge bases, query databases
Get more accurate, context-aware responses
Automate multi-step workflows combining AI and external tools
Example
Research → Summarize → Create document → Send notification
Complete complex tasks end-to-end without manual steps
Share your MCP server with the developer community
I recommend BTCPayServer for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
According to our notes, BTCPayServer benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
BTCPayServer has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
BTCPayServer has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
According to our notes, BTCPayServer benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
BTCPayServer is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
We evaluated BTCPayServer against two servers with overlapping tools; this profile had the clearer scope statement.
Strong directory entry: BTCPayServer surfaces stars and publisher context so we could sanity-check maintenance before adopting.
We wired BTCPayServer into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
BTCPayServer is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
showing 1-10 of 29
A comprehensive Model Context Protocol (MCP) server for BTCPayServer integration, providing tools for payment processing, store management, user administration, webhook handling and more with full API coverage.
<a href="https://glama.ai/mcp/servers/@Abhijay007/btcpayserver-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@Abhijay007/btcpayserver-mcp/badge" alt="btcpayserver-mcp MCP server" /> </a>The BTCPayServer MCP Server provides a streamlined set of tools for interacting with BTCPayServer APIs:
| Tool | Description | Primary Use |
|---|---|---|
get_service_info | Discover methods available for a service | Exploration and discovery |
get_method_info | Get detailed parameter requirements | Request preparation |
btcpay_request | Execute API calls to BTCPayServer | Performing operations |
For Claude Desktop integration, add this configuration to your claude_desktop_config.json:
{
"mcpServers": {
"btcpayserver-mcp": {
"command": "node",
"args": ["path/to/btcpayserver-mcp/dist/index.js"],
"env": {
"BTCPAY_BASE_URL": "https://your-btcpay-instance.com",
"BTCPAY_API_KEY": "your_api_key_here",
"BTCPAY_STORE_ID": "your_default_store_id"
}
}
}
}
BTCPayServer MCP provides access to BTCPayServer's complete API ecosystem. Check out the BTCPayServer API Documentation for detailed information about each service:
| Service | Description |
|---|---|
invoices | Create, manage, and track Bitcoin invoices for payments |
payment-requests | Create payment requests for donations or recurring billing |
lightning-internal | Manage internal Lightning Network operations |
lightning-store | Store-level Lightning Network configurations |
lightning-address | Lightning Address management and setup |
| Service | Description |
|---|---|
stores | Store creation, configuration, and management |
stores-email | Configure and manage store email settings and SMTP |
stores-payment-methods | Manage available payment methods for stores |
stores-payout-processors | Configure automated payout processing |
stores-payouts | Manage and process store payouts |
stores-rates | Exchange rate configuration and management |
stores-users | Store user access and permissions management |
stores-wallet | Store wallet management and operations |
| Service | Description |
|---|---|
users | User account management and administration |
api-keys | API key creation and permission management |
authorization | OAuth and authorization flow management |
| Service | Description |
|---|---|
webhooks | Real-time event notifications and webhook management |
notifications | System notifications and alerts |
apps | BTCPayServer app integrations and plugins |
pull-payments | Pull payment requests and refund management |
| Service | Description |
|---|---|
server-info | Server status, version, and configuration information |
For optimal interaction with the BTCPayServer API through MCP:
1. Discover: Use get_service_info to explore available methods
get_service_info(serviceName: "invoices")
2. Understand: Use get_method_info to learn parameter requirements
get_method_info(serviceName: "invoices", methodName: "create")
3. Execute: Use btcpay_request to perform the operation
btcpay_request(serviceName: "invoices", methodName: "create", parameters: {storeId: "your-store-id", amount: "10.00", currency: "USD"})
git clone <repository-url>
cd btcpayserver-mcp
npm install
npm run build
The MCP server requires the following environment variables:
BTCPAY_BASE_URL - Your BTCPayServer instance URL (e.g., https://btcpay.example.com)BTCPAY_API_KEY - Your BTCPayServer API keyBTCPAY_STORE_ID - (Optional) Default store ID for operationsbtcpay.store.canmodifystoresettingsbtcpay.store.cancreateinvoicebtcpay.user.canmodifyprofilebtcpay.store.webhooks.canmodifywebhooksCreate a .env file in your project root:
BTCPAY_BASE_URL=https://your-btcpay-instance.com
BTCPAY_API_KEY=your_api_key_here
BTCPAY_STORE_ID=your_default_store_id
Or set environment variables directly:
export BTCPAY_BASE_URL=https://your-btcpay-instance.com
export BTCPAY_API_KEY=your_api_key_here
export BTCPAY_STORE_ID=your_default_store_id
npm start
For development:
npm run dev
Using MCP Inspector: The MCP Inspector provides a visual interface for testing:
# Build the project
npm run build
# Start the inspector with the BTCPayServer MCP Server
npx @modelcontextprotocol/inspector node dist/index.js
Development Workflow:
npm installnpm run buildnode dist/index.jsThe MCP server provides comprehensive error handling:
All errors are properly formatted and returned with descriptive messages.
src/
├── index.ts # Main MCP server implementation
├── services/ # BTCPayServer service implementations
│ ├── base-service.ts # Base service class
│ ├── invoices.ts # Invoice management
│ ├── payment-requests.ts # Payment request handling
│ ├── stores.ts # Store management
│ ├── webhooks.ts # Webhook management
│ └── ... # Other service modules
├── utils/
│ └── btcpay-client.ts # BTCPayServer API client
└── types.ts # TypeScript type definitions
npm run build
npm run dev
This MCP server is compatible with BTCPayServer v1.7.0 and later. It uses the official BTCPayServer REST API v1.
MIT License - see LICENSE file for details.
For issues and questions:
Note: Some methods might not be working properly. Please help us by reporting requirements and making pull requests to improve them. Also, to keep it up with the latest API version, we need to continue updating it.
Prerequisites
Time Estimate
15-60 minutes depending on server complexity
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
Model Context Protocol standardizes how AI hosts (Claude, Cursor) communicate with external tools and data sources through server implementations.
Protocols
Compatibility
✓ Use when
Use when you need Claude to access external data, execute actions, or integrate with tools. Best for extending AI capabilities beyond conversation.
✗ Avoid when
Avoid when native integrations exist (use official APIs directly), for real-time critical systems, or when security/compliance requires zero external dependencies.