Skip to main content
Glama

List Microsoft Advertising ads

msads_get_ads
Read-only

List an ad group's ads: id, type, status, final URLs and the ad text (headlines and descriptions for responsive search ads; title parts and text for expanded and text ads).

Input Schema

NameRequiredDescriptionDefault
accountIdNoMicrosoft Advertising account id or account number (e.g. 'F123ABCD'), as listed by msads_list_accounts. Only needed when the sign-in can reach more than one account.
adGroupIdYesAd group id, from msads_get_ad_groups.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds real value beyond that by spelling out what the response contains (id, type, status, final URLs, and ad-text fields per ad type), which matters because there is no output schema. Pagination/result-limit behavior is still undisclosed.

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?

A single front-loaded sentence with the resource and scope first, followed by the field list. The parenthetical is dense but every item in it earns its place given the absence of an output schema.

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

Completeness4/5

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

With no output schema, the description carries the return-value burden and does so credibly by naming the returned fields and differentiating responsive search ads from expanded and text ads. Missing are result-count limits, pagination, and whether all ads in the group are returned, which keeps it from a 5.

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 100% and both parameters are documented there, including the optional accountId's conditional requirement and the source of adGroupId. The description adds only the implied ad-group scoping and no syntax or format detail, so the baseline of 3 applies.

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 and resource ('List an ad group's ads') and enumerates exactly which fields come back, which lets an agent distinguish it from msads_get_ad_groups, msads_get_keywords and the create_* tools. It stops short of explicitly naming a sibling it is not, so it lands at 4 rather than 5.

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

Usage Guidelines3/5

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

Usage is only implied: the phrase 'an ad group's ads' signals that this is a scoped read requiring an ad group context, and the schema notes adGroupId comes from msads_get_ad_groups. There is no explicit when-to-use vs. when-not guidance and no mention of when to prefer performance-oriented siblings such as msads_get_ad_group_performance.

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.

Resources