netcafe-images
Diagrams, badges, charts and QR codes as plain image URLs you can paste into Markdown.
Should I use this
Quality & Safety
Findings (7)
- HIGH
- MEDIUMin make_qr
- MEDIUMin make_badge
- MEDIUMin make_chart
- MEDIUMin render_diagram
- MEDIUMin check_job
- LOWin make_chart
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"netcafe-images": {
"url": "https://ainetcafe.com/mcp/img?s=registry"
}
}
}Remote endpoints
https://ainetcafe.com/mcp/img?s=registrystreamable-httpWhat it can do
Tool inventory
Tools (8)
π’what_can_you_do(task)
Describe a task in plain language (any language) and get back exactly which tools on this server do it, with ready-to-run example calls β instead of reading the whole catalogue and guessing. Also returns multi-step recipes when a task needs several tools chained (invoices to a ledger, a bank statement reconciled, a messy CSV turned into a deliverable). Deterministic and free: it calls no model, costs nothing, and never runs out of quota. Call this FIRST when you are not sure what this server offers.
Input Schema
{
"type": "object",
"properties": {
"task": {
"type": "string",
"description": "What you are trying to do, e.g. \"reconcile a bank statement against my books\" or \"ζδΈε εη₯¨ζ΄ηζθ½ε
₯账ηθ‘¨ζ Ό\""
}
},
"required": [
"task"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’split_spritesheet(url, rows, cols, margin)
Cut a packed sprite sheet / texture atlas into separate transparent PNGs, returned as a zip. Give rows and cols for a uniform grid, or omit them to auto-detect sprites by transparent gaps.
Input Schema
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Public URL of the sprite sheet image."
},
"rows": {
"type": "integer",
"description": "Grid rows. Omit together with cols to auto-detect."
},
"cols": {
"type": "integer",
"description": "Grid columns."
},
"margin": {
"type": "integer",
"description": "Pixels to trim inside each grid cell (for sheets with padding)."
}
},
"required": [
"url"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’make_qr(text)
Any text or URL β a QR code PNG you can embed or download. Stateless URL form: https://ainetcafe.com/i/qr/<text>
Input Schema
{
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "The text or URL to encode."
}
},
"required": [
"text"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’text_to_image(prompt, aspect)
Text prompt β a generated image, returned as a hosted URL you can embed straight into Markdown, HTML or a chat reply. Use it for illustrations, covers, concept art, social cards and mockups. Returns a job_id; poll check_job for the image url (about 1 minute). The beta platform covers the user charge ($0.00); capacity is rate-limited.
Input Schema
{
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "What to draw. Be specific about subject, style and composition."
},
"aspect": {
"type": "string",
"description": "Aspect ratio: \"1:1\" (default), \"16:9\", \"9:16\", \"4:3\", \"3:4\"."
}
},
"required": [
"prompt"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’make_badge(label, message, color)
Label + message + colour β a shields.io-style badge SVG, plus a ready-to-paste Markdown embed line. Stateless URL form: https://ainetcafe.com/i/badge/<label>-<message>-<color> β embed it and it renders forever.
Input Schema
{
"type": "object",
"properties": {
"label": {
"type": "string",
"description": "Left side text, e.g. \"build\"."
},
"message": {
"type": "string",
"description": "Right side text, e.g. \"passing\"."
},
"color": {
"type": "string",
"description": "brightgreen | green | blue | red | orange | yellow | grey | purple, or a hex like \"007ec6\"."
}
},
"required": [
"label",
"message"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’make_chart(labels, values, type, config)
Labels + values (or a full Chart.js config) β a chart PNG URL. Bar, line, pie, radar, scatter. Stateless URL form for embedding: https://ainetcafe.com/i/chart/<labels>|<values>
Input Schema
{
"type": "object",
"properties": {
"labels": {
"type": "string",
"description": "Comma-separated labels, e.g. \"Mon,Tue,Wed\"."
},
"values": {
"type": "string",
"description": "Comma-separated numbers, e.g. \"3,7,5\"."
},
"type": {
"type": "string",
"description": "bar (default) | line | pie | doughnut | radar | scatter."
},
"config": {
"type": "string",
"description": "Optional full Chart.js JSON config; overrides labels/values."
}
},
"required": []
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’render_diagram(source, type, format)
Turn diagram-as-code into an image: Mermaid, PlantUML, Graphviz/DOT, C4, Excalidraw and 20+ more (self-hosted Kroki). Returns a hosted SVG/PNG URL you can embed directly in Markdown or HTML. Example β GET "https://ainetcafe.com/t/render_diagram?source=graph TD;A--%3EB&format=png"
Input Schema
{
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "The diagram source code (e.g. a Mermaid flowchart)."
},
"type": {
"type": "string",
"description": "Diagram language: mermaid (default), plantuml, graphviz, c4plantuml, excalidraw, blockdiag, erdβ¦"
},
"format": {
"type": "string",
"description": "\"svg\" (default) or \"png\"."
}
},
"required": [
"source"
]
}Output Schema
{
"type": "object",
"additionalProperties": true
}π’check_job(job_id)
Get the status or result of a job started by deep_research, translate_pdf, or make_slides. Poll every 15-30 seconds until status is "done" or "error". While work is pending, follow retry_after_seconds and next_action; when complete, prefer structured_result when present. Example β GET https://ainetcafe.com/t/check_job?job_id=<id-from-a-job-tool>
Input Schema
{
"type": "object",
"properties": {
"job_id": {
"type": "string",
"description": "The job_id returned when the task was started."
}
},
"required": [
"job_id"
]
}Output Schema
{
"type": "object",
"properties": {
"job_id": {
"type": "string"
},
"kind": {
"type": "string"
},
"status": {
"type": "string"
},
"is_terminal": {
"type": "boolean"
},
"retry_after_seconds": {
"type": "integer"
},
"next_action": {
"type": [
"object",
"null"
]
},
"result": {},
"structured_result": {},
"error": {
"type": "string"
}
},
"required": [
"job_id",
"status"
]
}Community
Evidence