·  54 tools on record  ·  297 archived pricing pages  ·  data synced 2026-10-31Methodology  ·  How we earn money
Independent. No vendor can pay
for placement or a verdict.
Seller Tools Index.Receipts for seller software

Inspection report

amazon_ads_mcp by Kuudo

Vendor MCP server from Kuudo. Tool list: tools/list6.

The answer

3

What can it change in your account?

3 of 36 tools can change data, in these areas: Ads, Reports. This is a partial list, so there may be more.

name based Read and write here are inferred from tool names and descriptions, not from a test.

AreaAccessWrite toolsRead tools
Orders? Orders not documented00
AdsW Ads can change data28
Listings? Listings not documented00
Pricing? Pricing not documented00
Inventory? Inventory not documented00
ReportsW Reports can change data15
Finance? Finance not documented00

Record

The facts on file.

Type
vendor
Vendor or owner
Kuudo
License
MIT3
Authentication
LWA refresh token, API key, OAuth (mentioned)4
Transport
stdio, http
Marketplaces
AU, BR, DE, EG, ES, FR, IN, IT, JP, MX, NL, UK, US5
Pricing
Not published
Last commit
Oct 14, 2026
Last release
Not published
GitHub stars
74
Tool list from
tools/list partial list6
Links
Repository1, documentation2

Tools

All 36 tools we found.

Grouped by what they do to your data. The access column shows why we put a tool there.

write Can change data 3

ToolDescriptionAreaAccess basis
ac_RegisterAdsAccountCreate a new advertising account tied to a specific Amazon vendor, seller or author, or to a business who does not sell on Amazon. Requires one of these permissions: []Adsname based
ac_updateProfilesNote that this operation is only used for Sellers using Sponsored Products. This operation is not enabled for vendor type accounts.Adsname based
rp_deleteAsyncReportDeletes a report by id. Use this operation to cancel a report in a PENDING status. Authorized resource type: Global Ad Account ID, Profile ID Parameter name…Reportsname based

read Reads data 33

ToolDescriptionAreaAccess basis
get_envelope_contractRead-only probe: returns the cross-server error envelope contract this server implements (contract_version, error_kinds, normalized_kinds, env_vars). See…Othername based
set_active_profileSet the active profile ID for Amazon Ads API calls. Re-establish context before the next tool call iff state_scope == 'request' or state_reason is not null. Probe the transport…Adsname based
get_active_profileGet the currently active profile ID. Doubles as a session-scope probe: the response includes session_present, state_scope, and state_reason so agents can detect whether…Othername based
clear_active_profileClear the active profile ID, falling back to the default. Re-establish context before the next tool call iff state_scope == 'request' or state_reason is not null. Probe the…Othername based
select_profileInteractively select a profile from available optionsOthername based
summarize_profilesList profiles (summary mode): aggregate counts by country and account type. Use when you need to know what profile kinds exist without enumerating individual records.Othername based
search_profilesList profiles (search mode): filter by name (query), country_code, or account_type, with bounded limit. Use when you know what you're looking for and want a focused result set.Othername based
page_profilesList profiles (paged mode): paginated read with offset and limit. Returns {items, total_count, has_more, next_offset}. Use when iterating across the full set without dumping…Othername based
refresh_profiles_cacheList profiles (cache refresh): force re-fetch of cached profiles for the current identity and region. Use when you suspect cached data is stale before the next…Othername based
set_regionSet the region for Amazon Ads API calls. Pass region (preferred) or region_code (legacy alias). Valid values: 'na', 'eu', 'fe'. Re-establish context before the next tool call iff…Adsname based
get_regionGet the current region settingOthername based
list_regionsList all available regionsOthername based
get_routing_stateGet the current routing state (region, host, headers). Doubles as a session-scope probe: the response includes session_present, state_scope, and state_reason so agents can detect…Othername based
download_exportDownload a completed export to local storage (supports background execution)Othername based
list_downloadsList all downloaded exports and reports for the active profileReportsname based
get_download_urlGet the HTTP URL for downloading a file. Use with list_downloads to find available files, then get their download URLs. The URL can be opened in a browser or used with curl/wget…Othername based
read_downloadRead a profile-scoped downloaded file directly from server storage. Use list_downloads to get a file_path first.Othername based
list_report_fieldsList valid report fields by report operation. Call with no args to list supported operations.Reportsname based
report_fieldsQuery or validate Ads API v1 report fields against the packaged v1 catalog. Use mode='query' to discover fields (category, search, compatible_with, requires, fields detail lookup…Reportsname based
start_oauth_flowStart the OAuth authorization flow for Amazon Ads APIAdsname based
check_oauth_statusCheck the current OAuth authentication statusOthername based
refresh_oauth_tokenManually refresh the OAuth access tokenOthername based
clear_oauth_tokensClear all stored OAuth tokens and stateOthername based
list_tool_groupsList available API tool groups. Groups are disabled by default; use enable_tool_group to activate.Othername based
enable_tool_groupEnable or disable an API tool group by prefix. Call list_tool_groups first to see available groups.Othername based
ac_ListAdsAccountsList all advertising accounts for the user associated with the access token. Requires one of these permissions: []Adsname based
ac_GetAccountRequest attributes of a given advertising account. Requires one of these permissions: []Adsname based
ac_CreateTermsTokenCreate a new UUID terms token for the customer to accept advertising terms Requires one of these permissions: []Adsname based
ac_GetTermsTokenGet the terms token status for the customer Requires one of these permissions: []Othername based
ac_listProfilesNote that this operation does not return a response unless the current account has created at least one campaign using the advertising console.Adsname based
ac_getProfileByIdThis operation does not return a response unless the current account has created at least one campaign using the advertising console.Adsname based
rp_createAsyncReportCreates a report request. Use this operation to request the creation of a new report for Amazon Advertising Products. Use adProduct to specify the Advertising Product of the…Reportsname based
rp_getAsyncReportGets a generation status of a report by id. Uses the reportId value from the response of previously requested report via POST /reporting/reports operation. Returns the current…Reportsname based

Method

How we checked this server.

We started the server and called tools/list, with placeholder values instead of real credentials.6

Default start (CODE_MODE on) exposes only 4 meta-tools (tags, search, get_schema, execute); with CODE_MODE=false 36 tools in the default package set, more API groups loadable via enable_tool_group (Amazon Ads OpenAPI specs).

Not tested with credentials. We did not connect this server to a seller or ads account. A tool marked read can still have side effects we could not see, and a vendor can add write tools at any time. Check the list again before you grant access.

Areas come from keywords in tool names, as explained on the matrix page.

Notes

Sources for this report

  1. 1Source repository or product pagegithub.com
  2. 2Documentationgithub.com
  3. 3License: GitHub API repo.license (search 2026-10-30)
  4. 4Authentication: static scan of repo (env names / code patterns)
  5. 5Marketplaces: marketplace IDs found in code
  6. 6Our MCP inventory of Oct 30, 2026: tool list, access marks, stars and last commit. GitHub repository search (22 queries, unauthenticated) -> shallow clone -> static extraction (extract_tools.py) -> optional runtime tools/list (mcp_probe.py); vendor/official from public docs. access=read|write is a name/description heuristic unless access_basis says otherwise.