Skip to main content
Glama

Microsoft Ads MCP by InsightfulPipe

Microsoft Ads Execute Action

execute_action
Destructive

Execute Microsoft Ads action (Step 3 (FINAL) of workflow).

REQUIRED: Complete these steps first using query_contexts:

  1. request='accounts' - Get workspace_id, brand_id, ad_account_id AND available_actions

  2. request='actions_details' with actions=['xxxxxx', 'xxxxxx', 'xxxxxx'] - Get detailed body structure for specific action(s) using actions from available_actions

IMPORTANT: Always call step 2 to see the exact body structure before executing.

Rely on info from steps 1-2 to construct the action body. Follow the schema exactly.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "body": "<body>"
    },
    "name": "execute_action"
  }
}

Input Schema

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, openWorldHint=true, so the safety profile is known. The description adds workflow gating context (must gather IDs and body structure first, follow schema exactly) but says nothing about what the action mutates, reversibility, or error behavior beyond the declared destructiveness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the operation and its workflow position, then a numbered prerequisite list and a final directive. Mostly lean, though the nested parentheses in 'Step 3 (FINAL) of workflow' and the repeated emphasis on step 2 cost a little tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists so return values need no explanation, and annotations carry the destructive/open-world profile. For a one-parameter open body tool the description supplies exactly the missing piece: how to obtain a valid body via the two query_contexts calls.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single 'body' parameter is an open object with additionalProperties=true, so the schema provides no field guidance. The description partially compensates by directing the agent to actions_details in query_contexts for the exact body structure, but it never describes the body's contents itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Execute) and resource (Microsoft Ads action) and positions itself as the final step of a named workflow, which distinguishes it from the read-oriented siblings query_contexts/query_data. The word 'action' itself remains generic, so the agent still relies on the prerequisite steps to know what is actually executed.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly prescribes the call sequence: query_contexts with request='accounts' for IDs and available_actions, then request='actions_details' with the chosen actions before invoking this tool. The 'IMPORTANT: always call step 2' line removes ambiguity about when this tool is safe to invoke.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.