Categories › Business & Finance › Marketing, ads & analytics
AI marketing agent for paid ads: run campaigns on 11 ad networks and read your web analytics.
Remote server: your requests and data go to app.hermoso.ai. Claude Code: claude mcp add --transport http hermoso-ads-manager https://app.hermoso.ai/mcp?tools=app-ads&src=registry · Claude app: Settings → Connectors → Add custom connector.
The tools this server listed when we connected to it, in its own words.
enable_tools — LIST a group of tools that is not in this session's roster. IT IS NOT HOW YOU REACH A TOOL — call_tool runs any Hermoso tool whether or not get_instructions — Return the FULL instructions for a Hermoso tool whose description ends "Full rules: get_instructions(…)", or for any tool by name, or topic find_tools — Search EVERY Hermoso tool — your starting list is deliberately short, and everything else in the product is here — by name, task or group. Ecall_tool — Run ANY Hermoso tool by name — including the paid-campaign, analytics and channel-admin tools that are not in this session's starting list —hermoso_capabilities — Probe what this Hermoso account can do RIGHT NOW: available image/video model ids + their credit costs (estimates: a render is charged its ahermoso_credits — Return the credit balance, recent priced calls with their credits, and costModel (the one-sentence rule of what costs credits). THE RULE: onbuy_credits — Out of credits? Top up with a credit PACK. Call with no argument to list the available packs (id · credits · price). If the account has a sareport_bug — Report a bug in Hermoso to the team. Use this when something in Hermoso genuinely misbehaves — a tool errors unexpectedly, returns a wrong orequest_feature — Ask the Hermoso team for a capability that doesn't exist yet. Use this when you need something Hermoso genuinely can't do — an unsupported pbilling_status — Show this account's billing at a glance: current plan (quote plan.priceUsd per plan.period), credit balance, whether auto-reload is on, whetupgrade_plan — Change the SUBSCRIPTION plan (admin only). No argument lists the monthly plans. Basic ($19.99) is the posting plan: unlimited posting and Auset_auto_reload — Turn automatic credit reloads on or off (admin only): when the balance drops below a threshold, the card on file is charged for a top-up paclist_brands — List every profile on this account (id + name; a profile is a brand, a creator or a personal workspace) and which one this connection acts ouse_brand — Pin which profile this connection acts on. Pass the profile id or exact name from list_brands. Works for your own profiles AND one another acreate_brand — Add a NEW profile (a brand, client, creator or personal workspace) and switch to it. Each has its OWN brand details, memory, swipefile, Librdelete_brand — PERMANENTLY delete a profile and EVERYTHING in it — brand details, memory, swipefile, Library creations, generated assets, avatars, skills, upload_file — Persist an ARBITRARY user file (image, video, audio, PDF or document, up to 150MB) into Hermoso and get back a durable public URL that EVERYpinterest_ads_async_report — The DEEP Pinterest ad report — Pinterest’s ASYNCHRONOUS lane, which reaches 914 DAYS back (2.5 years) where pinterest_ads_report stops at 90search_pinterest_ads_targeting — THE IDS AN AD GROUP’S targetingSpec NEEDS. create_pinterest_ads_campaign and create_pinterest_ads_ad_group accept interests, locales, locatiupload_meta_asset — Upload creative(s) — a finished Hermoso ad OR arbitrary user files (e.g. A folder of media from the user’s desktop) — into a connected ad accreate_meta_campaign — Use this when the user asks to create a new Facebook or Instagram ad campaign on their own ad account. Create a campaign on a connected Metaset_meta_campaign_status — Turn a campaign ON (ACTIVE) or OFF (PAUSED). ACTIVATING STARTS REAL AD SPEND — you MUST first show the user the campaign name + its daily buupload_meta_playable — Upload a PLAYABLE ad (an interactive HTML game the advertiser already has) to a Meta ad account. Pass url: ONE HTML file up to 2 MB, or a zilist_meta_playables — List the playables uploaded to a Meta ad account (id and name), for create_meta_ad's playableAssetId. Free.create_meta_ad — Build a complete, ready-to-run Meta ad: campaign -> ad set (FULL targeting + budget + schedule + bidding) -> creative -> ad(s), ALL created create_meta_adset — Create an AD SET on an EXISTING Meta campaign — the level that holds the audience, budget, schedule and bidding. Use it to hang SEVERAL ad sfind_meta_audiences — Look up the Meta targeting ids you need before building an ad set — interests, behaviours, cities/regions/zips/DMAs, languages, employers, jlist_meta_ads — Read the EXISTING campaigns, ad sets, or ads on a connected Meta ad account — id, name, status, budget, objective, and at level ad WHY Meta analyze_campaigns — Use this when the user asks how their paid ad campaigns are doing or what to scale or pause. ONE verdict across EVERY ad platform this worksmeta_insights — Use this when the user asks how their Facebook or Instagram ads performed. Pull performance INSIGHTS for a connected Meta ad account, or a spreview_meta_ad — Render a REAL preview of a Meta ad, per placement — Meta returns a link that shows exactly what a person scrolling Facebook or Instagram woumeta_catalog_suggestions — Meta can show products from a catalog under a new ad by default (the product showcase). This previews what it would pick for an ad account bestimate_meta_reach — Ask Meta how many people a targeting spec can actually reach — BEFORE any budget is committed. Two ways: pass adSetId to size an ad set you list_meta_audiences — List the custom audiences and lookalikes on a connected Meta ad account — id, name, type, approximate size, and whether Meta says it is readcreate_meta_audience — Build a retargeting audience on a connected Meta ad account. Four kinds: kind:"website" (people whose visited URL contains urlContains, seenlist_meta_pixels — List the META PIXELS on one of the brand’s ad accounts — id, name, when it was created, and WHEN IT LAST FIRED. This is where the pixelId evget_meta_ad_account — Read a Meta AD ACCOUNT’s BILLING and DELIVERY state: account status in words (ACTIVE, DISABLED, UNSETTLED unpaid balance, IN_GRACE_PERIOD facreate_meta_pixel — Create a META PIXEL on one of the brand’s ad accounts, so their ads can optimise for real website conversions instead of link clicks and so list_meta_lead_forms — List the INSTANT LEAD FORMS on a connected Facebook Page — id, name, status, how many leads each has collected and what each one asks. This create_meta_lead_form — Create an INSTANT LEAD FORM on a connected Facebook Page — the in-app form a Meta lead ad opens instead of sending someone to a website, so Not tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.