Skip to main content
Glama

Nostr MCP Server

by AustinKelsay
# Zap Tools This directory contains tools for working with Nostr Zaps as defined in [NIP-57](https://github.com/nostr-protocol/nips/blob/master/57.md), which enables Lightning Network payments via Nostr. ## Files - `zap-tools.ts`: Core functionality for processing, validating, and interacting with Nostr zaps ## Features - **Zap Receipt Validation**: Comprehensive NIP-57 compliant validation of zap receipts - **Payment Amount Extraction**: Parse and extract sats amounts from BOLT11 invoices - **Directional Processing**: Determine if zaps were sent, received, or self-zapped - **Anonymous Zapping**: Generate anonymous zaps to profiles and events - **Lightning Integration**: Full integration with LNURL-pay (LUD-06) and Lightning Address (LUD-16) - **Smart Caching**: Efficiently cache processed zaps for better performance ## Usage ```typescript import { processZapReceipt, validateZapReceipt, formatZapReceipt, prepareAnonymousZap } from "./zap/zap-tools.js"; // Process a zap receipt const processedZap = processZapReceipt(zapReceipt, userPubkey); // Validate a zap receipt according to NIP-57 const validationResult = validateZapReceipt(zapReceipt); // Format a zap for display const formattedZap = formatZapReceipt(zap, contextPubkey); // Prepare an anonymous zap (returns a lightning invoice) const zapResult = await prepareAnonymousZap(targetNpub, 1000, "Great post!"); ``` ## Core Data Structures The module defines several key interfaces and types: - `ZapReceipt`: Represents a NIP-57 zap receipt (kind 9735) - `ZapRequest`: Represents a NIP-57 zap request (kind 9734) - `ZapDirection`: Enum for zap directions ('sent', 'received', 'self', 'unknown') - `CachedZap`: Enhanced zap receipt with additional metadata - `LnurlPayResponse`: LNURL-pay service response with zap capabilities - `LnurlCallbackResponse`: Response from LNURL-pay callback with invoice This structure enables robust processing and tracking of zap-related events on the Nostr network.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AustinKelsay/nostr-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server