Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Airops MCP connector

API Key AIMarketingAnalytics

Connect to AirOps MCP. Manage brand kits, run AI-powered analytics, track AEO citations, and automate content workflows from your AI agents.

Airops MCP connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Register your Airops MCP credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment.

    Dashboard setup steps

    Register your Scalekit environment with the AirOps connector so Scalekit can proxy API requests and inject your API key automatically. There is no redirect URI or OAuth flow — authentication uses your AirOps API key.

    1. Get your AirOps API key

      • Sign in to AirOps and click Settings in the bottom-left sidebar.
      • Select Workspace from the settings menu.
      • Under API Key, click the copy icon to copy your key. To rotate the key, click Regenerate.

      AirOps workspace settings page showing the Workspace ID and API Key section with a masked key and Regenerate button

    2. Create a connection in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find AirOps and click Create.
      • Note the Connection name — use this as connection_name in your code (e.g., airopsmcp).
      • Click Save.
    3. Add a connected account

      Connected accounts link a user identifier in your system to an AirOps API key.

      Via dashboard (for testing)

      • Open the connection and click the Connected Accounts tab → Add account.
      • Fill in:
        • Your User’s ID — a unique identifier for this user in your system (e.g., user_123)
        • API Key — the AirOps API key you copied in step 1
      • Click Save.

      Via API (for production)

      // Never hard-code API keys — read from secure storage or user input
      const airopsApiKey = getUserAiropsKey(); // retrieve from your secure store
      await scalekit.actions.upsertConnectedAccount({
      connectionName: 'airopsmcp',
      identifier: 'user_123',
      credentials: { api_key: airopsApiKey },
      });
  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'airopsmcp'
    const identifier = 'user_123'
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'airopsmcp_list_aeo_page_content_updates',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Grid write — Create or update rows in a grid table
  • Update brand kit, track aeo page content — Update a Brand Kit’s base fields
  • Edits suggest brand kit — Suggest edits to a Brand Kit’s fields without applying them
  • Search knowledge base — Search a Knowledge Base for relevant content using semantic similarity
  • Run grid rows — Trigger execution of one or more grid rows
  • Read grid — Read rows from a grid table

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

airopsmcp_add_grid_column # Add a new column to a grid table. Use this before write_grid when you need to write to a column that does not exist yet. 5 params

Add a new column to a grid table. Use this before write_grid when you need to write to a column that does not exist yet.

Name Type Required Description
data_type string required The data type for the column.
grid_id integer required The ID of the grid.
grid_table_id integer required The ID of the grid table (sheet).
title string required The column title.
position integer optional Optional column position. If omitted, appended at the end.
airopsmcp_analytics_chart # Query analytics data and display it as an interactive chart. Returns data with a UI reference for visualization. 14 params

Query analytics data and display it as an interactive chart. Returns data with a UI reference for visualization.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID to query analytics for
metrics array required Metrics to calculate and display (e.g., citation_rate, mention_rate, share_of_voice).
chart_type string optional Type of chart to render. Line for time series, bar for comparisons, pie for proportions, area for comparison and visualizing totals with filled area under the curve. Default: line.
countries array optional Filter by country codes (ISO 3166-1 alpha-2)
dimensions array optional Dimensions to group by (max 3).
end_date string optional End date (YYYY-MM-DD). Defaults to yesterday. Must be before today because today's data may still be processing and is incomplete — yesterday is used to ensure robust, complete data. Leave blank unless a specific date is requested.
grain string optional Time granularity for aggregation. Default: total
personas array optional Filter by persona IDs
providers array optional Filter by AI providers
start_date string optional Start date (YYYY-MM-DD). Default: 7 days ago
tags array optional Filter by tag IDs. Returns data only for prompts tagged with any of the given tags.
themes array optional Filter sentiment data by theme IDs. Only applies to sentiment_score metric.
title string optional Optional chart title. If not provided, a title will be auto-generated.
topics array optional Filter by topic IDs
airopsmcp_create_aeo_prompt # Create a new AEO prompt for a Brand Kit. Prompts are questions that can be asked about a brand to AI search engines, used to track AI visibility and citations. 6 params

Create a new AEO prompt for a Brand Kit. Prompts are questions that can be asked about a brand to AI search engines, used to track AI visibility and citations.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID to add the prompt to
text string required The prompt text (max 512 characters). Must be unique within the Brand Kit.
topic_id integer required Topic ID to associate with the prompt. Must belong to the same Brand Kit. Use `list_topics` to discover available topics and either suggest one or ask the user to choose.
countries array optional ISO alpha-2 country codes to assign (e.g., ["US", "GB"]). Must be configured on the Brand Kit.
persona_ids array optional Persona IDs to assign. Must belong to the same Brand Kit. Use `list_personas` to discover available personas.
platforms array optional Platforms to assign. Valid values: chat_gpt, gemini, perplexity, google_ai_mode, google_ai_overview.
airopsmcp_create_brand_kit_direct_upload # Initiate a direct file upload for use with Brand Kit visual tools. 5 params

Initiate a direct file upload for use with Brand Kit visual tools.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID this file is intended for
byte_size integer required Size of the file in bytes
checksum string required Base64-encoded MD5 digest of the file contents
content_type string required MIME type of the file
filename string required The filename including extension, e.g. "logo.png" or "brand-font.woff2"
airopsmcp_create_grid # Create a new empty, general-purpose grid with the given name. The grid is created with a single empty sheet (zero rows, zero columns). 2 params

Create a new empty, general-purpose grid with the given name. The grid is created with a single empty sheet (zero rows, zero columns).

Name Type Required Description
name string required The name for the new grid.
workspace_id integer optional Optional workspace ID. Defaults to the user's only workspace when unambiguous.
airopsmcp_create_grid_sheet # Create a new sheet (grid table) within an existing grid. The sheet is created with zero rows and zero columns. 2 params

Create a new sheet (grid table) within an existing grid. The sheet is created with zero rows and zero columns.

Name Type Required Description
grid_id integer required The ID of the grid to add the sheet to.
name string required The name for the new sheet.
airopsmcp_create_report # Create a new analytics report for a Brand Kit. Reports contain one or more modules that visualize metrics like citation_rate, mention_rate, share_of_voice, etc. 3 params

Create a new analytics report for a Brand Kit. Reports contain one or more modules that visualize metrics like citation_rate, mention_rate, share_of_voice, etc.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
modules array required Array of module configurations
name string required Report name (must be unique per brand kit)
airopsmcp_get_aeo_citation # Get prompts citing a specific URL. The 'id' parameter is the URL to look up. 9 params

Get prompts citing a specific URL. The 'id' parameter is the URL to look up.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
id string required Resource ID
countries array optional Filter metrics by country codes
end_date string optional End date for metrics (ISO 8601). Defaults to today.
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
personas array optional Filter metrics by persona IDs
providers array optional Filter metrics by AI providers
start_date string optional Start date for metrics (ISO 8601). Defaults to 1 month ago.
airopsmcp_get_aeo_page_content_update # Get a specific page content update by ID. Track content updates. 6 params

Get a specific page content update by ID. Track content updates.

Name Type Required Description
id integer required Resource ID
brand_kit_id integer optional Optional Brand Kit ID to filter content updates by
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
workspace_id integer optional ID of the workspace to retrieve results from. If not provided, returns results from all workspaces the user belongs to.
airopsmcp_get_answer # Get a specific AI answer by ID with full text content. 3 params

Get a specific AI answer by ID with full text content.

Name Type Required Description
id integer required Resource ID
fields array optional Specify which fields to return in the response, as a list of field names.
includes array optional Related resources to include in the response, as a list of relationship names.
airopsmcp_get_brand_kit # Fetch a Brand Kit's brand identity (writing_tone, writing_persona) and associated entities (product lines, audiences, content types, regions, writing rules, cus... 6 params

Fetch a Brand Kit's brand identity (writing_tone, writing_persona) and associated entities (product lines, audiences, content types, regions, writing rules, cus...

Name Type Required Description
id integer required Resource ID
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
version string optional Brand Kit version to read from (`active` or `draft`). Defaults to `active`.
workspace_id integer optional ID of the workspace to retrieve brand kits from. If not provided, returns brand kits from all workspaces the user belongs to.
airopsmcp_get_grid_row_execution_status # Check the status of grid row executions. Returns the overall status and per-column detail for each execution. 2 params

Check the status of grid row executions. Returns the overall status and per-column detail for each execution.

Name Type Required Description
grid_id integer required The ID of the grid containing the executions.
row_execution_ids array required IDs of the row executions to check (max 50).
airopsmcp_get_insights_settings # Get AEO insights configuration for a Brand Kit, this includes the relevant information to use any AEO and analytics tools. 3 params

Get AEO insights configuration for a Brand Kit, this includes the relevant information to use any AEO and analytics tools.

Name Type Required Description
id integer required Resource ID
fields array optional Specify which fields to return in the response, as a list of field names.
workspace_id integer optional ID of the workspace to retrieve results from. If not provided, returns results from all workspaces the user belongs to.
airopsmcp_get_page_details # Get AEO metrics for a specific web page. Page details include citation share, citation rate, unique cited questions count, and Google Search Console metrics (cl... 4 params

Get AEO metrics for a specific web page. Page details include citation share, citation rate, unique cited questions count, and Google Search Console metrics (cl...

Name Type Required Description
id integer required Resource ID
end_date string optional End date for metrics period (YYYY-MM-DD format). Defaults to current date.
fields array optional Specify which fields to return in the response, as a list of field names.
start_date string optional Start date for metrics period (YYYY-MM-DD format). Defaults to 1 month ago.
airopsmcp_get_page_prompts # Get prompts citing a specific web page. Returns AI prompts that cite the page along with citation metrics (citation_rate, mention_rate) and trends. 13 params

Get prompts citing a specific web page. Returns AI prompts that cite the page along with citation metrics (citation_rate, mention_rate) and trends.

Name Type Required Description
brand_kit_id integer required ID of the brand kit
web_page_id integer required ID of the web page to get citing prompts for
countries array optional Country codes to filter by (ISO 3166-1 alpha-2 format).
end_date string optional End date for analysis period (ISO 8601 format, defaults to today)
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
personas array optional Filter by persona IDs
providers array optional Filter by AI providers (e.g., chat_gpt, gemini, perplexity, google_ai_mode, google_ai_overview, claude, grok, microsoft_copilot)
start_date string optional Start date for analysis period (ISO 8601 format, defaults to 1 month ago)
topic_ids array optional Filter by topic IDs
airopsmcp_get_prompt_answers # Get AI answers for a specific prompt/question. Prompt answers are the AI answers for a specific question/prompt asked to multiple AI providers and the answers a... 10 params

Get AI answers for a specific prompt/question. Prompt answers are the AI answers for a specific question/prompt asked to multiple AI providers and the answers a...

Name Type Required Description
prompt_id integer required ID of the question/prompt to get answers for
countries string optional Country codes to filter by (ISO 3166-1 alpha-2 format).
end_date string optional End date for analysis period (ISO 8601 format, defaults to today)
fields array optional Specify which fields to return in the response, as a list of field names.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
personas string optional Comma-separated persona IDs to filter by.Use "default" for the default persona.
sort string optional Sort field. Prefix with - for descending.
start_date string optional Start date for analysis period (ISO 8601 format, defaults to 1 month ago)
airopsmcp_get_report # Get a specific report by ID with its module configurations. Reports are saved analytics views for a Brand Kit. 5 params

Get a specific report by ID with its module configurations. Reports are saved analytics views for a Brand Kit.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
id integer required Resource ID
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
airopsmcp_get_sentiment_theme_answers # Get individual AI answers with sentiment details for a specific theme. Returns answer text, sentiment (positive/neutral/negative), confidence score, and provide... 10 params

Get individual AI answers with sentiment details for a specific theme. Returns answer text, sentiment (positive/neutral/negative), confidence score, and provide...

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
sentiment_theme_id integer required The sentiment theme ID to drill into. Use query_analytics with dimensions=[theme] to discover available theme IDs first.
countries array optional Filter by country codes (ISO 3166-1 alpha-2)
end_date string optional End date (YYYY-MM-DD). Defaults to yesterday. Must be before today.
page integer optional Page number. Default: 1
per_page integer optional Results per page (1-50). Default: 10
personas array optional Filter by persona IDs
providers array optional Filter by AI providers
start_date string optional Start date (YYYY-MM-DD). Default: 30 days ago
topics array optional Filter by topic IDs
airopsmcp_list_aeo_citations # List citations (URLs) with metrics for a Brand Kit. 11 params

List citations (URLs) with metrics for a Brand Kit.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
countries array optional Filter metrics by country codes
end_date string optional End date for metrics (ISO 8601). Defaults to today.
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
personas array optional Filter metrics by persona IDs
providers array optional Filter metrics by AI providers
sort string optional Sort field. Prefix with - for descending.
start_date string optional Start date for metrics (ISO 8601). Defaults to 1 month ago.
airopsmcp_list_aeo_domains # List domains cited in AI answers for a Brand Kit. Cited domains aggregated by domain with citation metrics. 11 params

List domains cited in AI answers for a Brand Kit. Cited domains aggregated by domain with citation metrics.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
countries array optional Filter metrics by country codes
end_date string optional End date for metrics (ISO 8601). Defaults to today.
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
personas array optional Filter metrics by persona IDs
providers array optional Filter metrics by AI providers
sort string optional Sort field. Prefix with - for descending.
start_date string optional Start date for metrics (ISO 8601). Defaults to 1 month ago.
airopsmcp_list_aeo_page_content_updates # List page content updates for a workspace. Track content updates. 8 params

List page content updates for a workspace. Track content updates.

Name Type Required Description
brand_kit_id integer optional Optional Brand Kit ID to filter content updates by
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
workspace_id integer optional ID of the workspace to retrieve results from. If not provided, returns results from all workspaces the user belongs to.
airopsmcp_list_aeo_prompts # List AEO prompts for a specific Brand Kit. Questions are the AI prompts that can be asked about a brand. 12 params

List AEO prompts for a specific Brand Kit. Questions are the AI prompts that can be asked about a brand.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
countries array optional Filter metrics by country codes
end_date string optional End date for metrics (ISO 8601). Defaults to today.
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
personas array optional Filter metrics by persona IDs
providers array optional Filter metrics by AI providers
sort string optional Sort field. Prefix with - for descending.
start_date string optional Start date for metrics (ISO 8601). Defaults to 1 month ago.
airopsmcp_list_brand_kits # List all Brand Kits the user has access to. Returns `brand_management_enabled` and `aeo_enabled` flags for each brand kit. 7 params

List all Brand Kits the user has access to. Returns `brand_management_enabled` and `aeo_enabled` flags for each brand kit.

Name Type Required Description
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
version string optional Brand Kit version to read from (`active` or `draft`). Defaults to `active`.
workspace_id integer optional ID of the workspace to retrieve results from. If not provided, returns results from all workspaces the user belongs to.
airopsmcp_list_grids # List grids the authenticated user has access to. Use includes=[\"grid_tables.grid_columns\"] to get table and column structure needed for read_grid and write_gr... 6 params

List grids the authenticated user has access to. Use includes=[\"grid_tables.grid_columns\"] to get table and column structure needed for read_grid and write_gr...

Name Type Required Description
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_knowledge_bases # List all Knowledge Bases the authenticated user has access to. Knowledge Bases store documents for semantic search. 5 params

List all Knowledge Bases the authenticated user has access to. Knowledge Bases store documents for semantic search.

Name Type Required Description
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_pages # List web pages with daily metrics (AEO citations, GSC clicks/impressions, GA4 traffic) for a brand kit. 9 params

List web pages with daily metrics (AEO citations, GSC clicks/impressions, GA4 traffic) for a brand kit.

Name Type Required Description
brand_kit_id integer required ID of the brand kit to retrieve web page metrics for
end_date string optional End date for analysis period (ISO 8601 format, defaults to today)
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
smart_filter string optional Apply a predefined filter preset.
sort string optional Sort field. Prefix with - for descending.
start_date string optional Start date for analysis period (ISO 8601 format, defaults to 1 month ago)
airopsmcp_list_personas # List personas for a specific Brand Kit. Personas are the characters that can be used to ask questions about a brand. 6 params

List personas for a specific Brand Kit. Personas are the characters that can be used to ask questions about a brand.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_reports # List saved analytics reports for a specific Brand Kit. 7 params

List saved analytics reports for a specific Brand Kit.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
includes array optional Related resources to include in the response, as a list of relationship names.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_tags # List tags for a specific Brand Kit. Tags are user-defined labels applied to prompts within a Brand Kit. 6 params

List tags for a specific Brand Kit. Tags are user-defined labels applied to prompts within a Brand Kit.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_topics # List topics for a specific Brand Kit. Topics are the categories of questions that can be asked about a Brand Kit. 6 params

List topics for a specific Brand Kit. Topics are the categories of questions that can be asked about a Brand Kit.

Name Type Required Description
brand_kit_id integer required The ID of the Brand Kit
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_list_workspaces # List all workspaces the authenticated user has access to. Workspaces are the top-level container for all resources in the AirOps platform. 5 params

List all workspaces the authenticated user has access to. Workspaces are the top-level container for all resources in the AirOps platform.

Name Type Required Description
fields array optional Specify which fields to return in the response, as a list of field names.
filters array optional Filter results by column values. Each filter requires column_id, operator, and value.
page integer optional Page number
per_page integer optional Items per page
sort string optional Sort field. Prefix with - for descending.
airopsmcp_manage_brand_kit_audience # Create or update an audience for a Brand Kit draft. Omit `id` to create a new audience; provide `id` to update an existing one. 4 params

Create or update an audience for a Brand Kit draft. Omit `id` to create a new audience; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
description string optional Audience description
id integer optional Audience ID (omit to create new)
name string optional Audience name (required on create)
airopsmcp_manage_brand_kit_competitor # Create or update a competitor for a Brand Kit. Omit `id` to create a new competitor; provide `id` to update an existing one. 5 params

Create or update a competitor for a Brand Kit. Omit `id` to create a new competitor; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
domain string optional Competitor domain (e.g. "example.com")
id integer optional Competitor ID (omit to create new)
name string optional Competitor name (required on create)
product_line_ids array optional Product line IDs to associate (must belong to this brand kit, at least one required)
airopsmcp_manage_brand_kit_content_sample # Create or update a content sample for a Brand Kit. Omit `id` to create a new content sample; provide `id` to update an existing one. 7 params

Create or update a content sample for a Brand Kit. Omit `id` to create a new content sample; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
audience_ids array optional Audience IDs to associate (must belong to this brand kit). Pass [] to clear.
content string optional Plain text content for the sample. On create, provide either content or url (not both).
content_type_id integer optional Content type ID (required on create, must belong to this brand kit)
id integer optional Content sample ID (omit to create new)
region_ids array optional Region IDs to associate (must belong to this brand kit). Pass [] to clear.
url string optional URL of the content sample. On create, provide either url or content (not both).
airopsmcp_manage_brand_kit_content_type # Create or update a content type for a Brand Kit. Omit `id` to create a new content type; provide `id` to update an existing one. 9 params

Create or update a content type for a Brand Kit. Omit `id` to create a new content type; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
cta_text string optional Call-to-action text
cta_url string optional Call-to-action URL
header_case string optional Header case style
header_case_custom_value string optional Custom header case rules (when header_case is custom)
id integer optional Content type ID (omit to create new)
name string optional Content type name (required on create)
sample_url string optional URL of a content sample (only used on create)
template_outline string optional Template outline
airopsmcp_manage_brand_kit_custom_variable # Before creating a custom variable, you MUST analyze the user's intent and suggest the appropriate Brand Kit dimension instead. 4 params

Before creating a custom variable, you MUST analyze the user's intent and suggest the appropriate Brand Kit dimension instead.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
id integer optional Custom variable ID (omit to create new)
name string optional Custom variable name (required on create)
value string optional Custom variable value (required on create, editable on update)
airopsmcp_manage_brand_kit_font # Create or update a font for a Brand Kit. Omit `id` to create a new font; provide `id` to update an existing one. 7 params

Create or update a font for a Brand Kit. Omit `id` to create a new font; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
file_url string optional Publicly accessible URL to a font file (TTF, OTF, WOFF, WOFF2, or EOT). Use signed_id instead if the file was uploaded via create_brand_kit_direct_upload. Pass null or empty to leave the existing file unchanged.
google_font_link string optional Google Fonts URL for this font (e.g. https://fonts.google.com/specimen/Inter). Pass null or empty string to clear.
id integer optional Font ID (omit to create new)
name string optional Font name, e.g. "Inter" or "Brand Heading Font" (required on create)
signed_id string optional Signed blob ID returned by create_brand_kit_direct_upload after a direct upload. Preferred over file_url when the user has a local file. Pass null to leave the existing file unchanged.
usage_instructions string optional Instructions for agents on when and how to use this font. Pass null or empty string to clear.
airopsmcp_manage_brand_kit_logo_size # Create or update a logo size for a Brand Kit. Omit `id` to create a new logo size; provide `id` to update an existing one. 6 params

Create or update a logo size for a Brand Kit. Omit `id` to create a new logo size; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
height integer optional Height in pixels. Pass null to clear.
id integer optional Logo size ID (omit to create new)
name string optional Logo size name, e.g. "Web Banner" or "Social Media Square" (required on create)
usage_instructions string optional Instructions for agents on when and how to use this logo size. Pass null to clear.
width integer optional Width in pixels. Pass null to clear.
airopsmcp_manage_brand_kit_logo_variant # Create or update a logo variant for a Brand Kit. Omit `id` to create a new logo variant; provide `id` to update an existing one. 7 params

Create or update a logo variant for a Brand Kit. Omit `id` to create a new logo variant; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
background_color string optional Background color as a hex value (e.g. #ffffff). Pass null to clear.
file_url string optional Publicly accessible URL to a PNG or SVG image. Use signed_id instead if the file was uploaded via create_brand_kit_direct_upload. Pass null to leave the existing file unchanged.
id integer optional Logo variant ID (omit to create new)
name string optional Logo variant name, e.g. "Primary Logo" or "Dark Background Logo" (required on create)
signed_id string optional Signed blob ID returned by create_brand_kit_direct_upload after a direct upload. Preferred over file_url when the user has a local file. Pass null to leave the existing file unchanged.
usage_instructions string optional Instructions for agents on when and how to use this logo, e.g. "Use on dark backgrounds only". Pass null to clear.
airopsmcp_manage_brand_kit_palette # Create or update a color palette for a Brand Kit. Omit `id` to create a new palette; provide `id` to update an existing one. 3 params

Create or update a color palette for a Brand Kit. Omit `id` to create a new palette; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
id integer optional Palette ID (omit to create new)
name string optional The palette name, e.g. "Primary" (required on create)
airopsmcp_manage_brand_kit_palette_color # Create or update a color within a Brand Kit palette. Omit `id` to create a new color; provide `id` to update an existing one. 6 params

Create or update a color within a Brand Kit palette. Omit `id` to create a new color; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
id integer optional Color ID (omit to create new)
name string optional Color name, e.g. "Brand Blue" (required on create)
palette_id integer optional The palette ID (required on create)
usage_instructions string optional Instructions for agents on when and how to use this color
value string optional Hex color value, e.g. "#0055ff" (required on create)
airopsmcp_manage_brand_kit_product_line # Create or update a product line for a Brand Kit. Omit `id` to create a new product line; provide `id` to update an existing one. 7 params

Create or update a product line for a Brand Kit. Omit `id` to create a new product line; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
details string optional Product line details
id integer optional Product line ID (omit to create new)
ideal_customer_profile string optional Ideal customer profile
name string optional Product line name (required on create)
positioning string optional Product positioning
url string optional Product line URL
airopsmcp_manage_brand_kit_region # Create or update a region for a Brand Kit. Omit `id` to create a new region; provide `id` to update an existing one. 5 params

Create or update a region for a Brand Kit. Omit `id` to create a new region; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
description string optional Region description
icon_name string optional Flag icon name (e.g. flag-us, flag-gb). Pass empty string or null to clear.
id integer optional Region ID (omit to create new)
name string optional Region name (required on create)
airopsmcp_manage_brand_kit_type_size # Create or update a type size for a Brand Kit. Omit `id` to create a new type size; provide `id` to update an existing one. 8 params

Create or update a type size for a Brand Kit. Omit `id` to create a new type size; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
font_id integer optional ID of the font this type size belongs to
id integer optional Type size ID (omit to create new)
line_height number optional Line height as a decimal multiplier, e.g. 1.5.
name string optional Type size name, e.g. "H1 Display" or "Body Regular" (required on create)
size integer optional Font size in pixels.
usage_instructions string optional Instructions for agents on when and how to use this type size. Pass null or empty string to clear.
weight integer optional Font weight as an integer (100–900), e.g. 400 or 700.
airopsmcp_manage_brand_kit_usage_rule # Create or update a usage rule for a Brand Kit. Omit `id` to create a new usage rule; provide `id` to update an existing one. 4 params

Create or update a usage rule for a Brand Kit. Omit `id` to create a new usage rule; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
applies_to string optional What this rule applies to. Required on create; ignored on update.
id integer optional Usage rule ID (omit to create new)
name string optional The usage rule text, e.g. "Use only on white backgrounds" (required on create)
airopsmcp_manage_brand_kit_visual_example # Create or update a visual example for a Brand Kit's Data Visualization section. Omit `id` to create a new visual example; provide `id` to update an existing one... 7 params

Create or update a visual example for a Brand Kit's Data Visualization section. Omit `id` to create a new visual example; provide `id` to update an existing one...

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
file_url string optional Publicly accessible URL to a PNG, JPG, SVG, GIF, or WebP image. Use signed_id instead if the file was uploaded via create_brand_kit_direct_upload. Pass null to leave the existing file unchanged.
id integer optional Visual example ID (omit to create new)
sample_url string optional Optional URL to a live sample. Pass null to clear.
signed_id string optional Signed blob ID returned by create_brand_kit_direct_upload after a direct upload. Preferred over file_url when the user has a local file. Pass null to leave the existing file unchanged.
title string optional Title of the visual example, e.g. "Dashboard Overview" (required on create)
usage_instructions string optional Instructions for agents on when and how to use this visual example. Pass null to clear.
airopsmcp_manage_brand_kit_writing_rule # Create or update a writing rule for a Brand Kit. Omit `id` to create a new rule; provide `id` to update an existing one. 6 params

Create or update a writing rule for a Brand Kit. Omit `id` to create a new rule; provide `id` to update an existing one.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
audience_id integer optional Audience ID to scope this rule to (mutually exclusive with content_type_id and region_id). Only on create.
content_type_id integer optional Content type ID to scope this rule to (mutually exclusive with audience_id and region_id). Only on create.
id integer optional Writing rule ID (omit to create new)
region_id integer optional Region ID to scope this rule to (mutually exclusive with content_type_id and audience_id). Only on create.
text string optional Writing rule text (required on create)
airopsmcp_publish_brand_kit # Publish a Brand Kit's current draft so changes become active. This promotes the current draft to active and creates a fresh draft from it. 1 param

Publish a Brand Kit's current draft so changes become active. This promotes the current draft to active and creates a fresh draft from it.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID to publish
airopsmcp_query_analytics # Query analytics data for a Brand Kit with flexible metrics, dimensions, and filters. 15 params

Query analytics data for a Brand Kit with flexible metrics, dimensions, and filters.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID to query analytics for
metrics array required Metrics to calculate and display (e.g., citation_rate, mention_rate, share_of_voice).
brand_mentioned string optional Filter by prompt type. Options: category (generic prompts - recommended for accurate visibility metrics), brand (prompts mentioning the brand). Defaults to category if not specified
countries array optional Filter by country codes (ISO 3166-1 alpha-2)
dimensions array optional Dimensions to group by (max 3).
end_date string optional End date (YYYY-MM-DD). Defaults to yesterday. Must be before today because today's data may still be processing and is incomplete — yesterday is used to ensure robust, complete data. Leave blank unless a specific date is requested.
grain string optional Time granularity for aggregation. Default: total
limit integer optional Maximum rows to return (1-1000). Default: 100
order_by string optional Custom sort order (e.g., "citation_count DESC")
personas array optional Filter by persona IDs
providers array optional Filter by AI providers
start_date string optional Start date (YYYY-MM-DD). Default: 7 days ago
tags array optional Filter by tag IDs. Returns data only for prompts tagged with any of the given tags.
themes array optional Filter sentiment data by theme IDs. Only applies to sentiment_score metric.
topics array optional Filter by topic IDs
airopsmcp_read_grid # Read rows from a grid table. Returns rows as objects with column titles as keys. 7 params

Read rows from a grid table. Returns rows as objects with column titles as keys.

Name Type Required Description
grid_id integer required The ID of the grid to read from.
grid_table_id integer required The ID of the grid table (sheet) to read.
column_ids array optional Optional list of column IDs to include. If omitted, all columns are returned.
filters array optional Optional filters to apply.
limit integer optional Number of rows to return (1-100, default 50).
offset integer optional Row offset for pagination (default: 0). Use with limit to page through results.
truncate integer optional Maximum number of characters per cell value. 0 means no truncation (default).
airopsmcp_run_grid_rows # Trigger execution of one or more grid rows. This runs all workflow (app execution) columns for each specified row in dependency order. 3 params

Trigger execution of one or more grid rows. This runs all workflow (app execution) columns for each specified row in dependency order.

Name Type Required Description
grid_id integer required The ID of the grid containing the rows to execute.
grid_row_ids array required IDs of the grid rows to execute (max 50).
grid_table_id integer required The ID of the grid table (sheet) containing the rows.
airopsmcp_search_knowledge_base # Search a Knowledge Base for relevant content using semantic similarity. Use list_knowledge_bases() first to find available Knowledge Bases and their IDs. 3 params

Search a Knowledge Base for relevant content using semantic similarity. Use list_knowledge_bases() first to find available Knowledge Bases and their IDs.

Name Type Required Description
knowledge_base_id integer required The ID of the Knowledge Base to search.
query string required The search query. Use natural language to describe what you are looking for.
top_k integer optional Number of results to return (1-20, default 5).
airopsmcp_suggest_brand_kit_edits # Suggest edits to a Brand Kit's fields without applying them. Returns a comparison of current vs suggested values for user review. 5 params

Suggest edits to a Brand Kit's fields without applying them. Returns a comparison of current vs suggested values for user review.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID
suggestions object required Field name to suggested value pairs. Valid fields depend on entity_type. Use arrays for multi_select fields (e.g. product_line_ids).
entity_type string optional Which entity to suggest edits for. Defaults to brand_kit.
id integer optional Record ID of the existing record to update. Omit to suggest creating a new record.
title string optional Optional heading to display in the review UI
airopsmcp_track_aeo_page_content_update # Track a page content update (publish/refresh) to correlate future analytics with content changes. 3 params

Track a page content update (publish/refresh) to correlate future analytics with content changes.

Name Type Required Description
type string required The type of content update to track
url string required The page URL to track (max 512 characters). The URL must belong to a brand_url or domain configured in one of the workspace's Brand Kits (use get_insights_settings to see domains). For example, if the Brand Kit domain is "example.com", URLs like "https://example.com/blog/post" will match.
workspace_id integer required The workspace ID to create the content update in
airopsmcp_update_brand_kit # Update a Brand Kit's base fields. Only provided fields are changed. 6 params

Update a Brand Kit's base fields. Only provided fields are changed.

Name Type Required Description
brand_kit_id integer required The Brand Kit ID to update
brand_about string optional Description/overview of the brand
brand_name string optional Name of the brand
brand_url string optional URL of the brand website
writing_persona string optional The persona/voice used in brand writing
writing_tone string optional The tone of voice for brand content
airopsmcp_write_grid # Create or update rows in a grid table. When mode is 'create', rows are added as new rows with column titles as keys. 4 params

Create or update rows in a grid table. When mode is 'create', rows are added as new rows with column titles as keys.

Name Type Required Description
grid_id integer required The ID of the grid to write to.
grid_table_id integer required The ID of the grid table (sheet) to write to.
mode string required 'create' to add new rows, 'update' to modify existing rows (requires __id in each row).
rows array required Array of row objects. Keys are column titles, values are cell values. For update mode, include __id with the row ID.