[ agent capabilities ]

The MCP tool directory.

Each row is one tool from one provider. Tools sharing a name across providers (e.g. search) are listed separately because they aren't interchangeable.

[ 6 tools indexed ]

[ matching tools ]

6 / 6

BrandKarma /

crop_image

[  remote  ] Account required

Crops an existing image to a specific rectangle region. Creates a new image — the original is kept. Returns the new image URL. Use get_image_dimensions first if you need to know the source image size.

BrandKarma /

generate_image

[  remote  ] Account required

Expensive LLM job — does not spend a researched cluster. Generates an AI image for a brand. Two models are available: 'gemini-3.1-flash-image-preview' (Nano Banana 2 — fast, default) and 'gpt-image-2' (GPT Image 2.0 — higher quality). If 'model' or 'aspectRatio' is omitted, the brand's defaults from upsert_visual_style (defaultModel / defaultAspectRatio) are used as fallbacks before the built-in default. The 'prompt' can be plain text OR a JSON object encoded as a string. When using JSON, keys are merged with the brand's visual style — per-image keys take precedence over brand defaults. Use get_visual_style to see what's already configured. Recognized JSON keys (first-class — influence the rendering): 'imageDescription' (the main subject — required if no plain-text prompt), 'altText', 'style', 'colorScheme' / 'colorPalette', 'mood', 'motif', 'lighting', 'composition', 'additionalInstructions', 'constraints' (array of negative prompts). Translatable keys (carried through localization): 'imageDescription', 'altText', 'text', 'title', 'caption', 'description'. Unknown keys pass through verbatim to the image model — useful for one-off experiments, but the brand-level fields above are what flow consistently across calls. Note: 'aspect' is NOT a recognized JSON key — pass aspect ratio via the 'aspectRatio' parameter, not in the JSON body. Example JSON prompt: {"imageDescription":"Cute robots working in a garden","motif":"isolated subjects","lighting":"soft natural daylight"}. Returns the public URL of the generated image.

BrandKarma /

get_research_dossier

[  remote  ] Account required

Reads a research dossier: its status, its claims with the source URLs and dates behind them, where the sources disagree, what the research could not settle, and the primary research it suggests the user do themselves. Cite claims by their id when writing briefs or ideas — a claim id resolves to a URL and a date, which is what makes 'based on several recent sources' checkable rather than a claim about the article. Pass planId + workstreamId instead of dossierId to look up a workstream's dossier.

BrandKarma /

rediscover_brand

[  remote  ] Account required

Re-run AI-powered brand discovery. Crawls the brand website and uses an LLM to refresh competitors, topics, categories, markets, keywords, and AI analysis notes. Expensive LLM job — does not spend a researched cluster. Requires the brand to have a website URL and at least one industry.

BrandKarma /

resize_image

[  remote  ] Account required

Resizes an existing image to fit within the given max dimensions, preserving aspect ratio. Creates a new image — the original is kept. Returns the new image URL.

BrandKarma /

start_deep_research

[  remote  ] Account required

Spends one researched cluster from the plan. Researches a topic deeply into a durable dossier: four search engines are each asked their own questions, the best sources found are fetched and read, and the claims extracted from them are merged into one list with source URLs, dates, the points where sources disagree, and the questions the research could not settle. Runs as a background job — poll get_research_dossier or wait_for. Research a topical cluster once and let its articles draw different subsets; researching per article costs more and is what makes articles in one cluster sound alike. Pass planId + workstreamId to research a workstream (its title, goal, audience and brand keywords are used automatically, and the workstream's existing dossier is reused), or topic for a free-form one. A workstream-bound run also proposes articles from the dossier when it finishes.