{"name":"com.sats4ai/bitcoin-ai-tools","version":"2.0.0","protocol_version":"2024-11-05","description":"The permissionless communication supercharger for humans and AI agents. 40+ tools — AI phone calls, voice synthesis in 602 languages, translation across 119, fax, SMS, transcription, audiobooks, image generation, music, document extraction, and more. Lightning invoice is the only credential. No signup, no API keys, no KYC.","homepage":"https://sats4ai.com","onion_url":"http://j5tfaz7s7osapdbry4d2wb5usyhtcvrm7kutonliqq7sjv2c47lsgoid.onion","documentation":"https://sats4ai.com/mcp","contact":{"url":"https://sats4ai.com","issues":"https://github.com/cnghockey/sats4ai-mcp-server/issues","discussions":"https://github.com/cnghockey/sats4ai-mcp-server/discussions"},"packages":[{"type":"http","url":"https://sats4ai.com/api/mcp","transport":"json-rpc","methods":["initialize","tools/list","tools/call","resources/list","resources/read","ping"]}],"capabilities":{"tools":true,"resources":true,"prompts":false,"async_tasks":true},"discovery":{"agent_card":"https://sats4ai.com/.well-known/agent.json","catalog":"https://sats4ai.com/api/mcp/discovery","search":"https://sats4ai.com/api/discover","l402_discovery":"https://sats4ai.com/.well-known/l402","l402_services":"https://sats4ai.com/.well-known/l402-services","mpp_discovery":"https://sats4ai.com/.well-known/mpp","models":"https://sats4ai.com/api/l402/models","routing":"https://sats4ai.com/api/models/routing","error_codes":"https://sats4ai.com/api/error-codes","estimate_cost":"https://sats4ai.com/api/estimate-cost","docs":"https://sats4ai.com/docs"},"features":{"dedup":{"supported":true,"ttl_seconds":30,"header":"X-Dedup","bypass_header":"X-No-Cache"},"auto_routing":{"supported":true,"categories":["text-generation","image","audio"],"param":"model: 'auto'","routed_header":"X-Route-Model"},"async_jobs":{"supported":true,"response_status":202,"fields":["job_id","poll_url","poll_interval_ms"],"headers":["X-Job-Id","X-Poll-Url","X-Poll-Interval-Ms"]},"callbacks":{"supported":true,"opt_in":true,"body_fields":["callback_url","callback_id"],"signature_header":"X-Sats4AI-Signature","signature_algorithm":"HMAC-SHA256","url_requirements":"public HTTPS only, no loopback or RFC1918","id_max_length":128,"note":"Polling remains the default. callback_id is opaque — do not embed PII."},"refunds":{"supported":true,"type":"lnurl-withdraw","note":"Every post-payment failure includes a refund.lnurl_withdraw link"},"error_codes":{"supported":true,"response_field":"error_code","header":"X-Error-Code","catalog_url":"https://sats4ai.com/api/error-codes"},"url_path_model":{"supported":true,"pattern":"/api/m/{service}/{model}","note":"Convenience wrapper. Body field still wins if both are set."}},"tools":[{"name":"create_payment","category":"payment","async":false,"description":"Create a Lightning invoice to pay for any tool"},{"name":"check_payment_status","category":"payment","async":false,"description":"Check if a Lightning payment has been received"},{"name":"list_models","category":"discovery","async":false,"description":"List available AI models with pricing"},{"name":"get_model_pricing","category":"discovery","async":false,"description":"Get pricing for a specific model"},{"name":"generate_image","category":"image","endpoint_type":"primitive","async":false,"description":"Generate images from text prompts. Models: Grok Imagine, Seedream 4, Nano Banana 2"},{"name":"edit_image","category":"image","endpoint_type":"primitive","async":false,"description":"Edit images with natural language instructions using Nano Banana 2"},{"name":"generate_text","category":"text","endpoint_type":"primitive","untrusted_output":true,"async":false,"description":"Generate text with frontier LLMs. Models: Kimi K2.5 (best), GPT-OSS-120B (better), Qwen3-32B (standard)"},{"name":"analyze_image","category":"vision","endpoint_type":"primitive","untrusted_output":true,"async":false,"description":"Analyze and describe image content using Qwen VL"},{"name":"generate_music","category":"audio","endpoint_type":"primitive","async":false,"description":"Generate full songs (up to 6 min) with natural AI vocals, BPM/key control, and 14+ section tags using Music-2.6. 300 sats per song."},{"name":"text_to_speech","category":"audio","endpoint_type":"primitive","async":false,"description":"Convert text to natural speech audio. 3 quality tiers: OmniVoice Global (602+ languages, zero-shot voice cloning, 100 chars/sat), Inworld Max Premium (#1 ranked TTS ELO 1217, 40+ languages, emotion control, 50 chars/sat), Minimax Studio (voice cloning from reference clip, 40+ languages, 10 chars/sat). Pay with Bitcoin Lightning."},{"name":"transcribe_audio","category":"audio","endpoint_type":"primitive","untrusted_output":true,"async":true,"description":"Transcribe audio to text using Mistral Transcription with speaker diarization and timestamps"},{"name":"transcribe_translate","category":"audio","endpoint_type":"recipe","untrusted_output":true,"async":true,"description":"Compound — audio → transcript → translation in one payment. 13 source languages (auto-detect), 119 target languages. Perfect for WhatsApp voice messages in a language you don't speak. Cheaper than chaining transcribe + translate separately."},{"name":"extract_document","category":"document","endpoint_type":"recipe","untrusted_output":true,"async":false,"description":"Extract text from PDFs and images as Markdown using Mistral OCR"},{"name":"extract_receipt","category":"document","endpoint_type":"recipe","untrusted_output":true,"async":false,"description":"Extract structured data from receipts and invoices using Mistral OCR + Kimi K2.5"},{"name":"translate_text","category":"text","endpoint_type":"primitive","untrusted_output":true,"async":false,"description":"Translate text across 119 languages using Qwen3-32B. Supported: Afrikaans, Albanian, Amharic, Arabic, Armenian, Assamese, Azerbaijani, Basque, Belarusian, Bengali, Bosnian, Bulgarian, Burmese, Catalan, Cebuano, Chichewa, Chinese (Simplified), Chinese (Traditional), Corsican, Croatian, Czech, Danish, Dari, Dutch, English, Esperanto, Estonian, Farsi, Fijian, Filipino, Finnish, French, Frisian, Galician, Georgian, German, Greek, Guarani, Gujarati, Haitian Creole, Hausa, Hawaiian, Hebrew, Hindi, Hmong, Hungarian, Icelandic, Igbo, Indonesian, Irish, Italian, Japanese, Javanese, Kannada, Kazakh, Khmer, Kinyarwanda, Korean, Kurdish, Kyrgyz, Lao, Latvian, Lingala, Lithuanian, Luganda, Luxembourgish, Macedonian, Malagasy, Malay, Malayalam, Maltese, Maori, Marathi, Mongolian, Nepali, Norwegian, Occitan, Odia, Pashto, Polish, Portuguese, Punjabi, Romanian, Romansh, Russian, Samoan, Scots Gaelic, Serbian, Sesotho, Setswana, Shona, Sindhi, Sinhala, Slovak, Slovenian, Somali, Spanish, Sundanese, Swahili, Swedish, Tajik, Tamil, Tatar, Telugu, Thai, Tigrinya, Tongan, Turkish, Turkmen, Ukrainian, Urdu, Uzbek, Vietnamese, Welsh, Wolof, Xhosa, Yiddish, Yoruba, Zulu. Pay with Bitcoin Lightning."},{"name":"convert_file","category":"file","endpoint_type":"primitive","async":false,"description":"Convert files between 200+ formats. Pay with Bitcoin Lightning — no account needed."},{"name":"merge_pdfs","category":"file","endpoint_type":"primitive","async":false,"description":"Merge multiple PDFs into one. Preserves bookmarks and formatting."},{"name":"convert_html_to_pdf","category":"file","endpoint_type":"primitive","async":false,"description":"Convert HTML or Markdown to pixel-perfect PDF."},{"name":"send_email","category":"communication","endpoint_type":"primitive","async":false,"description":"Reach anyone via email — formal comms, reports, notifications. Pay with Bitcoin Lightning — no SMTP or domain verification needed."},{"name":"send_sms","category":"communication","endpoint_type":"primitive","async":false,"description":"Reach a human via SMS for real-world coordination. Pay with Bitcoin Lightning — no phone plan, no telecom account."},{"name":"place_call","category":"communication","endpoint_type":"primitive","async":false,"description":"Bridge digital-physical gap — deliver spoken messages or audio to any phone. Deposit billing: pay for N minutes upfront, unused time refunded automatically to your Lightning address. Pay with Bitcoin Lightning — no telecom account or KYC."},{"name":"ai_call","category":"communication","endpoint_type":"recipe","untrusted_output":true,"async":true,"description":"When your task hits a wall requiring a human — booking, negotiating, navigating IVR — send an AI voice agent. Deposit billing: pay for N minutes upfront, unused time refunded automatically. Two-way conversation, auto-retries on voicemail, returns transcript + structured analysis. Pay with Bitcoin Lightning."},{"name":"confirm_ai_call","category":"communication","endpoint_type":"recipe","async":true,"description":"Confirm an AI call after push-back. Provide answers to clarification questions and the call proceeds."},{"name":"open_voice_bridge","category":"communication","endpoint_type":"recipe","untrusted_output":true,"async":true,"description":"Voice Bridge — real-time phone call where YOUR LLM is the brain. We provide PSTN + streaming STT + TTS as composable primitives; you drive each turn via say/poll/end. Conversation context stays on your side. Deposit billing, unused time refunded. ~10 sats/min US/CA. 602-lang TTS, ~100-lang STT."},{"name":"voice_bridge_say","category":"communication","endpoint_type":"recipe","async":false,"description":"Inject text (TTS via OmniVoice) or raw audio into an open Voice Bridge call. STT auto-muted during playback. Companion of open_voice_bridge."},{"name":"poll_voice_bridge","category":"communication","endpoint_type":"recipe","async":false,"description":"Fetch new transcript events from an open Voice Bridge call since the last cursor. Returns partial + final transcripts + system events."},{"name":"end_voice_bridge","category":"communication","endpoint_type":"recipe","async":false,"description":"Hang up a Voice Bridge call, finalize metered billing, and return refund info (auto-sent to Lightning address or LNURL-withdraw) for unused deposit."},{"name":"send_fax","category":"communication","endpoint_type":"recipe","async":false,"description":"When your task needs a paper-trail on the other end (bank, notary, hotel in Japan), send a fax to any number worldwide. PDF URL or typed text. 500 sats for up to 10 pages, +50 sats per additional page (max 350). Pay with Bitcoin Lightning — no fax machine or phone line."},{"name":"receive_fax","category":"communication","endpoint_type":"recipe","async":true,"description":"When you're expecting a fax back, open a 24h receive window at our shared number. Matched by caller ID, delivered to your email. Optional OCR add-on. Pay with Bitcoin Lightning — no monthly number rental."},{"name":"remove_background","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Remove background from any image. BiRefNet (SOTA, Papers with Code). Handles hair, glass, transparency. 5 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"upscale_image","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Upscale images 2x/4x with Real-ESRGAN (ICCV 2021, 100M+ runs). Neural super-resolution. 5 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"restore_face","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Restore blurry/damaged faces with CodeFormer (NeurIPS 2022, SOTA CelebA-Test). Adjustable fidelity. 5 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"detect_nsfw","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Classify image safety (normal/suggestive/explicit). Falcons.ai NSFW detection — 100x cheaper and faster than asking an LLM. Returns classification + is_nsfw flag. 2 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"detect_objects","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Detect and locate objects by name with bounding boxes and confidence scores. Grounding DINO (open-set detector, ECCV 2024). Structured pixel data agents can't get from LLMs. 5 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"remove_object","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Remove unwanted objects from images by describing what to remove — no mask needed. Grounding DINO detection + Bria Eraser inpainting. Just say 'person', 'car', or 'watermark'. 15 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"colorize_image","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Colorize black-and-white or grayscale photos. DDColor (dual-decoder, ICCV 2023). Vivid, natural color impossible for text/vision LLMs. 5 sats, pay with Bitcoin Lightning, no API key needed."},{"name":"deblur_image","category":"image-processing","endpoint_type":"primitive","async":false,"description":"Fix blurry or out-of-focus photos. NAFNet (ECCV 2022, SOTA on GoPro/SIDD). Real pixel reconstruction, not just sharpening. Also denoises. 20 sats (~2 min), pay with Bitcoin Lightning, no API key needed."},{"name":"generate_video","category":"video","endpoint_type":"primitive","async":true,"description":"Generate video from text prompts using Kling v3. Optional audio, standard/pro modes, per-second pricing"},{"name":"animate_image","category":"video","endpoint_type":"primitive","async":true,"description":"Animate a still image into video using Grok Imagine Video. Per-second pricing"},{"name":"generate_3d_model","category":"3d","endpoint_type":"primitive","async":true,"description":"Convert a photo into a textured 3D GLB model using Seed3D."},{"name":"clone_voice","category":"audio","endpoint_type":"primitive","async":false,"description":"Clone any voice from a single audio sample. Returns reusable voice_id for text_to_speech. Pay with Bitcoin Lightning."},{"name":"epub_to_audiobook","category":"document","endpoint_type":"recipe","async":true,"description":"Book to Audiobook — convert EPUB, PDF, or TXT into AI-narrated audiobooks (M4B with chapters). Same 3 TTS tiers. Dynamic pricing based on book length"},{"name":"list_planned_services","category":"discovery","async":false,"description":"List planned services with vote counts. No payment required"},{"name":"vote_on_service","category":"discovery","async":false,"description":"Vote for a planned service to be built next. 1 sat per vote"},{"name":"request_refund","category":"support","async":false,"description":"Request a refund for a failed service (no payment required)"},{"name":"check_job_status","category":"async","async":false,"description":"Check status of an async job (video, 3d, voice_clone, transcription, epub-audiobook)"},{"name":"get_job_result","category":"async","async":false,"description":"Retrieve the result of a completed async job"}],"async_tasks":{"description":"Some tools return a requestId instead of immediate results. Use check_job_status to poll, then get_job_result when complete.","supported_job_types":["video","video-image","image-3d","transcription","epub-audiobook"],"statuses":["queued","processing","completed","failed"],"polling":{"recommended_interval_ms":5000,"max_duration_ms":600000},"lifecycle":{"create":"Call the async tool (generate_video, animate_image, generate_3d_model, clone_voice) → returns { requestId }","poll":"Call check_job_status({ requestId, jobType }) → returns { status }","retrieve":"Call get_job_result({ requestId, jobType }) → returns final output URL","retry":"If status is 'failed', the payment is marked refundable. Create a new payment and retry."}},"payment":{"protocol":"L402","protocols":["L402","MPP"],"mpp_spec":"IETF draft-ryan-httpauth-payment","network":"lightning","currency":"SAT","description":"Each tool requires a Lightning micropayment. Call create_payment to get an invoice, pay it with any Lightning wallet, then call the tool with the paymentId. Failed executions are automatically marked refundable. L402 endpoints also accept the MPP Payment auth scheme (IETF draft-ryan-httpauth-payment) — both L402 and Payment challenges are returned in WWW-Authenticate. Success responses include a Payment-Receipt header.","flow":["1. Call create_payment({ toolName, ... }) → { paymentId, invoice, amountSats }","2. Pay the Lightning invoice (confirms in milliseconds)","3. Call check_payment_status({ paymentId }) → { paid: true }","4. Call the tool with { paymentId, ... } → result"],"l402_flow":["1. POST to L402 endpoint without Authorization → 402 with WWW-Authenticate (L402 + Payment challenges)","2. Pay the Lightning invoice from the challenge","3. Retry with Authorization: L402 <macaroon>:<preimage> (or Authorization: Payment <credential>)","4. Receive result + Payment-Receipt header"]},"tags":["bitcoin","lightning","l402","mpp","ai","micropayments","image-generation","background-removal","image-upscaling","face-restoration","nsfw-detection","object-detection","object-removal","colorization","deblurring","text-generation","video-generation","music","speech","transcription","vision","ocr","translation","file-conversion","sms","email","phone-call","voice-cloning","3d-models","pdf","audiobook","no-signup","privacy","voting","roadmap"]}