Amazon Advertising
Amazon Ads Reporting MCP Tool
Uses the source get_report contract: omit reportId to create, supply reportId to poll, or supply a backend documentToken to download.
MCP tool name
nexscope_amazon_ads_reportingLegacy MCP endpoint
/api/skill-api/v1/mcpJSON-RPC method
tools/callAuthentication
Send the user API key as a bearer token on every MCP JSON-RPC request.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxIf authentication is missing or invalid, ask the user to open API Access and copy a valid key before calling this tool.
Call this MCP tool
Use tools/call with the MCP tool name below. The arguments object should match the table on this page.
{
"jsonrpc": "2.0",
"id": "amazon-ads-reporting-1",
"method": "tools/call",
"params": {
"name": "nexscope_amazon_ads_reporting",
"arguments": {
"endDate": "2026-07-31",
"groupBy": [
"campaign"
],
"connectionId": 123,
"adProduct": "SPONSORED_PRODUCTS",
"reportTypeId": "spCampaigns",
"startDate": "2026-07-01",
"columns": [
"campaignId",
"impressions"
]
}
}
}Legacy endpoint
POST /api/skill-api/v1/mcpCanonical detail URL
https://www.nexscope.ai/mcp-map/amazon-ads-reportingArguments
| Name | Type | Required | Meaning |
|---|---|---|---|
connectionId | integer | required | Owned Amazon Ads connection ID. Example: 123 |
reportId | string | optional | Existing report ID; when present the API polls that report. Example: report-id |
reportTypeId | string | optional | Report type required by a new report unless configuration supplies it. Example: spCampaigns |
adProduct | string | optional | Ad product required by a new report unless configuration supplies it. Example: SPONSORED_PRODUCTS |
groupBy | array | optional | Report grouping fields. Example: [
"campaign"
] |
columns | array | optional | Requested report columns. Example: [
"campaignId",
"impressions",
"clicks"
] |
name | string | optional | Optional report name. Example: Campaign report |
startDate | string | optional | Inclusive report start date for a new report. Example: 2026-07-01 |
endDate | string | optional | Inclusive report end date for a new report. Example: 2026-07-31 |
timeUnit | string | optional | Optional report time unit. Example: DAILY |
format | string | optional | Optional report format. Example: GZIP_JSON |
filters | array | optional | Optional report filters. Example: [] |
configuration | object | optional | Complete Amazon Ads reporting configuration; may replace reportTypeId/adProduct/groupBy/columns. Example: {} |
documentToken | string | optional | Backend-issued token for downloading a completed report. Example: opaque-document-token |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
data | any | required | Data value used by this API operation. |
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
msg | string | null | required | Msg value used by this API operation. |
ts | string | required | Epoch milliseconds. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
traceId | string | null | required | Trace id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.status | string | optional | Report status. Example: PENDING |
data.reportId | string | optional | Provider report ID. Example: report-id |
data.documentToken | string | optional | Safe opaque token used for download. Example: opaque-document-token |
data.content | object | optional | Downloaded report content when available. Example: {} |
data.contentType | string | optional | Downloaded report content type. Example: application/json |
data.type | string | optional | Provider-specific render or payload type. Example: null |
data.title | string | optional | Provider-specific response title. Example: null |
data.sourceType | string | optional | Provider-specific source platform type. Example: null |
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
data.costToken | integer | optional | Token cost reported by the upstream provider. Example: null |
data.costTime | integer | optional | Execution time reported by the upstream provider. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Examples
Example arguments
{
"endDate": "2026-07-31",
"groupBy": [
"campaign"
],
"connectionId": 123,
"adProduct": "SPONSORED_PRODUCTS",
"reportTypeId": "spCampaigns",
"startDate": "2026-07-01",
"columns": [
"campaignId",
"impressions"
]
}Example structuredContent
{
"data": {
"status": "PENDING",
"reportId": "report-id",
"documentToken": "opaque-document-token",
"content": {},
"contentType": "application/json"
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}