Skip to main content
Glama
628,630 tools. Updated 2026-10-02 02:34

"Techniques for Creating Consistent 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
  • Search the MITRE ATLAS catalog of AI/ML attack techniques by keyword, tactic, or maturity. Default response is SLIM (description truncated to 240 chars per row); pass include='full' for the verbose record. Pass exclude_id when chaining from atlas_technique_lookup to skip self in sibling-tactic searches. Use this to discover techniques matching a threat-model question, e.g. 'what techniques target LLM serving infrastructure?'. Drill into atlas_technique_lookup with any returned technique_id for the full description, ATT&CK bridge, and pivot hints. For broader cross-referencing: when a result has attack_reference_id, that bridges to D3FEND mitigations via d3fend_defense_for_attack. Free: 30/hr, Pro: 500/hr. Returns {query (echoed filters), total, results [{technique_id, name, description (truncated by default), tactics, inherited_tactics, maturity, attack_reference_id, subtechnique_of}], next_calls}.
    ConnectorNo auth
  • Load the Governance Auditor persona for consistent fleet audits. PREMIUM (license). The persona is methodical, evidence-driven, and allergic to 'it's probably fine'. Takes no arguments. Returns {"persona": ..., "identity": ..., "rules": ["...", ...], "opening_move": "..."} ready to adopt as a system prompt. Use to keep repeated audits consistent in voice and rigor. Not for running an audit - the audit tools do that. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
    ConnectorNo auth
  • Load the Governance Auditor persona for consistent fleet audits. PREMIUM (license). The persona is methodical, evidence-driven, and allergic to 'it's probably fine'. Takes no arguments. Returns {"persona": ..., "identity": ..., "rules": ["...", ...], "opening_move": "..."} ready to adopt as a system prompt. Use to keep repeated audits consistent in voice and rigor. Not for running an audit - the audit tools do that. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
    ConnectorNo auth
  • Create a complete Google Ads Performance Max campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED — activate later with adsap_google_set_entity_status), location/language targeting, and one asset group with text assets plus images previously created via adsap_google_upload_asset. Use dry_run: true first — Google validates the whole chain without creating anything; show the plan, get confirmation, then execute. Asset-group minimums (enforced): 3-15 headlines (<=30 chars), 1-5 long headlines (<=90), 2-5 descriptions (<=90, at least one <=60), business name (<=25), 1-5 logo images (1:1, min 128x128), 1-20 landscape images (1.91:1, min 600x314), 1-20 square images (1:1, min 300x300). Video is optional — without one, Google may auto-generate video from your assets. bidding_strategy 'auto' resolves to maximize_conversions with a conversion-tracking preflight warning when the account has no conversion actions. retail: true attaches the account's ACTIVE Merchant Center link (fails cleanly if none). ad_account_id is the bare 10-digit customer ID. For Search campaigns use adsap_google_create_search_campaign; for Meta use adsap_create_campaign.
    ConnectorAPI key
  • Search detailed documentation for Strudel live coding or ABC/ABCJS notation. Returns relevant code examples and explanations from the official docs. Use this when the curated guides (get-strudel-guide, get-music-guide) don't cover what you need — for specific functions, advanced techniques, or when you're unsure about syntax. Powered by semantic search over strudel.cc and ABCJS docs.
    ConnectorNo auth

Matching MCP Servers

Matching MCP Connectors

  • Upload images directly to Metadata platform library to create image creatives. Downloads images from provided URLs and uploads them to the platform. REQUIRED STEP IN AD CREATION WORKFLOW: This tool MUST be called between generate_brand_creative and create_update_image_ad. **WORKFLOW INTEGRATION:** This tool is part of the ad creation workflow and should be used: 1. BEFORE creating ads with create_update_image_ad (which requires imageLibraryId/creativeID) 2. IN COMBINATION with generate_brand_creative to create AI-generated images first, then upload them 3. When you need to upload existing images from external sources **COMMON WORKFLOWS:** - Upload existing images → Get imageLibraryId → Use in create_update_image_ad - Generate image with generate_brand_creative → Download generated image → Upload with this tool → Use in create_update_image_ad - Batch upload multiple creative assets for campaign preparation **IMPORTANT:** The returned image ID (imageLibraryId/creativeID) is REQUIRED when creating ads. Every ad needs a creative asset, so you must upload images first before calling create_update_image_ad. REQUIRED PARAMETERS: - images: Array of image URLs to upload IMAGE REQUIREMENTS: - URLs must be valid and publicly accessible - Supported formats: PNG, JPG, JPEG, GIF, WebP, and others - Images will be downloaded and then uploaded to platform - Filenames with spaces will have spaces replaced with underscores EXAMPLES: Single Image: upload_image([ "https://my-bucket.s3.amazonaws.com/images/sample-image.png" ]) Multiple Images: upload_image([ "https://my-bucket.s3.amazonaws.com/images/logo.png", "https://example-assets.s3.us-west-2.amazonaws.com/photos/banner.jpg", "https://content-bucket.s3.eu-west-1.amazonaws.com/uploads/hero image.webp" ]) RESPONSE FORMAT: Returns array of objects for each image: [ { "url": "https://original-url.com/image.png", "name": "image.png", "id": 12345, "success": true }, { "url": "https://failed-url.com/bad.png", "name": "bad.png", "id": null, "success": false, "error": "Download failed: Connection timeout" } ] ERROR HANDLING: - If one upload fails, others will continue - Each result includes success status - Failed uploads include error message - Successful uploads include platform image ID USE CASES: - Upload creative assets before creating ads - Import images from external sources - Batch upload multiple campaign images - Migrate images from other platforms
    ConnectorAPI key
  • Partially updates the Images settings tab: cover and inline image styles (sketch, photo_realistic, digital_illustration, cinematic_realism, polygon, pixel_art, packshot), brand color, cover and inline image instructions and inline images per post (0-3). Only the fields you pass change; the brand logo, the AI images vs media library choice and media variations can only be changed in the app. Returns the images section after the update. Pass website_id when the account has several websites (see get_account).
    ConnectorOAuth
  • Admin only. Latest teasers plus already-generated images. Use ticker for all current items on a symbol, type for one content_type across symbols, or since for the worker poll. Then call marketing_graphics(content_id) for live formats. Reuse items[].images[] when the option you want is already rendered. Args: since: ISO timestamptz — inbox newer than this ticker: Current items for this symbol type: allowlisted content_type or research_drop limit: 1–200 (default 50)
    ConnectorNo auth
  • 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
  • Bulk ATLAS technique lookup — retrieve full records for up to 50 techniques in a single request instead of N separate atlas_technique_lookup calls. Designed as the natural follow-up to atlas_case_study_lookup, whose techniques_used array can be passed directly. Each item is the same shape as atlas_technique_lookup, including parent-tactics inheritance for sub-techniques (inherited_tactics=true flag) and per-item next_calls (D3FEND bridge when attack_reference_id present, sibling-technique search by tactic, parent lookup for sub-techniques). Free: 30/hr (1 per item), Pro: 500/hr. Returns {results [{technique_id, status (ok|not_found|invalid_format), technique, error}], total, successful, failed, partial, summary}.
    ConnectorNo auth
  • Describe what's going wrong — your human's complaint, or a failure you notice in your own behavior — and get the matching techniques. Deterministic matching; if the description fits two problems it returns one clarifying question instead of guessing.
    ConnectorNo auth
  • Load the Senior Reviewer persona for consistent, high-signal reviews. PREMIUM (license). The persona is a reviewing voice that is skeptical, specific, and kind — demands evidence over vibes and blocks only on real risk. Takes no arguments. Returns {"persona": ..., "identity": ..., "rules": ["...", ...], "opening_move": "..."} ready to adopt as a system prompt. Use to keep repeated reviews consistent in voice and rigor. Not for running a review - the scan tools do that. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
    ConnectorNo auth
  • Load the Senior Reviewer persona for consistent, high-signal reviews. PREMIUM (license). The persona is a reviewing voice that is skeptical, specific, and kind — demands evidence over vibes and blocks only on real risk. Takes no arguments. Returns {"persona": ..., "identity": ..., "rules": ["...", ...], "opening_move": "..."} ready to adopt as a system prompt. Use to keep repeated reviews consistent in voice and rigor. Not for running a review - the scan tools do that. Errors: on invalid, missing, or malformed input this tool never raises a protocol error — it returns {"error": "<what is wrong and how to fix it>"}. Every call is read-only and idempotent, so after correcting the input it is always safe to retry.
    ConnectorNo auth
  • Retrieve the complete markdown of one documentation article by the id returned from `search` (for example `en/claude-code/advanced-techniques/hooks-automation`). The text is returned in full; `metadata.gated` only reports whether the article sits behind the paywall on the web. An unknown id is an error — call `search` first.
    ConnectorNo auth
  • Create a new Flow character whose portrait (and optionally body) is a REAL PHOTO, not a text description or generation. Both photos become the character's slot-0 (portrait) and slot-1 (body) images directly — Flow's own upload mechanism in its New Character composer, discovered live 2026-07-11 — no image generation call happens for either slot, so resemblance is exact, not "similar style". Boots the on-demand Chrome for this account (~15-30s, longer if body_photo_base64 is also given), same as create_character, no Android/recaptcha involved. photo_base64: raw base64-encoded image bytes, no data: URI prefix — portrait. body_photo_base64: same format, optional — ideally a full-body photo of the same person, for a guaranteed-exact body image (no generation at all for that slot). physical_description: IMPORTANT, look at the photo yourself and write this — a detailed physical description (build, hair color/style, eye color, clothing, distinguishing features), similar in spirit to: "Adult male, mid-20s, ~180cm, lean build. Medium-brown wavy hair, light blue-grey eyes, faint stubble. Wears a dark grey hoodie, dark jeans, white sneakers." This gets saved into the same "Character Info" field as Flow's own UI. CORRECTED same day as this tool was first built: an earlier version of this doc claimed body/multi-view generation can never stay consistent with a photo-seeded portrait — WRONG, confirmed live. The actual missing ingredient was this detailed text spec — with it, both generate_character_turnaround and generate_character_expression_sheet below produce genuinely consistent, on-model results (reproduced live against Flow's real UI, not just guessed). Skip this only for a bare portrait-only character with no further generation planned. Next step after you have entity_id: update_character for a display name, then generate_character_turnaround / generate_character_expression_sheet if you want those (skip if you already passed body_photo_base64 for an exact body photo — generating over it would replace the real photo with a generated approximation). Fidelity note added 2026-07-11 (later same day): "genuinely consistent" above means consistent WITH ITSELF across panels (same invented-looking person in every view), not necessarily an exact match to the real person's face — real-world feedback was "I don't recognize myself." Good for stylized/invented character sheets; if the goal is content that's recognizably the actual person, use generate_video_with_reference (r2v) instead, which conditions on the real photo's pixels rather than a description. name: optional, added 2026-07-25 — give the character a short human-readable name and it's saved to YOUR list (list_characters()), keyed on the uploaded photo as the identity reference (portrait_media_id). Once named, use generate_with_face(character=name, prompt=...) for further images instead of tracking portrait_media_id yourself. Must be unique among your own characters; a clash does NOT fail the call — the character is still created in Flow, just reported back with a `registration_error` instead of a `name` in the result, so pick a different name and register it yourself later if that happens.
    ConnectorNo auth
  • Get available intent topics for BOMBOORA audience creation. IMPORTANT: Call this tool first before suggesting or creating any Bombora audience. If the response returns NO topics (empty list), Bombora is NOT available for this account — do NOT suggest Bombora audiences. Instead, recommend creating a firmographic audience (create_firmographic_audience) as the preferred alternative. Retrieves the list of available buyer intent topics that can be used when creating BOMBOORA intent topic audiences. These intent topics represent different buyer interest areas and purchasing signals that can be used for precise audience targeting. WHEN TO USE: - Always call this BEFORE suggesting or creating a Bombora audience to verify topic availability - Discover available intent topics before creating a BOMBOORA intent topic audience - Understand what buyer intent signals are available for targeting - Build audiences based on specific buyer interests and purchasing signals - Integrate intent topic selection into the audience creation flow RETURNS: List of available intent topics with their details including: - Topic ID/name - Topic description - Available packages or categories - Any additional metadata for targeting configuration NEXT STEPS: After retrieving intent topics, use the intent topic IDs with the audience creation tool to create BOMBOORA intent topic based audiences.
    ConnectorAPI key
  • The account's images, newest first: uploads, images found by page scans, and re-runs. Filter by status, by source (upload or scan) or by one scan's id. Pages of up to 100; ask for the next page while page is below last_page. For one image whose id you already have, call get_image instead.
    ConnectorOAuth
  • Look up a MITRE ATLAS technique — the AI/ML adversarial attack catalog. ATLAS catalogues TTPs targeting machine learning systems: prompt injection, model evasion, training data poisoning, model theft, etc. Roughly 80% of ATLAS techniques are AI/ML-specific (no ATT&CK bridge); 20% mirror an enterprise ATT&CK technique via attack_reference_id — use that to pivot to D3FEND defenses (d3fend_defense_for_attack) and CVE search. Sub-techniques inherit `tactics` from the parent (inherited_tactics=true flag) when ATLAS upstream leaves them empty. Use this tool when the user asks about AI/ML threats, LLM red-teaming, or adversarial ML; for multiple techniques in one call (e.g. drilling into a case study's techniques_used), prefer bulk_atlas_technique_lookup. Returns 404 when the id is not in the synced ATLAS catalog. Free: 30/hr, Pro: 500/hr. Returns {technique_id, name, description, tactics, inherited_tactics, maturity (demonstrated|feasible|realized), attack_reference_id, attack_reference_url, subtechnique_of, created_date, modified_date, next_calls}.
    ConnectorNo auth
  • Delete a single item by id. `kind` MUST match the item type: 'text' for text nodes, 'line' for freehand strokes, 'image' for images — the wrong kind silently targets the wrong table and is a common mistake. Get the id + type from `get_board` (texts[], lines[], images[]). There is no bulk/erase-all tool: loop if you need to delete multiple items.
    Connector
    Destructive
    No auth
  • Get full details for a single Rakentaja Outlet product. Fetches both the product record and a real-time availability check in parallel. Use this after `search_catalog` returns a product ID to show the user complete information (full description, all images, current stock). Args: product_id: Product ID from `search_catalog` results (integer). Returns: JSON with product details: - id, name, sku, ean, brand, category - description (full HTML/text), description_short - price_gross (incl. 25.5% VAT), price_net, vat_percent, currency - available_for_order (bool), availability_status ("in_stock" | "supplier_stock" | "out_of_stock"), estimated_delivery_min_days, estimated_delivery_max_days - in_stock, stock_quantity, supplier_in_stock, supplier_stock_quantity (raw fields — prefer available_for_order + availability_status) - weight_kg, unit - product_url (direct link to product page) - image_url (main image), images (list of all image URLs) - availability: fresh stock check result (may be more current than stock_quantity if inventory changed since catalog was cached) - disclaimer: legal notice that prices are indicative On error, raises MCP ToolError → response has isError:true with structured JSON: {"error": {"code": "not_found" | "invalid_argument" | "backend_unavailable", "message": "...", "field": null|str, "retryable": true|false}}. The StructuredErrorMiddleware ensures the format is consistent across all tools. Notes: - Prices include Finnish 25.5% VAT. Business buyers see price_net for VAT-registered net price. - Pass `product_url` to the user for viewing or adding to cart — do not attempt to add to cart via this tool (use create_cart_link).
    ConnectorNo auth