UNPKG

@getalby/mcp

Version:

MCP server for controlling a Lightning wallet using Nostr Wallet Connect

25 lines (24 loc) 813 B
import { Invoice } from "@getalby/lightning-tools"; import { z } from "zod"; import { invoiceSchema } from "./schemas/invoice.js"; export function registerParseInvoiceTool(server) { server.registerTool("parse_invoice", { title: "Parse Invoice", description: "Parse a BOLT-11 lightning invoice", inputSchema: { invoice: z.string().describe("the bolt11 invoice"), }, outputSchema: invoiceSchema, }, async (params) => { const invoice = new Invoice({ pr: params.invoice }); return { content: [ { type: "text", text: JSON.stringify(invoice, null, 2), }, ], structuredContent: JSON.parse(JSON.stringify(invoice)), }; }); }