Status: Closed Beta - Tools and capabilities are subject to change as the beta progresses. This reference reflects the current tool set.
Important: New tools are added to the Agent Connector on a regular basis, and this documentation may not always reflect the very latest additions. Your AI agent automatically discovers all available tools when it connects to the MCP server, so we recommend periodically asking your agent what tools are currently available to ensure you're taking advantage of the latest capabilities.
The Infillion Agent Connector exposes 60+ tools that AI agents can discover and invoke. Each tool includes built-in documentation, parameter schemas, and contextual guidance that helps the AI agent understand when and how to use it.
Tools are organized into the following functional areas. Within each area, tools follow consistent patterns: find_* tools for search/discovery, get_*_info tools for detailed inspection, and action-specific tools for create/update operations.
Each tool includes contextual guidance about related tools - what to call before and after - enabling AI agents to chain operations into coherent workflows without requiring explicit scripting.
Most workflows follow a three-step pattern:
- Discover entities using
find_*tools with filters - Inspect specific entities using
get_*_infotools - Act on entities using
create,update, or specialized tools
For example:
find_campaigns(advertiser_id: 242869, status: true)
> get_campaign_info(campaign_id: 1383420, extended: true)
> campaign_update(campaign_id: 1383420, pacing: {...})Searches organizations with filters for governance, identity, and contract settings.
Retrieves an organization's contract controls, identity policies, exchange seats, and billing configuration.
Searches agencies with filters for organization, data sharing, MFA posture, and status.
Retrieves a single agency's configuration including data sharing settings, MFA inheritance, and organization linkage.
Searches advertisers with filters for agency, organization, domain, identity, and compliance flags.
Retrieves an advertiser's full configuration including cross-strategy settings, MFA inheritance, and vendor attribution pixels.
Searches campaigns with comprehensive filters including advertiser, agency, organization, date ranges, goal type, status, and more. Returns compact summaries by default; use full=true for complete campaign objects or extended=true for strategy context. Supports pagination for large result sets (up to 25 per call).
Key filters: advertiser_id, agency_id, organization_id, status, goal_type, date ranges (created_on, start_date, end_date), name (partial match)
Retrieves a single campaign's full configuration including budgets, pacing, goals, frequency settings, flight schedules, attribution, and identity settings. Use extended=true to include strategy IDs and MFA inheritance.
Creates a new campaign under a specified advertiser. Requires at minimum: advertiser ID, campaign name, and goals configuration. Supports full configuration of budgets, flights, pacing, frequency, attribution, and inventory settings.
Applies partial updates to an existing campaign's settings. Only specified fields are modified; omitted fields remain unchanged.
Searches strategies with filters for campaign, advertiser, pacing, goals, supply type, media type, and targeting flags. Supports full and extended modes for detailed payloads.
Key filters: campaign_id, advertiser_id, agency_id, status, goal_type, media_type, supply_type, pacing_type
Retrieves comprehensive strategy configuration including pacing, goals, inventory, and targeting details. Use extended=true for audience/contextual group details and full targeting breakdowns.
Creates a new strategy under an existing campaign. Requires campaign ID, strategy name, and goal configuration. Supports full configuration of pacing, frequency, budget, inventory (exchanges, deals, site lists), targeting (audience, contextual, geo, daypart, technology), and creative assignments.
Business rules:
goal_typecannot beroiorcpaunlessuse_optimizationis true and a merit pixel is set on the parent campaign.spendgoal type is only supported whenuse_optimizationis false.
Applies partial updates to an existing strategy. Supports modification of all strategy fields including goals, pacing, targeting, inventory, and creative assignments.
Searches concepts by advertiser, status, or name. Concepts group creatives together and are referenced by strategies.
Note: "Creative group" and "concept" are interchangeable terms in MediaMath.
Retrieves concept metadata including advertiser ownership and attached creative/strategy associations.
Creates a new creative group (concept) under a given advertiser. Requires advertiser ID and a name. Status defaults to active if omitted. Use get_concept_info to verify creation, then attach creatives via atomic_creative_update by setting concept_id.
Searches atomic creatives (the base creative object for display, video, and native) with filters for advertiser, concept, dimensions, format, approval status, file type, and more.
Key filters: advertiser_id, concept_id, ad_format, width/height, approval_status, media_type, file_type
Retrieves a single atomic creative's full configuration including dimensions, tags, approval status, click-through URL, and metadata.
Returns a focused preview of an atomic creative with visual properties, dimensions, ad tag, and preview URL. A lighter alternative to full info when only preview details are needed.
Creates a new 3PAS display atomic creative from a third-party ad server (TPAS) tag. Requires advertiser ID, creative name, and dimensions. Supply tag and tag_type (SCRIPT or IMG) for third-party tags.
Applies partial updates to an existing display atomic creative. Only specified fields are modified; omitted fields remain unchanged.
Checks exchange approval status for display and video creatives across advertising exchanges (AppNexus, Google AdX, MoPub, Microsoft Ad Exchange, etc.). Returns per-exchange approval status and net health.
Accepts: Single creative ID or array of up to 100 IDs for bulk checking.
Uploads a display creative (JPG, PNG, GIF, or HTML5 ZIP) to MMAS (MediaMath Ad Server) to create one or more hosted display atomic creatives. Also known as: MMAS creative, MMAS display creative, HTML5 creative. Supports two input modes:
- Public URL: supply
file_source(public HTTPS URL) - the server fetches the file server-side. - Interactive file picker: call with only
advertiser_id(no file URL) to open the MCP App upload form (ui://display-creative-upload). The form reads the selected file as base64 in-browser and sends it over the MCP connection - no public URL required. When no file URL is provided - including all requests for HTML5, MMAS, or MMAS display creatives - the form is opened automatically.
The upload form includes inline typeahead search for the Advertiser field: users can type a name to search matching advertisers, then select from a dropdown. Submission rows include the same lookup for Creative Group (concept) filtered to the selected advertiser.
Multi-file batch upload: the file picker accepts multiple files simultaneously. Each file gets its own submission row and is uploaded in a separate API call; results are shown in a combined table.
ZIP auto-detection: when a ZIP is selected in the form, the content is parsed in-browser to pre-fill submission rows automatically:
- HTML5 bulk mode: nested ZIPs produce one submission per nested ZIP, with
nameset to the nested ZIP filename andbackupauto-detected from the first image (JPG/JPEG/PNG/GIF) in the same directory. - Image bulk mode: no nested ZIPs produce one submission per image file found in the ZIP.
submissions array: required when a file is provided. Each entry specifies the creative name, click_through_url, and concept_id. For HTML5 ZIPs with a backup image, include backup (image filename within the ZIP). The form pre-fills these fields automatically when ZIP auto-detection runs.
Returns: created creative IDs and platform preview/edit links per creative. Returns prefill only when no file is provided (form-open response).
Uploads a hosted video or audio asset to MMAS (MediaMath Ad Server) to create a hosted video creative. Also known as: MMAS video creative, hosted video creative, MMAS audio creative. Supports two input modes:
- Public URL: supply
file_source(public HTTPS URL) together withadvertiser,name,concept, andclickthrough_url— the server fetches the file server-side, validates the extension, and performs a two-step create + presigned PUT upload. - Interactive file picker: call with only
advertiser(no file input) to open the MCP App upload form (ui://video-creative-upload). The form reads the selected file as base64 in-browser and sends it over the MCP connection — no public URL required. When no file URL is provided — including all requests for hosted MMAS video or audio creatives — the form is opened automatically.
Supported file types: mp4, mov, webm, flv, avi, wmv, mpeg, mpg, wav, mp3 (audio assets are treated as video in MMAS).
The upload form includes inline typeahead search for the Advertiser and Creative Group fields. The name field is auto-filled from the selected filename.
Upload flow: the server first calls the Video API to reserve a creative record and receive a presigned S3 URL, then PUTs the asset bytes directly to S3. The creative is created with status Pending and transitions to Processing → Finished as encoding completes.
Returns: creative_id, initial status (Pending), expires_in seconds (presigned URL TTL), and platform_preview_links with preview and edit URLs. Use get_video_creative_info to poll encoding progress before assigning the creative to strategies.
Note: For 3PAS video served via a VAST tag or VAST XML, use
video_creative_createinstead.
Searches native (component) creatives with filters for advertiser, organization, status, and text search. Native creatives contain component assets like title, body, images, and videos.
Retrieves detailed information for a single native creative including all component assets, clickthrough URLs, concept information, and optional preview data.
Creates native (component) creatives in bulk from a ZIP file containing image/logo assets and a creatives_bulk_native.xlsx manifest. Each data row in the Excel produces one creative.
Supply the ZIP via one of two inputs (mutually exclusive):
zip_source_url- public HTTPS URL; the server fetches the ZIP directly.zip_base64- base64-encoded ZIP content sent by the MCP App file picker over the MCP connection.
When called with neither input, the tool opens the MCP App upload form pre-filled with advertiser_id and concept_id. The form includes inline typeahead search for the Advertiser and Creative Group fields: type a name to search, then select from the dropdown to populate the numeric ID automatically.
Requires: advertiser_id (optional when opening the form); concept_id as fallback when a row's Group Name (ID) column is blank.
Returns: bulk_results array with per-row status and created creative IDs, plus a summary with total/succeeded/failed counts. Returns prefill only when no ZIP is provided (form-open response).
Applies changes to an existing native creative. Partial update - only supplied fields are modified. When assets is provided it replaces all existing assets (full replacement, not merge). Supports asset_source_url on individual assets to supply images or videos by public HTTPS URL without encoding binary in the context window.
Requires: atomic_creative_id.
Checks approval status for native/component creatives across advertising sources. Use this instead of atomic_creative_healthcheck for native creatives.
Retrieves detailed information for a single video creative including duration, encoding status, VAST version, security status, companion ads, event pixels, and vendor information.
Retrieves video creative details for multiple creatives at once by providing an array of creative IDs. Accepts 1 to 100 creative IDs per call. Returns encoding status, VAST version, readiness-to-serve status, duration, security status, and vendor information for each creative. Use this for bulk inspection of video creatives, such as confirming encoding completion or readiness before assigning to campaigns.
Use when: You have multiple video creative IDs (from find_atomic_creatives or an external system) and need to check their details or status in a single call rather than calling get_video_creative_info individually for each one.
Creates a new Third Party Ad Served (3PAS) video creative. Requires advertiser ID, creative name, concept ID, and either inline VAST XML or a VAST URL.
Applies partial updates to an existing video creative. Supports both T1AS and 3PAS creatives.
Creates multiple Third Party Ad Served (3PAS) video creatives in a single bulk operation. Accepts an array of creatives - each requiring advertiser ID, creative name, concept ID, and either inline VAST XML or a VAST URL. Returns a data array of created creatives (each including platform_preview_links with preview and edit URLs) and an errors.field_error array for any per-item failures (indexed by request position).
Applies partial updates to multiple existing video creatives in a single bulk operation. Each item must include id; only specified fields are modified, omitted fields remain unchanged. Returns a data array of updated creatives (each including platform_preview_links with preview and edit URLs) and an errors.field_error array for any per-item failures.
Searches supply sources with filters for RTB settings, inventory capabilities (display, video, mobile, CTV), fraud filtering, and PMP enablement.
Retrieves full supply source configuration including RTB settings, inventory flags, attribution groups, and seat identifiers.
Searches site lists by name, organization, status, and restriction type (INCLUDE or EXCLUDE).
Retrieves a site list's restriction mode, organization ownership, and content counts.
Creates a new site list under an organization. Requires organization ID, site list name, and restriction (INCLUDE or EXCLUDE). Accepts domains, app_ids, and primary_seller_ids; at least one of these must be provided, with a combined maximum of 1000 entries. Optionally accepts status.
Applies partial updates to an existing site list. Supports modification of all fields including name, restriction, status. Can append new elements (domains/app_ids/primary_seller_ids), remove elements or fully replace existing ones.
Searches publishers by name or ID within an organization. Requires organization_id. Supports exact and wildcard name matching (e.g., name*, *name*), pagination, and sorting.
Searches geo, technology, and video targeting values by name and/or dimension code. Returns the numeric id for each match — these IDs are what you supply in strategy_update targeting payloads (e.g. targeting.location, targeting.technology).
Supported dimension codes:
- Geo: DMAX (DMA), COUNTRY, REGN (Region), CITY
- Technology: BSER (Browser), BRLG (Browser Language), CSPD (Connection Speed), DVMD (Device Make), DVCE (Device Type), ISPX (ISP), OSXX (Operating System), INVT (Inventory Type)
- Video: VAUD, VCON, VLIN, VPLC, VPSZ, VSKP
Pass a comma-separated list of codes to search across multiple dimensions at once (e.g. dimension_code: "DMAX,COUNTRY,REGN,CITY" to find any geo value named "New York"). At least one of name (minimum 3 characters) or dimension_code is required.
Use when: Looking up a DMA, country, browser, OS, ISP, or device ID before applying targeting to a strategy.
Retrieves all available advertising channels (e.g., display, video). Takes no parameters and returns the complete list of channels with their IDs and names.
Use when: Looking up a channel ID by name before creating or updating a deal.
Searches PMP deals with filters for name, deal identifier, status, deal type (STANDARD or PG), supply source, and channels. Requires owner_organization_id. Supports exact and partial/wildcard name matching (e.g., *keyword*), pagination, and sorting by fields such as name, price, created_on, and updated_on. Optionally converts prices to a specified currency.
Key filters: owner_organization_id (required), name_exact, name_partial, deal_identifier_exact, deal_identifier_partial, deal_type, status, supply_source_id, supply_source_name_exact, channels
Use when: Discovering deals for an organization, filtering active deals by exchange or type, or locating specific deals by name or identifier before targeting them in a strategy.
Retrieves a single deal's full configuration including pricing, publisher details, and identifiers. Supports currency conversion.
Creates a new PMP deal under an organization. Requires organization ID, deal name, deal identifier, supply source, start date, deal type (STANDARD or PG), price, and price type (FIXED or FLOOR). Optionally accepts channels, publisher, end date, and description.
Business rules:
- PG (Programmatic Guaranteed) deals require
price_typeset toFIXEDand validstart_datetimeandend_datetime. - Use
get_channels_infoto look up channel IDs,find_supply_sourcesfor supply source IDs, andfind_publishersfor publisher IDs before creating.
Applies partial updates to an existing deal's settings. Supports modification of name, status, pricing, deal type, dates, channels, publisher, and description. Only specified fields are modified; omitted fields remain unchanged.
Searches strategies assigned to a specific deal. Requires the deal ID. Returns active strategies by default; set with_not_active=true to include inactive strategies as well. Supports pagination.
Use when: Checking which strategies are targeting a particular deal, auditing deal utilization, or troubleshooting delivery by understanding which strategies are consuming a deal's inventory.
Searches deal groups by name, ID, organization, or status. Requires owner_organization_id. Returns deal group metadata including associated deal IDs and strategy counts.
Use when: Discovering deal groups for an organization, filtering by active/inactive status, or looking up specific deal groups by ID.
Retrieves full configuration for a specific deal group by ID, including its metadata and the list of deal IDs it contains. Returns deal group ID, name, organization, description, status, the full list of deal IDs in the group, and a computed deal count. For full details of each individual deal, call get_deal_info for each deal ID.
Creates a new deal group under an organization. Requires organization_id and name. Optionally accepts description, status, and an initial list of deal_ids.
Business rules:
- All deals in
deal_idsmust exist and belong to the same organization. - Omit
deal_idsor pass an empty array to create an empty group for later population. - Duplicate group names within the same organization are not allowed.
Applies partial updates to an existing deal group's configuration and deal membership. Only specified fields are modified; omitted fields remain unchanged.
Supported updates: name, description, status, deal_ids (replaces the full deal list).
Modifying deal membership: deal_ids replaces the complete list. To add or remove specific deals, first call get_deal_group_info to retrieve the current list, then supply the updated full list. Pass an empty array to remove all deals from the group.
Searches pixel bundles with filters for pixel type, advertiser, agency, provider, tag format, status, pricing model, segment operator, and external identifier. Always returns full pixel objects including tag code, pricing configuration, currency, and segment operator.
Key filters: advertiser_id, agency_id, pixel_type (creative, event, data, segment, dynamic), tag_type (dfa, uat, image, iframe, js), status, pricing (CPM, CPTS)
Use when: Finding pixels before analyzing performance, auditing all event pixels under an agency, locating segment pixels for audience troubleshooting, or listing inactive pixels for cleanup.
Retrieves the full configuration of a single pixel bundle by ID. Returns all fields including tag code, tag type, pricing, currency, and segment operator.
Use when: Reviewing a pixel's tag snippet before implementation or confirming pricing and currency settings.
Related: Use find_pixel_bundles first to locate the pixel bundle ID.
Lists all available pixel providers with their IDs, names, and metadata. Use this reference/lookup tool to find valid provider IDs before creating or filtering pixel bundles. Supports optional name filtering (exact or partial with wildcard support) and pagination for large provider lists.
Use when: Looking up a pixel provider ID by name, discovering all available providers, or validating provider IDs before referencing them in pixel bundle configuration.
Key filters: name_exact (case-sensitive exact match), name_partial (case-insensitive, wildcards supported — e.g., *DoubleClick*)
Searches audience segments across vendors, taxonomy paths, and buyable status.
Important: Search queries must be at least three characters to avoid API errors.
Searches pixel bundles with filters for pixel type, advertiser, agency, provider, tag format, status, pricing model, segment operator, and external identifier. Always returns full pixel objects including tag code, pricing configuration, currency, and segment operator.
Key filters: advertiser_id, agency_id, pixel_type (creative, event, data, segment, dynamic), tag_type (dfa, uat, image, iframe, js), status, pricing (CPM, CPTS)
Use when: Finding pixels before analyzing performance, auditing all event pixels under an agency, locating segment pixels for audience troubleshooting, or listing inactive pixels for cleanup.
Discovers available reporting datasets and retrieves the schema for a specific dataset. Call with no parameters to list available dataset codes (the catalog). Call with a dataset code (e.g., performance, all-dimensions-and-metrics) to fetch its full schema including available fields, their data types, supported rollups, and time windows. Use this tool before building report queries to understand which dimensions and metrics are available.
Use when: You need to know what fields, rollups, or time windows a dataset supports before querying it, or when a user asks what reporting data is available.
Queries the performance dataset in the MediaMath Reporting API V2. Returns results as JSONL-style rows. Designed for standard campaign, strategy, and organization performance pulls including impressions, spend, CPM, CPA, CTR, and conversion metrics.
Required: At least one dimension/metric field, at least one filter (typically organization_id or campaign_id), and a time specification (time_window or start_time).
Rollup options: all, by_day, by_week, by_month
Note:
agg_timestampcannot be used infields- it is added automatically when rollup is notall, and can be used inorder.
Dedicated tool for hourly performance metrics using the performance-hourly dataset. Automatically applies by_hour rollup. Optimized for intraday pacing analysis, time-of-day optimization, and delivery troubleshooting.
Time windows: current_day, yesterday, last_24_hours, last_48_hours, last_7_days, last_30_days, month_to_date, or custom start/end times.
Queries the all-dimensions-and-metrics dataset - the widest set of available dimensions in a single report. Ideal for ad-hoc analysis, QBR exports, CPA/supply/creative deep-dives, and multi-pivot exports.
Queries auction metrics before a win or bid has taken place, broken out by strategy, exchange, and deal dimensions. Use for bid rate optimization, win rate analysis, and auction competitiveness assessment.
Queries pixel load and unique user metrics for data and event pixels with referrer breakout and daily granularity.
Searches for MediaMath users by name, email, role, scope, or account type.
Retrieves a user's profile, roles, and basic access. Defaults to the authenticated user when no ID is supplied.
Retrieves detailed permission flags and entity-level access lists (organizations, agencies, advertisers) for a user.
Confirms API connectivity, latency, and connection pool status. Use this to verify that your MCP integration is working correctly.