mcp-registry/io.github.cnghockey/sats4ai · v1.0.0
Also listed as awesome/cnghockey/sats4ai-mcp-server, mcp-registry/com.sats4ai/bitcoin-ai-tools
As of 2026-10-18 01:10 UTC, the Cnghockey Sats4ai MCP server is up with a Glimind reliability score of 87/100 (grade B). Over the last 30 days it answered 99.9% of Glimind's liveness checks. It had 20 outages in 90 days, with a median recovery of 2 minutes.
40+ Lightning-paid AI tools for agents: calls, SMS, fax, voice, translation. No signup, no keys.
Claude Code
claude mcp add --transport http cnghockey-sats4ai-mcp-server https://sats4ai.com/api/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"cnghockey-sats4ai-mcp-server": {
"type": "http",
"url": "https://sats4ai.com/api/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
1 tool definition(s) exceed ~1,200 tokens each (largest: text_to_speech, ~11,819).
Move long reference material out of descriptions (link a doc or expose a resource), drop repeated examples, and collapse large enums. Trimming these to ~600 tokens saves ~11,219 tokens every session.
58 tools on one server. Tool-selection accuracy drops as the menu grows, and some clients (e.g. Cursor) cap the number of active tools.
Group tools by task into smaller servers or toolsets, and merge near-duplicates behind one tool with a mode parameter.
6 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads.
Loading this server's tool list costs an agent ~32,056 tokens before any work — more than 100% of MCP servers.
Split rarely-used tools into a separate server or a toolset the client can enable, or expose one "search tools" entry point. Many agents load every connected server's tools into every request.
Negotiates MCP 2024-11-05. Structured output, tool output schemas and elicitation arrived in 2025-06-18.
Upgrade the MCP SDK and negotiate 2025-06-18 or newer.
Handshake + tools/list takes ~2,166 ms.
Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.
In the last 30 days: 1 tool(s) removed and 22 schema change(s).
Add new tools or optional parameters instead of renaming or removing; deprecate first (say so in the description) and remove later. Agents cache tool contracts.
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably.
45 of 58 tool(s) carry no readOnlyHint/destructiveHint annotations.
Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones.
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. All of them as JSON: /v1/readiness/mcp-registry%2Fio.github.cnghockey%2Fsats4ai/fixes
{
"name": "analyze_image",
"description": "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 reasoning. 21 sats per image. Pay per request with Bitcoin Lightning — no API key or signup needed. Requires create_payment with toolName='analyze_image'.",
"inputSchema": {
"type": "object",
"required": [
"paymentId",
"prompt",
"imageBase64"
],
"properties": {
"prompt": {
"type": "string",
"description": "Question or analysis prompt for the image"
},
"modelId": {
"type": "number",
"description": "Optional. Omit for default model."
},
"paymentId": {
"type": "string",
"description": "Valid payment ID (must be paid)"
},
"imageBase64": {
"type": "string",
"description": "Base64 encoded image to analyze. Single images only — for PDFs or multi-page document text use extract_document (a PDF sent here is treated as an image and may return a wrong/hallucinated result with no error)."
}
}
},
"annotations": {
"readOnlyHint": true
}
}{
"name": "check_job_status",
"description": "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. Returns JSON: { status: 'IN_PROGRESS' | 'COMPLETED' | 'FAILED', requestId, jobType }. For epub-audiobook, also includes progress (0-100) and chapterProgress array. Poll every 5-10 seconds. When status is 'COMPLETED', call get_job_result to retrieve the output. When status is 'FAILED', the response include",
"inputSchema": {
"type": "object",
"required": [
"requestId",
"jobType"
],
"properties": {
"jobType": {
"enum": [
"video",
"video-image",
"video-fal-standard",
"video-fal-pro",
"image-3d",
"transcription",
"transcribe-translate",
"translate-epub",
"epub-audiobook",
"ai-call"
],
"type": "string",
"description": "Must match the async tool: video=generate_video, video-image=animate_image, image-3d=generate_3d_model, transcription=transcribe_audio, epub-audiobook=epub_to_audiobook, ai-call=ai_call. video-fal-standard/video-fal-pro = the fallback jobType generate_video returns when the primary video model is at capacity."
},
"requestId": {
"type": "string",
"description": "The requestId returned by the async tool (e.g., from generate_video, animate_image, generate_3d_model, transcribe_audio, epub_to_audiobook, ai_call)"
}
}
},
"annotations": {
"idempotentHint": true,
"readOnlyHint": true
}
}{
"name": "convert_file",
"description": "Convert files between 200+ formats: documents (PDF, DOCX, XLSX, HTML→PDF), images (PNG, JPG, WEBP, SVG), PDF first page to image (PDF→JPG, PDF→PNG), audio (MP3, WAV, FLAC), video (MP4, AVI, MOV). Industrial-grade conversion engine — preserves formatting and quality. Returns download URL. 100 sats. Pay per request with Bitcoin Lightning — no API key, no account, no subscription needed. Requires create_payment with toolName='convert_file'.",
"inputSchema": {
"type": "object",
"required": [
"paymentId",
"extensionFrom",
"extensionTo"
],
"properties": {
"fileUrl": {
"type": "string",
"description": "Public URL to the file (provide this OR fileBase64)"
},
"paymentId": {
"type": "string",
"description": "Valid payment ID (must be paid)"
},
"fileBase64": {
"type": "string",
"description": "Base64-encoded file (provide this OR fileUrl)"
},
"extensionTo": {
"type": "string",
"description": "Target format without dot (e.g., 'pdf', 'docx')"
},
"extensionFrom": {
"type": "string",
"description": "Source format without dot (e.g., 'pdf', 'docx')"
}
}
},
"annotations": {
"readOnlyHint": true
}
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/io.github.cnghockey/sats4ai"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/io.github.cnghockey/sats4ai"}) over MCP.
text_to_speech ~11,819 tokenscreate_payment ~1,031 tokensepub_to_audiobook ~853 tokensrender_card ~789 tokenstranscribe_audio ~675 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fio.github.cnghockey%2Fsats4ai?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fio.github.cnghockey%2Fsats4ai?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.cnghockey%2Fsats4ai.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.cnghockey%2Fsats4ai.svg :target: https://glimind.com/server/mcp-registry%2Fio.github.cnghockey%2Fsats4ai?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:510dd3a17c2fd546…, first seen 2026-10-17, included at leaf 816 of 19,465. Version history · verify what your client received.
Compare: most reliable media servers · most reliable communication servers · most reliable ml servers · most reliable other servers · most reliable productivity servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-18 01:10 UTC, the Cnghockey Sats4ai MCP server is up with a Glimind reliability score of 87/100 (grade B). Over the last 30 days it answered 99.9% of Glimind's liveness checks. It had 20 outages in 90 days, with a median recovery of 2 minutes.
Cnghockey Sats4ai MCP server advertises 72 tools, including 3d, ai_call, analyze_image, animate_image, await_result.
Point your MCP client at this streamable-http endpoint: https://sats4ai.com/api/mcp
Glimind scanned all 58 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.