このMCPでできること
Inspects approved advertising accounts and first-party signal health, and proposes policy-gated Meta ad, creative, upload, budget, and status actions without directly executing spend changes.
ツール
入力スキーマ
{'type': 'object', 'required': ['actions', 'rationale', 'idempotency_key', 'evidence', 'target_source'], 'properties': {'actions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['increase_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['decrease_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['pause'], 'type': 'string'}, 'params': {'type': 'object', 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['resume'], 'type': 'string'}, 'params': {'type': 'object', 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['replace_creative'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['shift_spend'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['rollback'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_campaign'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_ad_set'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_ad'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['upload_asset'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['staged_asset_id', 'asset_type', 'filename', 'content_sha256'], 'properties': {'filename': {'type': 'string', 'maxLength': 255}, 'mime_type': {'type': ['string', 'null'], 'maxLength': 255}, 'asset_type': {'enum': ['image'], 'type': 'string'}, 'size_bytes': {'type': ['integer', 'null'], 'minimum': 1}, 'content_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'staged_asset_id': {'type': 'string', 'pattern': '^stage_[a-f0-9]{40}$', 'maxLength': 255}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['adjust_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['set_status'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['status'], 'properties': {'status': {'enum': ['active', 'paused'], 'type': 'string'}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['duplicate_ad_with_creative'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['asset_id', 'status'], 'properties': {'status': {'enum': ['paused'], 'type': 'string'}, 'asset_id': {'type': 'string', 'pattern': '^(image|video):.+$', 'maxLength': 255}, 'name_suffix': {'type': ['string', 'null'], 'maxLength': 100}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}]}, 'maxItems': 25, 'minItems': 1}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['source_tool', 'fields_used'], 'properties': {'fields_used': {'type': 'array', 'items': {'type': 'string', 'maxLength': 255}, 'maxItems': 50, 'minItems': 1}, 'source_tool': {'enum': ['get_account_state', 'get_signal_health', 'get_performance', 'get-creative-library', 'staged-asset-manifest'], 'type': 'string'}, 'action_index': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 3, 'minItems': 1}, 'rationale': {'type': 'string', 'maxLength': 4000}, 'account_id': {'type': 'integer', 'minimum': 1}, 'target_source': {'enum': ['human_supplied'], 'type': 'string'}, 'idempotency_key': {'type': 'string', 'maxLength': 64}}}
入力スキーマ
{'type': 'object', 'required': ['account_id'], 'properties': {'level': {'enum': ['campaign', 'adset', 'ad'], 'type': 'string', 'description': 'Limit results to campaign, adset, or ad objects.'}, 'limit': {'type': 'integer', 'default': 100, 'maximum': 200, 'minimum': 1, 'description': 'Maximum objects to return, from 1 to 200.'}, 'adset_id': {'type': 'string', 'description': 'Filter to objects under this parent ad set ID.'}, 'after_id': {'type': 'integer', 'minimum': 1, 'description': 'Database ID cursor from the previous page; continue with its last object ID.'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID available to the authorized workspace.'}, 'campaign_id': {'type': 'string', 'description': 'Filter to objects under this parent campaign ID.'}, 'effective_status': {'type': 'string', 'description': 'Filter by Meta effective status, such as ACTIVE, PAUSED, or ARCHIVED.'}}}
入力スキーマ
{'type': 'object', 'properties': {'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
入力スキーマ
{'type': 'object', 'required': ['action_id'], 'properties': {'action_id': {'type': 'string'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
出力スキーマ
{'type': 'object', 'required': ['data'], 'properties': {'data': {'type': 'object', 'required': ['batch_status', 'disposition'], 'properties': {'disposition': {'type': 'object', 'required': ['receipt_status', 'outcome_status', 'outcome_reason_code', 'outcome_checked_at', 'compensation_reason_code', 'recovery_disposition', 'late_restored'], 'properties': {'late_restored': {'type': 'boolean'}, 'outcome_status': {'enum': ['measurable', 'not_measurable', 'unavailable', None], 'type': ['string', 'null']}, 'receipt_status': {'enum': ['pending', 'attempting', 'reconciliation_required', 'committed', 'executed_pending_verification', 'measuring', 'verified', 'compensating', 'compensated', 'compensation_failed', 'irreversible', 'failed', 'reconciliation_exhausted', None], 'type': ['string', 'null']}, 'outcome_checked_at': {'type': ['string', 'null']}, 'outcome_reason_code': {'type': ['string', 'null']}, 'recovery_disposition': {'enum': ['no_compensation', 'restored', 'unrestored', 'contradictory', 'irreversible', 'uncertain', None], 'type': ['string', 'null']}, 'compensation_reason_code': {'type': ['string', 'null']}}}, 'batch_status': {'enum': ['pending', 'approved', 'approved_without_execution', 'auto_approved', 'rejected', 'executing', 'executed_pending_verification', 'compensating', 'measuring', 'completed', 'failed', 'rolled_back', 'rollback_incomplete', 'blocked', 'halted'], 'type': 'string'}}}}}
入力スキーマ
{'type': 'object', 'required': ['batch_id'], 'properties': {'batch_id': {'type': 'string'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
出力スキーマ
{'type': 'object', 'required': ['data'], 'properties': {'data': {'type': 'object', 'required': ['batch_status', 'restoration_summary', 'actions'], 'properties': {'actions': {'type': 'array', 'items': {'type': 'object', 'required': ['batch_status', 'disposition'], 'properties': {'disposition': {'type': 'object', 'required': ['receipt_status', 'outcome_status', 'outcome_reason_code', 'outcome_checked_at', 'compensation_reason_code', 'recovery_disposition', 'late_restored'], 'properties': {'late_restored': {'type': 'boolean'}, 'outcome_status': {'enum': ['measurable', 'not_measurable', 'unavailable', None], 'type': ['string', 'null']}, 'receipt_status': {'enum': ['pending', 'attempting', 'reconciliation_required', 'committed', 'executed_pending_verification', 'measuring', 'verified', 'compensating', 'compensated', 'compensation_failed', 'irreversible', 'failed', 'reconciliation_exhausted', None], 'type': ['string', 'null']}, 'outcome_checked_at': {'type': ['string', 'null']}, 'outcome_reason_code': {'type': ['string', 'null']}, 'recovery_disposition': {'enum': ['no_compensation', 'restored', 'unrestored', 'contradictory', 'irreversible', 'uncertain', None], 'type': ['string', 'null']}, 'compensation_reason_code': {'type': ['string', 'null']}}}, 'batch_status': {'enum': ['pending', 'approved', 'approved_without_execution', 'auto_approved', 'rejected', 'executing', 'executed_pending_verification', 'compensating', 'measuring', 'completed', 'failed', 'rolled_back', 'rollback_incomplete', 'blocked', 'halted'], 'type': 'string'}}}}, 'batch_status': {'enum': ['pending', 'approved', 'approved_without_execution', 'auto_approved', 'rejected', 'executing', 'executed_pending_verification', 'compensating', 'measuring', 'completed', 'failed', 'rolled_back', 'rollback_incomplete', 'blocked', 'halted'], 'type': 'string'}, 'restoration_summary': {'enum': ['all_receipts_compensated_late', None], 'type': ['string', 'null']}}}}}
入力スキーマ
{'type': 'object', 'required': ['action_id'], 'properties': {'action_id': {'type': 'string'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
出力スキーマ
{'type': 'object', 'required': ['document', 'document_sha256', 'chain_entry', 'disposition'], 'properties': {'document': {'type': 'object'}, 'chain_entry': {'type': 'object'}, 'disposition': {'type': 'object', 'required': ['receipt_status', 'outcome_status', 'outcome_reason_code', 'outcome_checked_at', 'compensation_reason_code', 'recovery_disposition', 'late_restored'], 'properties': {'late_restored': {'type': 'boolean'}, 'outcome_status': {'enum': ['measurable', 'not_measurable', 'unavailable', None], 'type': ['string', 'null']}, 'receipt_status': {'enum': ['pending', 'attempting', 'reconciliation_required', 'committed', 'executed_pending_verification', 'measuring', 'verified', 'compensating', 'compensated', 'compensation_failed', 'irreversible', 'failed', 'reconciliation_exhausted', None], 'type': ['string', 'null']}, 'outcome_checked_at': {'type': ['string', 'null']}, 'outcome_reason_code': {'type': ['string', 'null']}, 'recovery_disposition': {'enum': ['no_compensation', 'restored', 'unrestored', 'contradictory', 'irreversible', 'uncertain', None], 'type': ['string', 'null']}, 'compensation_reason_code': {'type': ['string', 'null']}}}, 'document_sha256': {'type': 'string'}}}
入力スキーマ
{'type': 'object', 'properties': {'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'Maximum assets returned per requested asset type.'}, 'cursor': {'type': 'string', 'description': 'Opaque Meta cursor returned by a previous call.'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Required when the workspace has more than one active account.'}, 'asset_type': {'enum': ['all', 'image', 'video'], 'type': 'string', 'default': 'all', 'description': 'Limit results to images or videos. Defaults to all.'}}}
入力スキーマ
{'type': 'object', 'required': ['account_id'], 'properties': {'ad_id': {'type': 'string', 'description': 'Limit metrics to this ad ID.'}, 'adset_id': {'type': 'string', 'description': 'Limit metrics to this ad set ID.'}, 'end_date': {'type': 'string', 'description': 'Inclusive end date in YYYY-MM-DD format.'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID available to the authorized workspace.'}, 'start_date': {'type': 'string', 'description': 'Inclusive start date in YYYY-MM-DD format.'}, 'campaign_id': {'type': 'string', 'description': 'Limit metrics to this campaign ID.'}, 'include_changes': {'type': 'boolean', 'default': False, 'description': 'Include object change history within the effective date window.'}}}
入力スキーマ
{'type': 'object', 'properties': {'days': {'type': 'integer', 'default': 7, 'maximum': 90, 'minimum': 1, 'description': 'Number of reporting days to compare, from 1 to 90.'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
入力スキーマ
{'type': 'object', 'properties': {'days': {'enum': [7, 30, 90], 'type': 'integer', 'default': 7, 'maximum': 90, 'minimum': 7, 'description': 'Trailing window in days. One of 7, 30, 90.'}, 'months': {'enum': [12], 'type': 'integer', 'description': 'Trailing window of 12 calendar months, in place of days. Offered only where the workspace plan keeps that history and the workspace is set to keep it.'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
入力スキーマ
{'type': 'object', 'properties': {'per_page': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Number of creatives to return per page.'}}}
入力スキーマ
{'type': 'object', 'properties': {'page': {'type': 'integer', 'minimum': 1}, 'status': {'enum': ['pending', 'approved_without_execution', 'rejected', 'executing', 'executed_pending_verification', 'compensating', 'measuring', 'verified', 'failed', 'execution_uncertain', 'rolled_back', 'blocked'], 'type': 'string'}, 'account_id': {'type': 'integer', 'minimum': 1, 'description': 'Advertising account ID. Signals reads use the workspace Meta destination when omitted; other tools may require an ID when multiple accounts are active.'}}}
出力スキーマ
{'type': 'object', 'required': ['data', 'meta'], 'properties': {'data': {'type': 'array', 'items': {'type': 'object', 'required': ['batch_status', 'disposition'], 'properties': {'disposition': {'type': 'object', 'required': ['receipt_status', 'outcome_status', 'outcome_reason_code', 'outcome_checked_at', 'compensation_reason_code', 'recovery_disposition', 'late_restored'], 'properties': {'late_restored': {'type': 'boolean'}, 'outcome_status': {'enum': ['measurable', 'not_measurable', 'unavailable', None], 'type': ['string', 'null']}, 'receipt_status': {'enum': ['pending', 'attempting', 'reconciliation_required', 'committed', 'executed_pending_verification', 'measuring', 'verified', 'compensating', 'compensated', 'compensation_failed', 'irreversible', 'failed', 'reconciliation_exhausted', None], 'type': ['string', 'null']}, 'outcome_checked_at': {'type': ['string', 'null']}, 'outcome_reason_code': {'type': ['string', 'null']}, 'recovery_disposition': {'enum': ['no_compensation', 'restored', 'unrestored', 'contradictory', 'irreversible', 'uncertain', None], 'type': ['string', 'null']}, 'compensation_reason_code': {'type': ['string', 'null']}}}, 'batch_status': {'enum': ['pending', 'approved', 'approved_without_execution', 'auto_approved', 'rejected', 'executing', 'executed_pending_verification', 'compensating', 'measuring', 'completed', 'failed', 'rolled_back', 'rollback_incomplete', 'blocked', 'halted'], 'type': 'string'}}}}, 'meta': {'type': 'object'}}}
入力スキーマ
{'type': 'object', 'required': ['actions', 'rationale', 'idempotency_key', 'evidence', 'target_source'], 'properties': {'actions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['increase_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['decrease_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['pause'], 'type': 'string'}, 'params': {'type': 'object', 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['resume'], 'type': 'string'}, 'params': {'type': 'object', 'additionalProperties': False}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'pattern': '^[0-9]+$', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['replace_creative'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['shift_spend'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['rollback'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_campaign'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_ad_set'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['create_ad'], 'type': 'string'}, 'params': {'type': 'object'}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['upload_asset'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['staged_asset_id', 'asset_type', 'filename', 'content_sha256'], 'properties': {'filename': {'type': 'string', 'maxLength': 255}, 'mime_type': {'type': ['string', 'null'], 'maxLength': 255}, 'asset_type': {'enum': ['image'], 'type': 'string'}, 'size_bytes': {'type': ['integer', 'null'], 'minimum': 1}, 'content_sha256': {'type': 'string', 'pattern': '^[a-f0-9]{64}$'}, 'staged_asset_id': {'type': 'string', 'pattern': '^stage_[a-f0-9]{40}$', 'maxLength': 255}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['adjust_budget'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['new_daily_budget_minor'], 'properties': {'new_daily_budget_minor': {'type': 'integer', 'minimum': 1}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['set_status'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['status'], 'properties': {'status': {'enum': ['active', 'paused'], 'type': 'string'}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}, {'type': 'object', 'required': ['type', 'target_entity', 'params', 'rationale'], 'properties': {'type': {'enum': ['duplicate_ad_with_creative'], 'type': 'string'}, 'params': {'type': 'object', 'required': ['asset_id', 'status'], 'properties': {'status': {'enum': ['paused'], 'type': 'string'}, 'asset_id': {'type': 'string', 'pattern': '^(image|video):.+$', 'maxLength': 255}, 'name_suffix': {'type': ['string', 'null'], 'maxLength': 100}}}, 'rationale': {'type': 'string', 'maxLength': 2000}, 'target_entity': {'type': 'object', 'required': ['type', 'id'], 'properties': {'id': {'type': 'string', 'maxLength': 128}, 'name': {'type': ['string', 'null'], 'maxLength': 255}, 'type': {'enum': ['ad_account', 'campaign', 'ad_set', 'ad'], 'type': 'string', 'maxLength': 64}}, 'additionalProperties': False}, 'idempotency_key': {'type': 'string', 'maxLength': 255}}}]}, 'maxItems': 25, 'minItems': 1}, 'evidence': {'type': 'array', 'items': {'type': 'object', 'required': ['source_tool', 'fields_used'], 'properties': {'fields_used': {'type': 'array', 'items': {'type': 'string', 'maxLength': 255}, 'maxItems': 50, 'minItems': 1}, 'source_tool': {'enum': ['get_account_state', 'get_signal_health', 'get_performance', 'get-creative-library', 'staged-asset-manifest'], 'type': 'string'}, 'action_index': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 3, 'minItems': 1}, 'rationale': {'type': 'string', 'maxLength': 4000}, 'account_id': {'type': 'integer', 'minimum': 1}, 'target_source': {'enum': ['human_supplied'], 'type': 'string'}, 'idempotency_key': {'type': 'string', 'maxLength': 64}}}
入力スキーマ
{'type': 'object', 'properties': {}}
最近のツール変更
類似のMCPサーバー
AdButler
Manages AdButler advertisers, campaigns, ad items, audiences, zones, creatives, catalogs, and advertising reports.
Meta Council
Provides governed workflows for consulting, outreach, sales deals, invoices, marketing campaigns, content approvals, accounting a…
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…
synter-ads
Manages cross-platform advertising campaigns, audiences, tracking, creative, landing pages, campaign audits, technology intellige…
Stratalize Intelligence
Provides vendor, market, SaaS, workforce, government contract, public company, regulatory, competitive, and AI-brand intelligence…
Neotic
Enables agents to create contextual in-app experiences, announcements, and triggers.
CorpusIQ
Connects authenticated users to business systems such as CRM, ecommerce, advertising, analytics, email marketing, SEO, calendars,…
Riley Craig x402 Agent Store
Provides paid blockchain data and transaction reads, AI brand-visibility research, and company or lead enrichment services.