Skip to main content
Glama
732,119 tools. Updated 2026-11-01 13:34

"A service for generating infographic images" matching MCP tools:

  • Upload a base64-encoded file to a site's container. Use this for binary files (images, archives, fonts, etc.). For text files, prefer write_file(). Requires: API key with write scope. Args: slug: Site identifier path: Relative path including filename (e.g. "images/logo.png") content_b64: Base64-encoded file content Returns: {"success": true, "path": "images/logo.png", "size": 45678} Errors: VALIDATION_ERROR: Invalid base64 encoding FORBIDDEN: Protected system path
    ConnectorNo auth
  • Check the build status of an EXISTING artifact (from artifact-create). Read-only. Generation is asynchronous, so this is how you find out it finished. Call it with { sessionId, wait: true } and it WAITS for you: the call returns as soon as status is 'ready' or 'failed', or after about 45 seconds still 'generating'. Then, you can call it again. This tool is meant to be called right after artifact-create, before replying to the user, and keep getting called until status is no longer 'generating'. ONLY when you want an instant snapshot, this tool can be called without wait (or false); the idea is to never spin on wait: false. Requires sessionId — the id returned by artifact-create (or the last path segment of an artifact URL like https://app.agentgrid.io/artifacts/<sessionId> or https://dev.animaapp.com/chat/<sessionId>). **Returns:** { success, sessionId, status: 'generating' | 'ready' | 'failed', progress (0–100, while generating), name, artifactUrl (generating/ready only), playgroundUrl (app and knowledge artifacts only, generating/ready only), previewUrl (app, knowledge and markdown artifacts only, generating/ready only), error (when failed), nextStep (when a wait returned still generating) }
    ConnectorOAuth
  • Delete ONE AI package resource of a video in one language (eBook, mind map or quiz) — cannot be undone: its content, PDF, images and the published file are removed, also for legacy resources. Same as the dashboard's Remove. Refused while it is still generating (checked before deleting; if that check fails nothing is deleted). Other languages and resources stay. To remove a failed generation card use panda_delete_ai_workflow.
    Connector
    Destructive
    No auth
  • Generate one or more finished images from a template (get a template_id from recommend_template or browse_templates) plus a description. Use this after the user has selected or explicitly supplied a template_id; otherwise call `recommend_template` first so the visual gallery can collect the selection. Works for all categories (Instagram, logo, app-store, Visual Novel backgrounds/sprites, CG illustrations). Pass variants for multi-image output (expressions, time-of-day, etc.). Pass session_id to refine a prior result. Pass context_ids to ground a new image on prior designs (character consistency for VN CG scenes). Set model to 'minimax-h3-image-balanced' or 'minimax-h3-image-quality' (or use the 'h3 balanced'/'h3 quality' aliases) to render through the MiniMax H3 image service; context_ids are forwarded as ordered H3 reference images.
    ConnectorNo auth
  • 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 programmatically. Supports full HTML/CSS including tables, images (base64 or URL), and inline styles. For Markdown input, set format='markdown'. 50 sats per conversion. Use convert_file instead for converting existing files between formats (e.g., DOCX→PDF). Pay per request with Bitcoin Lightning — no API key or signup needed. Requires create_payment with toolName='convert_html_to_pdf'.
    ConnectorNo auth
  • Create a carousel by importing your own slide content. IMPORTANT: Call postnitro_get_import_template FIRST to see the exact slide structure and rules. templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Strict rules (violations will cause errors): 1. First slide MUST be type "starting_slide" (exactly 1) 2. Middle slides MUST be type "body_slide" (at least 1) 3. Last slide MUST be type "ending_slide" (exactly 1) 4. Infographic columnCount must not exceed 3 5. When columnDisplay is "cycle", put ALL data in the FIRST columnData entry only 6. Setting layoutType "infographic" replaces the image field Minimal example: slides: [ { type: "starting_slide", heading: "Welcome!", description: "Intro", cta_button: "Swipe →" }, { type: "body_slide", heading: "Key Point", description: "Details here" }, { type: "ending_slide", heading: "Thanks!", cta_button: "Learn More" } ]
    ConnectorAPI key

Matching MCP Servers

Matching MCP Connectors

  • Generate images with the catalogue's image model, returned inline; image price plus $0.01 a call.

  • Image toolkit: resize, convert, compress, crop, metadata, hashes, favicons, OCR, QR codes, barcodes.

  • Generate a standalone image from a text prompt, or edit/restyle images supplied as references. **When to use:** Use this tool based on the requested output, not assumed model limitations such as an inability to render text. If the user explicitly asks for an image, picture, photo, illustration, artwork, sticker, icon, graphic, or 2d vector, use this tool. The explicitly named output takes priority over design-like content within it, including text, statistics, labels, callouts, or an infographic-like composition. For example, "create an image about coffee with bold stat callouts" uses generate-image. Use create-design when the requested output itself is an editable Canva page or layout, such as "create an infographic". "Create an image of an infographic" still uses generate-image. The verb "create" or "design" alone does not make the request a Canva design. **When not to use:** Do not use when the requested output itself is a designed page or layout, such as an infographic, poster, wallpaper, flyer, presentation, or social media post; use create-design. To add, position, resize, or replace content inside an existing design, use the design-editing workflow instead; the image is source media and the design page is the edit target. **Image references and attachments:** For image-to-image generation or editing, add one MEDIA entry to imageReferences for every reference image. Pass the ID of an existing Canva MEDIA content reference directly. Before using a user-provided attachment as a reference, upload it to Canva: call create-upload-url, then send the attachment's raw bytes to the returned upload URL exactly as instructed. Each upload URL is single-use, so call create-upload-url separately for every attachment. Wait for every upload to succeed, then use the mediaId from each upload response as a separate MEDIA entry in imageReferences. For example, after uploading two attachments (replace the illustrative IDs with their returned mediaIds): ```json { "prompt": "Restyle both reference images as watercolor illustrations", "imageReferences": [ {"type": "MEDIA", "id": "MAAAAAAAAAAA"}, {"type": "MEDIA", "id": "MBBBBBBBBBBB"} ] } ``` Use exactly one imageReferences entry per successfully uploaded attachment. Never combine multiple media IDs into one string or object, and never put an upload URL in imageReferences. Do not pass assistant-hosted attachment URLs directly to this tool. If any attachment cannot be uploaded, do not silently omit it; explain the failure to the user. Omit imageReferences for pure text-to-image generation. **Result:** This call returns only a jobId, not the finished image. When this tool's UI widget is shown, the widget polls get-generate-image-job itself and displays the image when ready - do not poll it yourself. Only when no widget is shown, pass the jobId to get-generate-image-job and keep checking until the job succeeds or fails.
    ConnectorOAuth
  • Generate a standalone image from a text prompt, or edit/restyle images supplied as references. **When to use:** Use this tool based on the requested output, not assumed model limitations such as an inability to render text. If the user explicitly asks for an image, picture, photo, illustration, artwork, sticker, icon, graphic, or 2d vector, use this tool. The explicitly named output takes priority over design-like content within it, including text, statistics, labels, callouts, or an infographic-like composition. For example, "create an image about coffee with bold stat callouts" uses generate-image. Use create-design when the requested output itself is an editable Canva page or layout, such as "create an infographic". "Create an image of an infographic" still uses generate-image. The verb "create" or "design" alone does not make the request a Canva design. **When not to use:** Do not use when the requested output itself is a designed page or layout, such as an infographic, poster, wallpaper, flyer, presentation, or social media post; use create-design. To add, position, resize, or replace content inside an existing design, use the design-editing workflow instead; the image is source media and the design page is the edit target. **Image references and attachments:** For image-to-image generation or editing, add one MEDIA entry to imageReferences for every reference image. Pass the ID of an existing Canva MEDIA content reference directly. Before using a user-provided attachment as a reference, upload it to Canva: call create-upload-url, then send the attachment's raw bytes to the returned upload URL exactly as instructed. Each upload URL is single-use, so call create-upload-url separately for every attachment. Wait for every upload to succeed, then use the mediaId from each upload response as a separate MEDIA entry in imageReferences. For example, after uploading two attachments (replace the illustrative IDs with their returned mediaIds): ```json { "prompt": "Restyle both reference images as watercolor illustrations", "imageReferences": [ {"type": "MEDIA", "id": "MAAAAAAAAAAA"}, {"type": "MEDIA", "id": "MBBBBBBBBBBB"} ] } ``` Use exactly one imageReferences entry per successfully uploaded attachment. Never combine multiple media IDs into one string or object, and never put an upload URL in imageReferences. Do not pass assistant-hosted attachment URLs directly to this tool. If any attachment cannot be uploaded, do not silently omit it; explain the failure to the user. Omit imageReferences for pure text-to-image generation. **Result:** This call returns only a jobId, not the finished image. When this tool's UI widget is shown, the widget polls get-generate-image-job itself and displays the image when ready - do not poll it yourself. Only when no widget is shown, pass the jobId to get-generate-image-job and keep checking until the job succeeds or fails.
    ConnectorOAuth
  • Use this when the user wants to convert a raster image (logo, icon, illustration, scan, screenshot; PNG, JPEG, WebP, BMP, GIF, TIFF) into a vector: SVG, PDF, EPS, DXF or a re-rendered PNG. Pass the image in exactly one way: image (a file attached to the chat message, ChatGPT), upload_id (from create_upload) or image_base64 (≤2 MB, only exact file bytes you already have as text). If none of these is available, for example an image attached in Claude.ai, call open_editor instead. Returns a download link per format, valid 24 hours (or retention_days), and the SVG inline when small. Uses 1 credit for all formats; mode=test is free and watermarked; mode=preview is a free PNG up to 1 MP whose link buys the vectors later (format=svg, 1 credit). Do not use for generating new images, editing photos or upscaling.
    ConnectorNo auth
  • Get current status and signed media URL for one generation. A generate tool answers with a quick image already finished and with anything slower at once. For a row still queued or generating, call this once: it waits up to 40 seconds and answers the moment the generation is ready or failed. Call it again only while the status is still queued or generating; `ready_in_seconds` says roughly how long is left. `wait_seconds: 0` reads the status without waiting. `include` adds detail the plain read leaves out: `attempts` — every attempt behind a retried row, newest first — and `members`, the generations inside a group (refused on a row that is not a group).
    ConnectorAPI key
  • Fetch and return images from URLs so you can view and describe them. HTTPS only; JPEG/PNG/GIF/WebP up to 5 MB each (SVG unsupported). Allowed hosts: PickFu CDN (pickfu.com, cloudinary.com, *.cloudfront.net, s3.amazonaws.com) and Amazon product images (m.media-amazon.com, *.ssl-images-amazon.com, images-amazon.com). For local image files, call upload_media with no arguments to mint a PickFu upload link, present it to the user, then check_upload for media-cdn.pickfu.com URLs.
    ConnectorOAuth
  • Generate 1–12 images (text-to-image, or edit/combine images passed as VerseIn media URLs). Spends the user's coins: call estimate_cost first and tell the user the price. Calls above the confirmation threshold return needs_confirmation with a confirmation_token; ask the user, then call again with it. Returns task ids; follow them with get_tasks. Never use it to swap faces or to put a real person's face or identity onto someone else; such requests are refused. Generating through an AI assistant is charged in VerseIn coins. Unlimited-plan allowances do not apply here.
    Connector
    Destructive
    OAuth
  • Creates a diagram in a workspace (requires editor access and at least the write permission there; permission is in list_workspaces). workspaceId may be left out when the connection can write to only one workspace. Optionally adds initial content in the same call, one of: ops (same rules as apply_ops; temporary "$" ids are returned in idMap), a Mermaid flowchart (same as compose_diagram: types / layout / direction; returns nodeIds, groupIds and edgeIds), or an infographic spec (same as compose_diagram infographic: returns posterId, nodeIds, blocks, quota and layout; the diagram font is set to the theme’s font). There is no dryRun: every call creates a diagram (compose_diagram dryRun with preview checks a drawing on an existing diagram without writing). The plan’s diagram limit applies (Free: 3 diagrams).
    ConnectorOAuth
  • Adds a new drawing to an existing diagram as one agent change (revert_change can revert it). It only adds shapes: it never changes, moves, reconnects or removes what is already on the canvas; changes to existing shapes, such as inserting a node between two existing ones or renaming one, are made with apply_ops. The drawing is either a Mermaid flowchart (subgraphs become frames, or containers such as network.vpc when you map their ids; map ids, classes or "@shape" to node types with types; unmapped nodes become core.box; options layout, direction ("auto" picks the readable one), frame), or an infographic spec (infographic: theme + blocks; each block is { block, …the node type’s props }, e.g. header, kpi-row, chart, progress, funnel, timeline, process, icon-grid, versus, source) that the server measures and lays out on a 12-column poster — the spec gives data and order, not coordinates. Pie, xychart, timeline, quadrantChart and venn Mermaid diagrams become infographic blocks. It takes exactly one of mermaid and infographic. dryRun checks without writing; with dryRun, preview "light" or "dark" also returns a PNG (a poster exactly as export_diagram draws it). read_me topic "infographics" describes the blocks. Returns applied, seq, batchId, effects, bounds and warnings; Mermaid adds nodeIds, groupIds, edgeIds ("A->B" → edge id) and frameId plus the direction used, an infographic adds idMap, posterId, nodeIds, blocks (node ids and bounds), quota and layout, and each infographic warning’s fix says which span, field or poster size to change. status (≤ 80 characters) is shown to people next to your cursor.
    ConnectorOAuth
  • List hosted images owned by the caller, with optional filters. ``source`` filters by upload origin: ``"upload"`` for directly uploaded images, ``"generated"`` for images created via the image generation tools. Omit to return all sources. ``visibility`` filters by access level: ``"public"`` or ``"private"``. Omit to return both. Pagination: pass ``next_cursor`` from a previous response as ``cursor`` to retrieve the next page. Returns ``{items: [...], next_cursor: str | null}``.
    ConnectorOAuth
  • Create a single-image post (postType IMAGE) from one slide of your own content. Returns an embedPostId to track progress. Unlike a carousel, an image post is ONE slide — pass `slide` as a single object, NOT an array, with no slide `type`. Only `heading` is required. An infographic layout IS supported: set layoutType 'infographic' + layoutConfig on the slide (same shape as carousel infographics). templateId, brandId, and responseType are optional if you've saved defaults via postnitro_set_defaults. Use postnitro_check_status to monitor, then postnitro_get_output to retrieve. Or use postnitro_import_image_and_wait for one step.
    ConnectorAPI key
  • Free, no account needed. Search every ready-made asset three.ws publishes in one call: CC0 3D props and objects, rigged humanoid characters, and retargetable motion clips. Returns ids, titles, tags, licenses, and CDN urls, plus category facets to narrow the next query. Use this before generating anything: if the catalog already has the prop or character, dropping it in is instant and free where generating one is not. Feed a returned id to get_item_source for code that renders it on any site.
    ConnectorNo auth
  • Animate MANY images into videos in ONE call (max 25 jobs). Prefer this over looping lab_animate: it validates every job BEFORE spending any quota, so an invalid job 12 of 15 does not leave 11 paid-for generations running. Quota is spent once, collectively (one ledger row); refunds stay per-clip, so a partial failure refunds only that clip. Returns a batch_id — poll lab_batch_status with it instead of polling each id separately. Every job's prompt goes through the Dreamer first: without valid dreamer_signatur on ALL jobs, nothing is generated or charged; the batch returns each dreamer_fassung and signature for human approval (at most four Dreamer calls at once). Repeat with the approved versions and signatures. `get_cost: true` preflights the whole batch without generating anything.
    ConnectorOAuth
  • List images and videos from posts the connected accounts already published (posts made outside Ignix included), newest first, each with `url` (ready to reuse as post media), `type`, `thumbUrl` and `postedAt`, plus `count`. Use it to reuse real brand photos instead of generating new ones; for files uploaded to or generated in Ignix use list_library_media. It scans about the 120 most recent media items and skips ones whose links no longer work. Returns 30 by default, max 100.
    ConnectorOAuth
  • Returns one node type: label, pack, defaultSize, quotaClass, defaultProps, editableProps, styleProps, ports, whether it is a container (can be a parentId target), nameKey (the prop that names the node), uiFamily, its palette variants (paletteVariants: id, key, label, props) and, when declared, a JSON Schema of its props. editableProps[].ui.control is how the Archboard panel edits a field (date: YYYY-MM-DD text; multi-select: comma-separated option values); without it the input type applies. styleProps lists the style keys this type draws (e.g. accent, background, textColor, icon); other style keys are saved but not shown. A variant key (type::variant, from search_node_types) returns that variant’s defaults. Infographic types also return example (placeholders that show the data format, not real data), limits (soft: readable range; hard: rejected above) and sizing. detail: "compact" returns only the fields needed to write the props (for infographic blocks: propsSchema, composeExample, limits, sizing, styleProps). Every node type also accepts `props.fontFamily` (read_me topic "style", Fonts).
    ConnectorOAuth
  • Searches a curated catalog of 600+ free public APIs (no key, HTTPS) for embedding live data in display HTML via fetch(): weather, news, finance, sports, images, food and 40+ more categories. Use when generating HTML that needs live internet data. Set list_categories=true to get the category menu with counts instead of search results. Returns docs links, CORS status and fetch() hints. No authentication required.
    ConnectorNo auth