Alby Bitcoin Payments MCP
Connect any bitcoin lightning wallet to agents to send and receive payments instantly at low cost.
⚡Config Installation
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"alby-bitcoin-payments-mcp": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-alby-bitcoin-payments-mcp"
]
}
}
}* Note: Requires restart of Claude Desktop app.
Deployment Infrastructure
Adoption Framework for Alby Bitcoin Payments MCP
Before installing any skill, define a clear objective and measurable outcome. A useful implementation question is: what workflow becomes faster, safer, or more reliable after this skill is active? If that answer is vague, delay rollout and tighten scope first.
For most teams, a low-risk pattern is preview-first rollout with one owner, one test scenario, and one rollback plan. Capture failures in a structured log so quality decisions are evidence-based. This is especially important for skills that touch file systems, external APIs, or automation chains with downstream side effects.
- Define success metrics before installation.
- Validate permission scope against policy boundaries.
- Run one controlled pilot and document failure categories.
- Promote only after acceptance checks pass consistently.
Pre-Deployment Review Questions
Use these questions before enabling the skill in shared environments. They reduce surprise incidents and make approval decisions consistent across teams.
- What data can this skill read, write, or transmit by default?
- Which failures are recoverable automatically and which require manual stop?
- Do we have verifiable logs that prove safe behavior under load?
- Is rollback tested, documented, and assigned to a clear owner?
If any answer is unclear, keep rollout in preview and close the gap before production use.
Editorial Review Snapshot
This listing includes an editorial QA layer in addition to automated rendering. Review status is based on documentation depth, content uniqueness, and operational safety signals from the upstream repository.
- Last scan date: 2026-01-18
- README depth: 1003 words
- Content diversity score: 0.47 (higher is better)
- Template signal count: 1
- Index status: Index eligible
Recommendation: Pilot in a bounded environment first. Confirm observability and ownership before promoting to shared workflows.
Skill Implementation Board
Actionable utility module for rollout decisions. Use the inputs below to choose a deployment path, then execute the checklist and record an output note.
Input: Security Grade
B
Input: Findings
0
Input: README Depth
1003 words
Input: Index State
Eligible
| Decision Trigger | Action | Expected Output |
|---|---|---|
| Input: risk band moderate, docs partial, findings 0 | Run a preview pilot with fixed ownership and observability checkpoints. | Pilot can start with rollback checklist attached. |
| Input: page is index-eligible | Proceed with external documentation and team onboarding draft. | Reusable rollout runbook ready for team adoption. |
| Input: context tags/scenarios are missing | Define two concrete scenarios before broad rollout. | Clear scope definition before further deployment. |
Execution Steps
- Capture objective, owner, and rollback contact.
- Run one preview pilot with fixed test scenario.
- Record warning behavior and recovery evidence.
- Promote only if pilot output matches expected threshold.
Output Template
skill=alby-bitcoin-payments-mcp mode=B pilot_result=pass|fail warning_count=0 next_step=rollout|patch|hold
🛡️ Security Analysis
Clean Scan Report
Our static analysis engine detected no common vulnerabilities (RCE, API Leaks, Unbounded FS).
DocumentationREADME.md
Alby Bitcoin Payments MCP Server
Connect a bitcoin lightning wallet to your LLM using Nostr Wallet Connect (NWC).
This MCP server uses the official MCP TypeScript SDK
This MCP server has knowledge of NWC, LNURL and L402 using Alby SDK and Alby Lightning Tools.
Quick Start
In case you get stuck, see troubleshooting section below.
Use the Alby-Hosted MCP Server
If your agent supports remote MCP servers - SSE (e.g. N8N) or HTTP Streamable transports, you can connect to Alby's MCP server.
- SSE:
https://mcp.getalby.com/sse - HTTP Streamable:
https://mcp.getalby.com/mcp
Authentication
Both require providing an NWC connection secret as authentication, either as Bearer authentication (preferred) or via the nwc query parameter.
Bearer Auth
Example: Authorization: Bearer nostr+walletconnect://...
If your agent UI supports bearer auth, just paste the connection secret into the bearer auth field.
Query Parameter
If your agent doesn't support bearer auth, you can pass the NWC connection secret as a query parameter.
Example: https://mcp.getalby.com/sse?nwc=ENCODED_CONNECTION_SECRET or https://mcp.getalby.com/mcp?nwc=ENCODED_CONNECTION_SECRET
To get ENCODED_CONNECTION_SECRET, open browser devtools (right click -> inspect) and enter this in the console, with your own NWC connection secret set:
encodeURIComponent("nostr+walletconnect://...");
In case there is a message asking for confirmation for pasting, follow the instructions, and then enter the above command again.
Once the command has run, copy the output and replace ENCODED_CONNECTION_SECRET. It will look like this: nostr%2Bwalletconnect%3A%2F%2F...
Add to Claude Web or Claude Desktop
Use the remote Alby MCP server
Currently, at least a Claude Pro subscription is required to be able to connect to remote MCP servers.
- Go to Settings -> Integrations
- Click on "Add Integration"
- Call it
alby - What is the endpoint URI:
https://mcp.getalby.com/mcp?nwc=ENCODED_NWC_URL(see above for instructions)
Client-side
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"nwc": {
"command": "npx",
"args": ["-y", "@getalby/mcp"],
"env": {
"NWC_CONNECTION_STRING": "YOUR NWC CONNECTION STRING HERE"
}
}
}
}
Add to Goose Desktop
- Open Goose Desktop
- Go To Settings -> Advanced Settings
- Click on "Add custom Extension"
- Call it
alby, and change the type toHTTP Streamable - What is the SSE endpoint URI:
https://mcp.getalby.com/mcp - Timeout: 30
- Description: no
- environment variables: no
Add to Goose CLI
Use the Alby MCP server
- Type
goose configure - Add extension -> Remote Extension (HTTP Streamable)
- Call it
alby - What is the HTTP Streamable endpoint URI:
https://mcp.getalby.com/mcp - Timeout: 30
- Description: no
- environment variables: no
- add custom headers: yes
- header name:
Authorization - header value:
Bearer nostr+walletconnect://...(replace with your connection secret)
Client-side
- Type
goose configure - Add extension -> Command Line Extension
- Call it
alby - What command should be run:
npx -y @getalby/mcp - Timeout: 30
- Description: no
- environment variables: yes
- environment variable name:
NWC_CONNECTION_STRING - environment variable value:
nostr+walletconnect://...(your NWC connection secret here)
Add to Cline
Copy the below and paste it into a cline prompt. It should prompt you to update the connection string.
Add the following to my MCP servers list:
"nwc": {
"command": "npx",
"args": ["-y", "@getalby/mcp"],
"env": {
"NWC_CONNECTION_STRING": "nostr+walletconnect://..."
},
"disabled": false,
"autoApprove": []
}
Add to Claude Code
Use the Alby MCP server
claude mcp add --transport http alby https://mcp.getalby.com/mcp --header "Authorization: Bearer nostr+walletconnect://..."
Add to N8N via SSE
You can use the native N8N MCP Client tool connected to an AI agent. Enter your SSE endpoint, set authentication to "Bearer" and paste your NWC connection secret.
Tested with OpenRouter + anthropic/claude-3.7-sonnet
See the N8N workflow for a simple example
Add to N8N via STDIO (Community Node)
Currently this MCP server only works via command line (STDIO).
You can install the n8n-nodes-mcp community node and run n8n with tools enabled e.g.
N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true npx n8n
Create a blank workflow and add an AI agent node. Configure your LLM model and add a new tool "MCP Client" (which will have a cube next to it showing it's a community node).
Configure the MCP Client by adding a credential with Command Line (STDIO) selected.
command: npx
arguments: -y @getalby/mcp
environments NWC_CONNECTION_STRING=nostr+walletconnect://your_key_here (create the whole line in a text editor and paste it in, since the password field cannot be switched to plaintext)
See the N8N paid chat workflow for a full example
Add to Windsurf
Use the remote Alby MCP server
- Download and open your Windsurf Editor
- Click on "Windsurf - Settings" in the toolbar at the bottom -> "Advanced Settings" -> "Cascade" -> Plugins (MCP Servers): Click on "Manage plugins" -> "View raw config" -> you'll see your "mcp_config.json"
- Paste this to your mcp_config.json:
{
"mcpServers": {
"alby": {
"serverUrl": "https://mcp.getalby.com/sse?nwc=ENCODED_NWC_URL"
}
}
}
- Replace "ENCODED_NWC_URL" as descripted above. Click "Save" and restart the Windsurf editor.
Modes
STDIO
By default NWC MCP Server runs locally in STDIO mode.
HTTP
You can set the following environment variable: MODE=HTTP which will enable Streamable HTTP (http://localhost:3000/mcp) and SSE (http://localhost:3000/sse Note: SSE is deprecated).
HTTP requires bearer authorization, where the token is a wallet's NWC connection secret. See the authentication section further above in the README.
From Source
Prerequisites
- Node.js 20+
- Yarn
- A connection string from a lightning wallet that supports NWC
Installation
yarn install
Building
yarn build
Add your NWC connection
Copy .env.example to .env and update your connection string
Inspect the tools (use/test without an LLM)
yarn inspect
Supported Tools
See the tools directory
Troubleshooting
Model Usage
Make sure you use a decent model (e.g. Claude Sonnet 3.7) otherwise the MCP server will not work.
Failure to connect to wallet, secret missing
Make sure you copied the entire NWC connection secret, without spaces
Contact Alby Support
Visit support.getalby.com and we're happy to help you get the MCP server working.