# AdGPT

> Ready-to-publish ad creatives from an AI assistant: campaigns, image/video/UGC ads, brands, edits.

- name: com.adgpt/adgpt
- version: 0.2.0
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 79/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.adgpt%2Fadgpt
- tools: https://api.protogrid.dev/v1/servers/com.adgpt%2Fadgpt/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "adgpt": {
      "type": "http",
      "url": "https://mcp.adgpt.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-9d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 79/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: adgpt_social (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); adgpt_capabilities (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); adgpt_job (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 3,197 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 15, about 3,197 tokens to load them all
- tool set hash: 9549544724e17d5394edfd45216077df
- badge: [![protogrid quality](https://protogrid.dev/badge/com.adgpt/adgpt.svg)](https://protogrid.dev/servers/com.adgpt/adgpt)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://mcp.adgpt.com/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (15)

- `adgpt_account`: Read your profile, creative-credit balance, and in-flight generations; update your profile. No account yet? Start with register (or login) — the returned session token is adopted automatically and every later call runs as that user. Actions: register, login, me, credits, activeGenerations, updateProfile. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_brands`: Manage brands: list, get, create, update, delete, and auto-fetch details from a URL (costs 5 credits). Actions: list, get, create, update, delete, fetchDetails. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_campaigns`: Generate and manage Full Campaigns (FC) from a product URL, a manual product (name+description+images), or text-only. Each campaign generates (defaults): 6 image ads (3 with text + 3 clean), 4 video ads, 3 UGC presenter videos, 12 Google ad copy variations, 10 keywords, plus social captions. Tier (base/pro/premium) changes credit cost and UGC render quality, not asset counts. Re-render one image (regenerateAsset, credits only), download, or remove a campaign from your library. Actions: eligibility, create, status, assets, downloadAll, regenerateAsset, deleteFromLibrary. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_capabilities`: Search AdGPT operations or describe one in detail (input schema, auth, credit cost, async behavior). Use `operationId` to describe a specific operation, or `query` to search by name / domain / path.
- `adgpt_catalog`: Product feeds and items: import a feed (xml|shopify), poll import status, and read and update products. Actions: list, get, createFeed, updateProduct, importStatus. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_edit_creative`: Post-generation editing of image and video assets: AI prompt edits, overlays (normalized geometry), video v2v + narration re-dub (voice/emotion/gender; language-dependent extras), version keep/discard/revert, caption edits, share links and social ad previews. In-action editing (inAction*) works on completed UGC in-action ads. Actions: editImage, imageOverlay, uploadOverlay, imageVersions, imageKeep, imageDiscard, imageRevert, editVideo, videoOverlay, editNarration, previewNarration, videoVersions, videoKeep, videoDiscard, videoRevert, editCaption, shareLink, socialAdView, inActionState, inActionMusicTracks, inActionPrompt, inActionVoiceover, inActionVoiceoverPreview, inActionTagScript, inActionMusic, inActionRegenerate, inActionVersions, inActionKeep, inActionDiscard, inActionRevert. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_go_live`: Read-only status of your campaign's live ads: the current go-live, its history, and performance. Starting, renewing or stopping a go-live happens in the web app. Actions: current, history, performance. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_image_resize`: Smart Resize: subject-preserving platform-size renditions of your generated image ads — presets catalog, asset context, async batch (25 credits per size), batch status, and a campaign's existing renditions. Actions: smartPresets, smartResize, smartBatchStatus, smartAssetContext, smartCampaignRenditions. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_in_action`: Talking-head / UGC-in-action wizard for a SAC campaign: generate scripts, strategies, and per-character plans; preview voices; tag scripts; persist wizard state. Read adgpt://pipeline/characters and adgpt://pipeline/voices first. In-action and commercial videos need a Pro plan or higher. Actions: generatePipelineScripts, generateStrategies, generatePlan, plans, getWizardState, saveWizardState, tagScript, voicePreview, voicePreviewStatus. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_job`: Poll a long-running generation to completion. Pass the status `operationId` (from a create call's job handle) and its `params` (e.g. {id}). Waits up to `waitSeconds` (max 25); if not finished, returns callAgain=true — invoke again to keep waiting. Never charges credits.
- `adgpt_recreation`: Clone any existing ad: ingest it (URL or upload), analyze its hooks, script and scene structure, then generate your own version from one instruction (adGenerateFromPrompt). Poll adStatus; adCancel refunds an in-flight clone. Actions: adIngestUrl, adUpload, adAnalyze, adStatus, adGenerateFromPrompt, adCancel, adAssets. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_single_asset`: Generate a BATCH of premium creatives of one asset type (SAC), or bulk-order N assets in one request (bulk* actions: pricing, order, status, assets, cancel — credits charged upfront, failed items auto-refund) — image: 6 image ads (3 with text + 3 clean) · video: 4 video ads · ugc_video: 3 UGC presenter videos · google_ads: 12 ad variations · ugc_action: 3 UGC in-action videos. create → (customize) → confirm. Interactive UGC/in-action uses confirm sub-payloads. pricing / eligibility quote the credit cost first. Actions: pricing, eligibility, create, confirm, cancel, status, assets, regenerateAsset, downloadAll, bulkPricing, bulkOrder, bulkStatus, bulkAssets, bulkCancel. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_social`: Connect your own Facebook ad account, check connections, and publish to TikTok from an account you already connected in the web app: campaign/ad-group reads, targeting taxonomy, and create-ads. Actions: connectAccount, checkConnection, facebookExchangeToken, tiktokRegions, tiktokLanguages, tiktokCampaigns, tiktokAdGroups, tiktokCreateAds. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_ugc`: Browse the UGC presenter avatar and voice catalogs. (UGC videos themselves are generated through adgpt_campaigns, adgpt_single_asset and adgpt_in_action.) Actions: avatarsPaginated, voices. Call adgpt_capabilities with the operationId to see an action's parameters.
- `adgpt_upload_product_image`: Upload a product photo to AdGPT from the local machine — pass an absolute file_path (preferred) OR data_base64 (+ filename). Validates it is a usable product image (min 100×100px, aspect between 1:4 and 4:1), stores it, and returns {url, width, height}; pass that url in user_instructions.uploaded_images when creating a campaign (up to 5). Formats: jpeg/png/webp/gif/bmp, max 10MB. Works before login too.
