Ads Optimiser MCP server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ADSOPTIMISER_URL | No | The Ads Optimiser API to talk to | https://api.adsoptimiser.com.au |
| ADSOPTIMISER_APP_URL | No | The web app used in links (Billing, job pages) | https://app.adsoptimiser.com.au |
| ADSOPTIMISER_OUTPUT_DIR | No | Default folder for adsoptimiser_download_job | ./adsoptimiser-output |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| adsoptimiser_connectA | Start signing in to Ads Optimiser (OAuth device flow). Returns a URL and a code for the user to approve in their browser, where they also choose the workspace; afterwards call adsoptimiser_finish_connect. |
| adsoptimiser_finish_connectA | Complete a pending Ads Optimiser sign-in after the user has approved it in the browser. |
| adsoptimiser_statusA | Show whether this machine is connected to Ads Optimiser, as which user, to which workspace and with what role. |
| adsoptimiser_disconnectA | Revoke this machine's Ads Optimiser token and delete it from this machine. |
| adsoptimiser_list_modelsA | List the image and video models available for generation with their modes, aspect ratios, resolutions, quality options and indicative cost. Call this before choosing a non-default model. |
| adsoptimiser_enhance_promptA | Expand a rough idea into a detailed prompt tuned for TikTok ad creatives. Returns text only; nothing is generated and no allowance is used. |
| adsoptimiser_generate_imageA | Generate an ad image with Grok (or Luma where enabled). Uses one image generation from the workspace's monthly plan allowance. Usually returns the finished image URL; if it takes longer, returns the job id to check with adsoptimiser_get_job. To edit or restyle existing images pass reference_image_paths (local files, uploaded for you), reference_image_urls or reference_job_ids. |
| adsoptimiser_generate_videoA | Start an ad video generation (text-to-video, or image-to-video from source_image_path, source_image_url or source_job_id). Uses one video generation from the plan allowance and counts toward the daily video quota. Returns immediately with a job id; videos take one to several minutes, so check progress with adsoptimiser_get_job. |
| adsoptimiser_get_jobB | Get the status of an image or video job, with the result URL once it is ready (statuses: queued, generating, ready, failed, expired). |
| adsoptimiser_list_jobsA | List recent image and video jobs in the workspace, newest first. Filter by status or asset type. |
| adsoptimiser_list_pipelinesA | List pipeline templates and the workspace's saved pipelines that adsoptimiser_run_pipeline can start. |
| adsoptimiser_run_pipelineA | Start a pipeline run from a template_id or a saved graph_id. Each generation step uses plan allowance like a single job (video steps also count toward the daily video quota). Returns the run id and an estimated provider cost; check progress with adsoptimiser_get_pipeline_run. |
| adsoptimiser_get_pipeline_runB | Get a pipeline run's status and each step's status, job id and result URL. |
| adsoptimiser_upload_fileA | Upload a local image (png, jpg, webp, gif; max 10 MB) or video (mp4, mov; max 120 MB) to Ads Optimiser and return its hosted URL, for use as reference_image_urls or source_image_url. Uses no plan allowance. |
| adsoptimiser_download_jobA | Save a finished job's image or video to a local folder (default ./adsoptimiser-output). The file is named after the job id and prompt, and an existing file is never replaced unless overwrite is true. |
| adsoptimiser_batch_generateA | Queue one job per local image in a folder (image_to_video or image_edit) or per line of a prompts file (prompts). At most 10 per call; each job uses plan allowance like a single generation. Stops at a plan limit, quota or rate limit and reports what was queued and the offset to resume from. Returns job ids at once; check them with adsoptimiser_get_job or adsoptimiser_list_jobs. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool targets a distinct action or resource, such as generate_image vs generate_video, get_job vs list_jobs, and run_pipeline vs batch_generate. The connect/finish_connect pair is clearly sequential and described well, though run_pipeline and batch_generate both start multiple jobs and could be confused in edge cases.
All tools use the adsoptimiser_ prefix and snake_case, with a mostly verb_noun pattern like generate_image, list_jobs, and run_pipeline. Minor deviations exist in batch_generate (modifier_verb) and finish_connect (verb_verb), but the convention remains predictable overall.
16 tools is slightly on the heavy side but reasonable for a creative generation server with auth, image/video generation, job management, pipelines, batch processing, and file handling. Each tool appears to earn its place, though some grouping could reduce surface area.
The server covers auth lifecycle, model listing, prompt enhancement, image/video generation, job status/list/download, pipeline runs, uploads, and batch generation. Minor gaps exist around canceling or deleting jobs and pipeline runs, but agents can likely work around these via expiry or status checks.