Amazon Ads
Amazon Ads: sp/budget Rules API
Amazon Ads: sp/budget Rules API.
MCP tool name
nexscope_data_amazon_ads_developer_proxy_sp_budget_rulesMCP endpoint
https://api.nexscope.ai/mcpJSON-RPC method
tools/callAuthentication
Use OAuth 2.1 Authorization Code with PKCE and the mcp:tools scope. API keys remain supported as a compatibility option.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxIf authentication fails, ask the user to open API Access and copy a valid key.
Call this MCP tool
Initialize an MCP 2025-11-25 Streamable HTTP session at https://api.nexscope.ai/mcp, then use tools/call.
{
"jsonrpc": "2.0",
"id": "data-amazon-ads-developer-proxy-sp-budget-rules-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_amazon_ads_developer_proxy_sp_budget_rules",
"arguments": {
"body": "{}",
"contentType": "application/json",
"method": "POST"
}
}
}MCP 2025-11-25 · Streamable HTTPProgress is delivered on the original POST SSE response. GET SSE carries notifications; reconnecting must query existing asynchronous work rather than submit again.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
connectionId | integer | required | An Amazon Ads connection owned by the authenticated Nexscope user. Example: {} |
fetchAll | boolean | optional | Automatic page turning; SP and SB V4 main resource lists use `nextToken`, SB Target/BudgetRule uses `nextToken` (BudgetRule query must contain `pageSize`), SB Keyword GET, SB V3 GET and SD use `startIndex + count`. Example: true |
maxResults | integer | optional | Single page 1–100; SD corresponds to count. Example: 100 |
skipDepCheck | boolean | optional | Skip dependency checking. Example: false |
includeExtendedDataFields | boolean | optional | Some entities return extended fields; SD is switched through the /extended path. Example: {} |
locale | string | optional | Localization parameters (supported by some keyword scripts). Example: {} |
method | string | required | Upstream HTTP methods: list query `GET`, create `POST`, modify `PUT`. Example: {} |
body | string | optional | Provide payload when creating/modifying; not required for list query. You cannot put an Amazon access token into the payload. Example: {} |
contentType | string | optional | application/json。 Example: {} |
queryString | string | optional | Pass upstream query parameters when needed. Example: {} |
confirmationToken | string | optional | For mutations, first preview without a token, then confirm using the returned single-use token. Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
success | boolean | optional | Whether the API completed the call successfully. Example: {} |
apiVersion | string | optional | `V3` or `V4` (if provided by the script). Example: {} |
amazonResourceVersion | string | optional | The actual Amazon resource version (if provided by the script). Example: {} |
budgetRules | array | optional | Budget rules array; actual fields returned by Amazon. Example: {} |
total | integer | optional | The number of aggregated entries (if provided by the script). Example: {} |
pagesFetched | integer | optional | Number of pages obtained. Example: {} |
truncated | boolean | optional | Whether it was truncated due to paging limit. Example: {} |
name | string | optional | Name (returned if supported by the entity). Example: {} |
state | string | optional | `ENABLED`, `PAUSED` or `ARCHIVED` (SD upstream may use lowercase). Example: {} |
Examples
Example arguments
{
"body": "{}",
"contentType": "application/json",
"method": "POST"
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}