Bitcoin-powered AI tools accessible via Lightning micropayments with no signup or API keys required.
Do not connect
A critical issue was found. Do not connect this server as-is.
Scanned 1 month ago Due for re-check
A server can change after it's graded. Re-run the automated scan to refresh this report.
This grade is deterministic and reproducible: the same server surface always yields the same grade under a given algorithm version. It is a real automated assessment computed by the MCPGrade engine from what the probe actually observed — not a fabricated or opinion score. It is not a manual human pentest, so it can miss context-specific risks.
Every signal below was measured directly by the automated probe. The grade is derived only from evidence like this — nothing is assumed.
The sats4ai-mcp MCP server exposes 54 tools, focused primarily on AI, web, and communication capabilities. Its published description reads: "Bitcoin-powered AI tools accessible via Lightning micropayments with no signup or API keys required". It communicates over Streamable HTTP using the 2026-07-28 protocol revision, and does not require authorization to connect. MCPGrade currently rates sats4ai-mcp F — a critical issue was found and the server should not be connected as-is. Its most notable findings include "Hidden instructions in a tool description" and "Hidden instructions in a tool description". This report is a deterministic, reproducible automated assessment: the same observed surface always yields the same grade under a given algorithm version, and it is refreshed as new scans arrive and free to read — but it is not a substitute for a manual human security review. Always re-check sats4ai-mcp's advertised tools, transport security, and authorization posture before connecting an autonomous agent or sharing sensitive context with it.
Add sats4ai-mcp to an MCP client using the endpoint below. Review the grade and findings above before granting an autonomous agent access.
MCP endpoint
https://sats4ai.com/api/mcpStreamable HTTP transport. This is the MCP endpoint, not a website — paste it into your MCP client server list rather than a browser.
Captured passively during the read-only scan. Click any value to find servers that match it.
The tools this server advertises via tools/list — names, purposes, and the parameters each accepts, exactly as enumerated read-only.
Create a Lightning invoice to pay for one AI service call. Returns JSON: { paymentId, invoice (BOLT11), amount (sats), expiresAt }. Each payment covers exactly one tool call — call this once per opera
Sorted worst-first. Each finding shows its severity, what it means, its OWASP MCP Top-10 mapping, and a recommended fix — the check id links to the exact methodology row that produced it.
tool: create_payment
A tool description contains imperative text aimed at the model (e.g. "ignore previous", "before answering read …").
using a custom system prompt (affects price)"},"fileContext":{"type":"stringRecommendationRemove model-directed instructions from tool descriptions.
tool: generate_text
A tool description contains imperative text aimed at the model (e.g. "ignore previous", "before answering read …").
tion":"Optional system prompt"},"maxTokens":{"type":"number","description":"MRecommendationRemove model-directed instructions from tool descriptions.
tool: create_payment
A tool description tries to alter the model’s use of another tool.
reate_payment → check_payment_status → call tool. The invoice expires in 10 minutes.RecommendationDescriptions must describe only their own tool.
tool: check_payment_status
A tool description tries to alter the model’s use of another tool.
do. Call after create_payment to verify the user has paid before calling theRecommendationDescriptions must describe only their own tool.
tool: generate_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='generate_image'.RecommendationDescriptions must describe only their own tool.
tool: generate_video
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
Lightning — no API key or signup needed. Requires create_payment withRecommendationRemove side-channel parameters; constrain tool inputs.
tool: generate_video
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='generate_video' and duration, reRecommendationDescriptions must describe only their own tool.
tool: animate_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='animate_image'.RecommendationDescriptions must describe only their own tool.
tool: check_job_status
A tool description tries to alter the model’s use of another tool.
chronous tools (generate_image, generate_text, etc.) — those return results imRecommendationDescriptions must describe only their own tool.
tool: check_job_status
The text tells the model WHEN to call this tool relative to others ("always call first", "before any other tool", "chain to X tool") — a toxic-flow injection that hijacks the agent’s orchestration rather than describing the tool.
c job. Use this after calling any async tool (generate_video, animate_image, generate_3d_modRecommendationTool metadata must describe only the tool, never sequence the agent’s calls.
tool: get_job_result
A tool description tries to alter the model’s use of another tool.
Call ONLY after check_job_status returns status='COMPLETED' — calling on a job tRecommendationDescriptions must describe only their own tool.
tool: await_result
A tool description tries to alter the model’s use of another tool.
an async tool (generate_video, animate_image, generate_3d_model, transcribe_aRecommendationDescriptions must describe only their own tool.
tool: analyze_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='analyze_image'.RecommendationDescriptions must describe only their own tool.
tool: generate_text
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
Lightning — no API key or signup needed. Requires create_payment withRecommendationRemove side-channel parameters; constrain tool inputs.
tool: generate_text
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='generate_text' and the exact proRecommendationDescriptions must describe only their own tool.
tool: generate_music
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
Lightning — no API key or signup needed. Requires create_payment withRecommendationRemove side-channel parameters; constrain tool inputs.
tool: generate_music
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='generate_music'.RecommendationDescriptions must describe only their own tool.
tool: text_to_speech
A tool description tries to alter the model’s use of another tool.
these. Requires create_payment with toolName='text_to_speech'.RecommendationDescriptions must describe only their own tool.
tool: transcribe_audio
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='transcribe_audio'.RecommendationDescriptions must describe only their own tool.
tool: transcribe_translate
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='transcribe_translate'.RecommendationDescriptions must describe only their own tool.
tool: generate_3d_model
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='generate_3d_model'.RecommendationDescriptions must describe only their own tool.
tool: extract_document
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='extract_document' and quantity=pRecommendationDescriptions must describe only their own tool.
tool: convert_file
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='convert_file'.RecommendationDescriptions must describe only their own tool.
tool: send_email
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='send_email'.RecommendationDescriptions must describe only their own tool.
tool: clone_voice
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='clone_voice'.RecommendationDescriptions must describe only their own tool.
tool: edit_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='edit_image' and resolution paramRecommendationDescriptions must describe only their own tool.
tool: merge_pdfs
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='merge_pdfs'.RecommendationDescriptions must describe only their own tool.
tool: convert_html_to_pdf
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='convert_html_to_pdf'.RecommendationDescriptions must describe only their own tool.
tool: translate_text
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='translate_text' and prompt (theRecommendationDescriptions must describe only their own tool.
tool: translate_rare_language
A tool description tries to alter the model’s use of another tool.
ignup. Requires create_payment with toolName='translate_rare_language'.RecommendationDescriptions must describe only their own tool.
tool: extract_receipt
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='extract_receipt'.RecommendationDescriptions must describe only their own tool.
tool: boardingpass_wallet
A tool description tries to alter the model’s use of another tool.
sats PER PASS: create_payment with toolName='boardingpass_wallet' and quantitRecommendationDescriptions must describe only their own tool.
tool: e_signature
A tool description tries to alter the model’s use of another tool.
card. Requires create_payment with toolName='e_signature'.RecommendationDescriptions must describe only their own tool.
tool: epub_to_audiobook
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
Lightning — no API key or signup needed. Requires create_payment withRecommendationRemove side-channel parameters; constrain tool inputs.
tool: epub_to_audiobook
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='epub_to_audiobook'.RecommendationDescriptions must describe only their own tool.
tool: send_sms
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
Lightning — no API key, no KYC, no subscription. Requires create_paymeRecommendationRemove side-channel parameters; constrain tool inputs.
tool: send_sms
A tool description tries to alter the model’s use of another tool.
ption. Requires create_payment with toolName='send_sms' and phoneNumber+messagRecommendationDescriptions must describe only their own tool.
tool: place_call
A tool description tries to alter the model’s use of another tool.
ption. Requires create_payment with toolName='place_call' and phoneNumber.RecommendationDescriptions must describe only their own tool.
tool: send_fax
A tool description tries to alter the model’s use of another tool.
Pass 'pages' to create_payment as 'quantity' to get the right invoice. Pay witRecommendationDescriptions must describe only their own tool.
tool: receive_fax
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
parameter "callback_url"RecommendationRemove side-channel parameters; constrain tool inputs.
tool: ai_call
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
a real two-way conversation, auto-retries on voicemail (up to 3 attempts),RecommendationRemove side-channel parameters; constrain tool inputs.
tool: ai_call
A tool description tries to alter the model’s use of another tool.
RecommendationDescriptions must describe only their own tool.
tool: confirm_ai_call
A tool description tries to alter the model’s use of another tool.
or polling with check_job_status(jobType='ai-call').RecommendationDescriptions must describe only their own tool.
tool: open_voice_bridge
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
nt to keep your conversation context private and drive each turn yourself. WRecommendationRemove side-channel parameters; constrain tool inputs.
tool: open_voice_bridge
A tool description tries to alter the model’s use of another tool.
ABLE OVER MCP — create_payment refuses this tool, so you will not be charged.RecommendationDescriptions must describe only their own tool.
tool: voice_bridge_say
A tool description tries to alter the model’s use of another tool.
RecommendationDescriptions must describe only their own tool.
tool: list_models
A tool description tries to alter the model’s use of another tool.
all this before create_payment to find the right modelId for your task. ReturnRecommendationDescriptions must describe only their own tool.
tool: request_refund
A tool exposes a free-text/webhook/feedback parameter with no honest purpose — a classic exfil channel.
parameter "feedback"RecommendationRemove side-channel parameters; constrain tool inputs.
tool: request_refund
A tool description tries to alter the model’s use of another tool.
instead of creating a duplicate ticket. CLAIM WINDOW: refunds must be claRecommendationDescriptions must describe only their own tool.
tool: remove_background
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='remove_background'.RecommendationDescriptions must describe only their own tool.
tool: upscale_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='upscale_image'.RecommendationDescriptions must describe only their own tool.
tool: restore_face
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='restore_face'.RecommendationDescriptions must describe only their own tool.
tool: estimate_depth
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='estimate_depth'.RecommendationDescriptions must describe only their own tool.
tool: detect_nsfw
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='detect_nsfw'.RecommendationDescriptions must describe only their own tool.
tool: detect_objects
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='detect_objects'.RecommendationDescriptions must describe only their own tool.
tool: remove_object
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='remove_object'.RecommendationDescriptions must describe only their own tool.
tool: colorize_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='colorize_image'.RecommendationDescriptions must describe only their own tool.
tool: deblur_image
A tool description tries to alter the model’s use of another tool.
eeded. Requires create_payment with toolName='deblur_image'.RecommendationDescriptions must describe only their own tool.
tool: vote_on_service
A tool description tries to alter the model’s use of another tool.
tized. Requires create_payment with toolName='vote_on_service'.RecommendationDescriptions must describe only their own tool.
tool: list_planned_services
A tool description tries to alter the model’s use of another tool.
lug values with vote_on_service to cast votes. This tool is idempotent and safeRecommendationDescriptions must describe only their own tool.
tool: (server instructions)
A tool description tries to alter the model’s use of another tool.
ropayment. Call create_payment first to get an invoice, pay it, then call theRecommendationDescriptions must describe only their own tool.
The server accepts tool enumeration (and likely invocation) with no authentication.
RecommendationRequire OAuth 2.1 authorization for any server exposing non-public tools.
tool: create_payment
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "create_payment"RecommendationScope tools to the minimum needed.
tool: send_email
The server advertises open-world / broadly-scoped capabilities.
annotations.destructiveHint = trueRecommendationScope tools to the minimum needed.
tool: convert_html_to_pdf
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "convert_html_to_pdf"RecommendationScope tools to the minimum needed.
tool: boardingpass_wallet
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "boardingpass_wallet"RecommendationScope tools to the minimum needed.
tool: e_signature
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "e_signature"RecommendationScope tools to the minimum needed.
tool: send_sms
The server advertises open-world / broadly-scoped capabilities.
annotations.destructiveHint = trueRecommendationScope tools to the minimum needed.
tool: place_call
The server advertises open-world / broadly-scoped capabilities.
annotations.destructiveHint = trueRecommendationScope tools to the minimum needed.
tool: send_fax
The server advertises open-world / broadly-scoped capabilities.
annotations.destructiveHint = trueRecommendationScope tools to the minimum needed.
tool: receive_fax
The server advertises open-world / broadly-scoped capabilities.
annotations.openWorldHint = trueRecommendationScope tools to the minimum needed.
tool: ai_call
The server advertises open-world / broadly-scoped capabilities.
annotations.destructiveHint = trueRecommendationScope tools to the minimum needed.
tool: confirm_ai_call
The server advertises open-world / broadly-scoped capabilities.
annotations.openWorldHint = trueRecommendationScope tools to the minimum needed.
tool: open_voice_bridge
The server advertises open-world / broadly-scoped capabilities.
annotations.openWorldHint = trueRecommendationScope tools to the minimum needed.
tool: open_voice_bridge
The description pairs a fetch imperative with a hardcoded external URL, letting the server relocate its real instructions off-metadata and mutate them after review. Fires only when a fetch verb and a URL co-occur, so benign documentation links do not.
t instead: POST https://sats4ai.com/api/l402/voice-bridge/open (same service and pricing, pay the 402 challengRecommendationDo not direct the model to fetch and act on external URLs; treat linked content as untrusted.
tool: voice_bridge_say
The server advertises open-world / broadly-scoped capabilities.
annotations.openWorldHint = trueRecommendationScope tools to the minimum needed.
tool: request_refund
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "request_refund"RecommendationScope tools to the minimum needed.
tool: remove_background
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "remove_background"RecommendationScope tools to the minimum needed.
tool: detect_objects
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "detect_objects"RecommendationScope tools to the minimum needed.
tool: remove_object
The server advertises open-world / broadly-scoped capabilities.
no annotations on write-capable tool "remove_object"RecommendationScope tools to the minimum needed.
Vantaj uptime monitoring via MCP — manage monitors, heartbeats, incidents, and status pages.
Unified gateway to Algeria's TKAWEN ecosystem: commerce, certification, and AI tools.
Provides access to the Cohereon Doctrine AI safety framework with governance components, tiered access, and agent onboarding.
Agentic rails for complex workflows with receipts, fees, and MCP tool access.
Structural TC39 spec lookup for ECMA-262 and ECMA-402 in AI agents, SHA-pinned and offline-first.
Structural TC39 spec lookup for ECMA-262 and ECMA-402 in AI agents, SHA-pinned and offline-first.
Check whether a Lightning invoice has been paid. Returns JSON: { paid, serviceUsed, refundAllowed, readyToUse, next } — readyToUse=true means paid, not yet consumed, and no refund queued; next says wh
Generate an image from a text prompt. Returns JSON with image URL. Models: Grok Imagine (fast creative generation, 100 sats), Seedream 4 (photorealistic detail, 150 sats), Nano Banana 2 (premium quali
Generate cinematic video from a text prompt. Uses MiniMax H3 — top 2 on the Artificial Analysis text-to-video leaderboard — with native audio. Async — returns requestId, poll with check_job_status. 76
Animate a still image into cinematic video with MiniMax H3 — provide a first frame and a prompt to direct the motion. Native audio. Async — returns requestId, poll with check_job_status. 768p or 2K (2
Poll the status of an async job. Use this after calling any async tool (generate_video, animate_image, generate_3d_model, transcribe_audio, epub_to_audiobook, ai_call) that returns a requestId. Return
Retrieve the final output of a completed async job. Call ONLY after check_job_status returns status='COMPLETED' — calling on a job that has not completed returns an error. Returns JSON whose shape dep
Wait for an async job to finish and return its result in ONE call — no manual polling loop. Pass the requestId + jobType from an async tool (generate_video, animate_image, generate_3d_model, transcrib
Analyze and describe image content, answer visual questions, extract information from screenshots or photos. Uses Qwen VL — multimodal vision-language model with strong OCR, chart reading, and spatial
Generate text using frontier AI language models. Pure per-character pricing (no minimum): Kimi K3 (best, ~10 chars/sat, 1M context, vision support, default), GPT-OSS-120B (standard, ~1000 chars/sat, 1
Generate full songs (up to 6 min) with natural AI vocals, BPM/key control (99%+ accuracy), and 14+ section tags for precise arrangement. Uses Music-2.6 — orchestral and traditional instruments, style-
Text-to-speech with 3 tiers: OmniVoice Global (602+ languages including Yoruba, Bengali, Cebuano, Twi, zero-shot voice cloning, ~102 chars/sat — use 'language' parameter with ISO code), Inworld Premiu
Transcribe audio to text with timestamps. Uses Mistral Transcription — high-accuracy speech recognition that handles accents, background noise, and overlapping speakers. 13 languages: en, zh, hi, es,
Compound endpoint — one payment turns audio in any of 13 source languages into both a transcript AND a translation in any of 119 target languages. Perfect for WhatsApp voice messages in a language you
Generate a textured 3D GLB model from EITHER a photo OR a text prompt (provide exactly one, not both). Uses Tencent Hunyuan3D — high-fidelity geometry and PBR materials. Async — returns requestId, pol
Extract text from PDFs and images as clean Markdown. Uses Mistral OCR — handles complex layouts, tables, handwriting, multi-column documents, and mathematical notation. Preserves document hierarchy in
Convert files between 200+ formats: documents (PDF, DOCX, XLSX), images (PNG, JPG, WEBP, SVG), audio (MP3, WAV, FLAC), video (MP4, AVI, MOV). Industrial-grade conversion engine — preserves formatting
Reach anyone with an email address — useful when your task requires formal communication, sending reports, or contacting someone outside chat. No SMTP server, no domain verification needed. Plain text
Clone any voice from a single audio sample. Returns a reusable voice_id for text_to_speech — speak in the cloned voice indefinitely. High-fidelity reproduction capturing tone, cadence, and accent. Tur
Edit an image with natural language instructions. Uses Nano Banana 2 — understands context, handles object addition/removal, style transfer, and inpainting. Returns JSON with image URL. Resolution-tie
Merge multiple PDF files into a single document. Preserves bookmarks, links, and formatting. Returns JSON: { url } — a temporary download URL (valid ~1 hour). Minimum 2 files, no maximum. Files are co
Convert HTML or Markdown to a pixel-perfect PDF. Returns JSON: { url } — a temporary download URL (valid ~1 hour). Great for generating invoices, reports, receipts, or formatted documents programmatic
Translate text across 119 languages with high accuracy. Uses GPT-OSS 120B — top scorer in our multilingual translation evals with strong low-resource support. Auto-detects source language. Privacy-pre
Translate into 452 languages, 251 of them NOT supported by ChatGPT, Claude or Gemini (29 of those 251 measured at fair quality or better against human references) — including Bhojpuri (~50M speakers),
Extract structured data from receipts, invoices, and financial documents. Uses a dual-model pipeline (Mistral OCR + Kimi K3) for high-accuracy extraction. Returns JSON with merchant, date, line items,
Turn airline boarding passes (PDF or screenshot) into Google Wallet passes with the fields a plain scan drops — boarding zone, gate, boarding time — for a whole family in one go. Returns one save link
Send a document out for legally binding e-signature and have the signed copy emailed back. Upload the PDF, name up to 3 signers, and give the email where the signed copy should land. Flat 1000 sats pe
Convert books (EPUB/PDF/TXT) to full audiobooks with automatic chapter detection, multi-voice narration, and optional translation to any language before narration. 3 voice tiers: OmniVoice Global (602
Reach a human via SMS when your task requires real-world coordination. Send to any phone number worldwide — messages delivered in seconds. No phone plan, no SIM card, no telecom account needed. Pay wi
Bridge the digital-physical gap — place an automated phone call to deliver a spoken message or play audio to any number. Useful when your task requires notifying a human, delivering alerts, or reachin
When your task requires a paper-trail on the other end — loan paperwork to a bank, signed contract to a notary, booking confirmation to a hotel in Japan — send a fax to any number worldwide. Two modes
When you're expecting a fax back — bank confirmation, court filing, signed document — open a 24h receive window at our shared number +1 320 299 1523. Matched by caller ID (last 10 digits of the sender
When your task hits a wall that requires a human — booking, negotiating, navigating IVR menus, getting information from a business — send an AI voice agent to handle the call. The agent follows your i
Confirm an AI call after reviewing push-back questions, optionally providing answers to missing info. Required when ai_call returns state='pending_confirm'. Uses the original payment — no new payment
TEMPORARILY UNAVAILABLE OVER MCP — create_payment refuses this tool, so you will not be charged. Use the L402 HTTP endpoint instead: POST https://sats4ai.com/api/l402/voice-bridge/open (same service a
Inject audio into an open Voice Bridge call. Two modes: (1) text — we synthesize via OmniVoice TTS in any of 602 languages; (2) audio_base64 + encoding — bring your own audio (mulaw_8000 or pcm_l16_16
Fetch new transcript events from an open Voice Bridge call since the last cursor. Returns partial + final transcripts + system events. Agent should poll in a loop (~500ms-1s). No additional payment.
Hang up a Voice Bridge call, finalize billing, and return a LNURL-withdraw refund link for unused deposit time. Also returns the final transcript for convenience.
Discover available AI models with numeric IDs, tier labels, capabilities, and per-call pricing in sats. Call this before create_payment to find the right modelId for your task. Returns JSON array: [{
Get pricing for a specific model by ID. No payment required.
Get an exact sat cost quote for a service BEFORE creating a payment. Useful for budget-aware agents to price-check before committing. No payment required, no side effects. Pass service=text-to-speech&
Get the machine-readable catalog of all error codes this API can return (e.g. TIMEOUT, CONTENT_FILTERED, RATE_LIMITED, L402_REFUND_ISSUED, L402_AUTO_ROUTED). Agents should branch on error_code rather
Open a MANUAL 48-hour refund review ticket for a service that FAILED (error, timeout, wrong output). Sends an email to the operator. DO NOT call this for unused-minute refunds on metered services (ai_
Remove background from any image, returning transparent PNG. Uses BiRefNet (state-of-the-art, Papers with Code — Sm 0.901 on DIS5K). Handles hair, fur, glass, transparency, and complex edges. Stable e
Upscale images 2x or 4x with neural super-resolution. Uses Real-ESRGAN (ICCV 2021, PSNR 32.73dB on Set5 4x, 100M+ production runs). Recovers real detail from low-resolution images — not interpolation.
Restore blurry, damaged, or AI-generated faces to sharp, natural quality. Uses CodeFormer (NeurIPS 2022, state-of-the-art FID 32.65 on CelebA-Test). Adjustable fidelity — balance between quality enhan
Estimate per-pixel depth from a single photo. Depth Anything V2 (NeurIPS 2024, 3.8M+ runs) returns BOTH the raw greyscale depth map — what a ControlNet, AR or 3D reconstruction pipeline consumes — and
Classify image safety (normal / suggestive / explicit). Falcons.ai NSFW detection — 100x cheaper and faster than asking an LLM. Returns classification label and boolean is_nsfw flag. Essential for con
Detect and locate objects in an image by name. Grounding DINO (open-set detector, ECCV 2024) — describe what to find in natural language, get bounding box coordinates and confidence scores. Structured
Remove unwanted objects from images by describing what to remove — no mask needed. Combines Grounding DINO detection (ECCV 2024) with Bria Eraser inpainting. Just say 'person', 'car', or 'watermark' a
Colorize black-and-white or grayscale photos. DDColor (dual-decoder, ICCV 2023) — vivid, natural colorization. Impossible for text/vision LLMs. 5 sats per image, pay per request with Bitcoin Lightning
Recover detail from camera-shake and accidental motion blur. NAFNet (ECCV 2022, SOTA on GoPro/SIDD benchmarks). Best for: handheld shake, bumped camera, whole-frame uniform blur. NOT effective for: in
Vote for a planned service to be built next. Returns JSON: { success, slug, newVoteCount }. 1 sat per vote — multiple votes allowed. Call list_planned_services first to discover valid slugs and curren
List all planned services with current vote counts. Returns JSON array: [{ slug, name, description, votes }], sorted by votes descending. No payment required — this is a free discovery tool. Use the s