@cesteral/meta-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +201 -0
- package/README.md +337 -0
- package/dist/auth/index.d.ts +3 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +3 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/meta-auth-adapter.d.ts +37 -0
- package/dist/auth/meta-auth-adapter.d.ts.map +1 -0
- package/dist/auth/meta-auth-adapter.js +109 -0
- package/dist/auth/meta-auth-adapter.js.map +1 -0
- package/dist/auth/meta-auth-strategy.d.ts +13 -0
- package/dist/auth/meta-auth-strategy.d.ts.map +1 -0
- package/dist/auth/meta-auth-strategy.js +47 -0
- package/dist/auth/meta-auth-strategy.js.map +1 -0
- package/dist/config/index.d.ts +108 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +51 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/insights-catalog.json +95 -0
- package/dist/container/index.d.ts +5 -0
- package/dist/container/index.d.ts.map +1 -0
- package/dist/container/index.js +14 -0
- package/dist/container/index.js.map +1 -0
- package/dist/container/registrations/core.d.ts +3 -0
- package/dist/container/registrations/core.d.ts.map +1 -0
- package/dist/container/registrations/core.js +16 -0
- package/dist/container/registrations/core.js.map +1 -0
- package/dist/container/registrations/mcp.d.ts +2 -0
- package/dist/container/registrations/mcp.d.ts.map +1 -0
- package/dist/container/registrations/mcp.js +3 -0
- package/dist/container/registrations/mcp.js.map +1 -0
- package/dist/container/tokens.d.ts +6 -0
- package/dist/container/tokens.d.ts.map +1 -0
- package/dist/container/tokens.js +6 -0
- package/dist/container/tokens.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js +244 -0
- package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js +111 -0
- package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js +160 -0
- package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
- package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js +234 -0
- package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js +159 -0
- package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/insights-reporting-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/insights-reporting-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/insights-reporting-workflow.prompt.js +79 -0
- package/dist/mcp-server/prompts/definitions/insights-reporting-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js +289 -0
- package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js +109 -0
- package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts +4 -0
- package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts.map +1 -0
- package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js +77 -0
- package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js.map +1 -0
- package/dist/mcp-server/prompts/index.d.ts +9 -0
- package/dist/mcp-server/prompts/index.d.ts.map +1 -0
- package/dist/mcp-server/prompts/index.js +97 -0
- package/dist/mcp-server/prompts/index.js.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts +4 -0
- package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-examples.resource.js +140 -0
- package/dist/mcp-server/resources/definitions/entity-examples.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts +3 -0
- package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js +117 -0
- package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts +4 -0
- package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/entity-schemas.resource.js +125 -0
- package/dist/mcp-server/resources/definitions/entity-schemas.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/field-rules.resource.d.ts +3 -0
- package/dist/mcp-server/resources/definitions/field-rules.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/field-rules.resource.js +28 -0
- package/dist/mcp-server/resources/definitions/field-rules.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/findings.resource.d.ts +8 -0
- package/dist/mcp-server/resources/definitions/findings.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/findings.resource.js +33 -0
- package/dist/mcp-server/resources/definitions/findings.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
- package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/index.js +81 -0
- package/dist/mcp-server/resources/definitions/index.js.map +1 -0
- package/dist/mcp-server/resources/definitions/insights-reference.resource.d.ts +3 -0
- package/dist/mcp-server/resources/definitions/insights-reference.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/insights-reference.resource.js +113 -0
- package/dist/mcp-server/resources/definitions/insights-reference.resource.js.map +1 -0
- package/dist/mcp-server/resources/definitions/targeting-reference.resource.d.ts +3 -0
- package/dist/mcp-server/resources/definitions/targeting-reference.resource.d.ts.map +1 -0
- package/dist/mcp-server/resources/definitions/targeting-reference.resource.js +98 -0
- package/dist/mcp-server/resources/definitions/targeting-reference.resource.js.map +1 -0
- package/dist/mcp-server/resources/index.d.ts +3 -0
- package/dist/mcp-server/resources/index.d.ts.map +1 -0
- package/dist/mcp-server/resources/index.js +2 -0
- package/dist/mcp-server/resources/index.js.map +1 -0
- package/dist/mcp-server/resources/types.d.ts +8 -0
- package/dist/mcp-server/resources/types.d.ts.map +1 -0
- package/dist/mcp-server/resources/types.js +2 -0
- package/dist/mcp-server/resources/types.js.map +1 -0
- package/dist/mcp-server/resources/utils/field-rules.d.ts +18 -0
- package/dist/mcp-server/resources/utils/field-rules.d.ts.map +1 -0
- package/dist/mcp-server/resources/utils/field-rules.js +103 -0
- package/dist/mcp-server/resources/utils/field-rules.js.map +1 -0
- package/dist/mcp-server/server.d.ts +5 -0
- package/dist/mcp-server/server.d.ts.map +1 -0
- package/dist/mcp-server/server.js +133 -0
- package/dist/mcp-server/server.js.map +1 -0
- package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts +221 -0
- package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/adjust-bids.tool.js +178 -0
- package/dist/mcp-server/tools/definitions/adjust-bids.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts +143 -0
- package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js +108 -0
- package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts +180 -0
- package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js +125 -0
- package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts +140 -0
- package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js +112 -0
- package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts +148 -0
- package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/check-report-status.tool.js +107 -0
- package/dist/mcp-server/tools/definitions/check-report-status.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts +115 -0
- package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/create-entity.tool.js +104 -0
- package/dist/mcp-server/tools/definitions/create-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts +93 -0
- package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/delete-entity.tool.js +102 -0
- package/dist/mcp-server/tools/definitions/delete-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/download-report.tool.d.ts +183 -0
- package/dist/mcp-server/tools/definitions/download-report.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/download-report.tool.js +109 -0
- package/dist/mcp-server/tools/definitions/download-report.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts +115 -0
- package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js +98 -0
- package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts +69 -0
- package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js +63 -0
- package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts +69 -0
- package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js +68 -0
- package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-available-metrics.tool.d.ts +91 -0
- package/dist/mcp-server/tools/definitions/get-available-metrics.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-available-metrics.tool.js +85 -0
- package/dist/mcp-server/tools/definitions/get-available-metrics.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-delivery-estimate.tool.d.ts +82 -0
- package/dist/mcp-server/tools/definitions/get-delivery-estimate.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-delivery-estimate.tool.js +72 -0
- package/dist/mcp-server/tools/definitions/get-delivery-estimate.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts +90 -0
- package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-entity.tool.js +83 -0
- package/dist/mcp-server/tools/definitions/get-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-insights-breakdowns.tool.d.ts +277 -0
- package/dist/mcp-server/tools/definitions/get-insights-breakdowns.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-insights-breakdowns.tool.js +175 -0
- package/dist/mcp-server/tools/definitions/get-insights-breakdowns.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-insights.tool.d.ts +274 -0
- package/dist/mcp-server/tools/definitions/get-insights.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-insights.tool.js +188 -0
- package/dist/mcp-server/tools/definitions/get-insights.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts +141 -0
- package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js +157 -0
- package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts +81 -0
- package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js +73 -0
- package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/index.d.ts +29 -0
- package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/index.js +87 -0
- package/dist/mcp-server/tools/definitions/index.js.map +1 -0
- package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.d.ts +147 -0
- package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.js +83 -0
- package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts +184 -0
- package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/list-entities.tool.js +105 -0
- package/dist/mcp-server/tools/definitions/list-entities.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/manage-budget-schedule.tool.d.ts +128 -0
- package/dist/mcp-server/tools/definitions/manage-budget-schedule.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/manage-budget-schedule.tool.js +145 -0
- package/dist/mcp-server/tools/definitions/manage-budget-schedule.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts +89 -0
- package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/search-targeting.tool.js +87 -0
- package/dist/mcp-server/tools/definitions/search-targeting.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts +192 -0
- package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/submit-report.tool.js +131 -0
- package/dist/mcp-server/tools/definitions/submit-report.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts +1714 -0
- package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/update-entity.tool.js +146 -0
- package/dist/mcp-server/tools/definitions/update-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts +88 -0
- package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/upload-image.tool.js +89 -0
- package/dist/mcp-server/tools/definitions/upload-image.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts +94 -0
- package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/upload-video.tool.js +151 -0
- package/dist/mcp-server/tools/definitions/upload-video.tool.js.map +1 -0
- package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts +169 -0
- package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts.map +1 -0
- package/dist/mcp-server/tools/definitions/validate-entity.tool.js +103 -0
- package/dist/mcp-server/tools/definitions/validate-entity.tool.js.map +1 -0
- package/dist/mcp-server/tools/index.d.ts +2 -0
- package/dist/mcp-server/tools/index.d.ts.map +1 -0
- package/dist/mcp-server/tools/index.js +2 -0
- package/dist/mcp-server/tools/index.js.map +1 -0
- package/dist/mcp-server/tools/utils/capture-snapshot.d.ts +8 -0
- package/dist/mcp-server/tools/utils/capture-snapshot.d.ts.map +1 -0
- package/dist/mcp-server/tools/utils/capture-snapshot.js +70 -0
- package/dist/mcp-server/tools/utils/capture-snapshot.js.map +1 -0
- package/dist/mcp-server/tools/utils/dry-run.d.ts +11 -0
- package/dist/mcp-server/tools/utils/dry-run.d.ts.map +1 -0
- package/dist/mcp-server/tools/utils/dry-run.js +60 -0
- package/dist/mcp-server/tools/utils/dry-run.js.map +1 -0
- package/dist/mcp-server/tools/utils/entity-mapping.d.ts +14 -0
- package/dist/mcp-server/tools/utils/entity-mapping.d.ts.map +1 -0
- package/dist/mcp-server/tools/utils/entity-mapping.js +138 -0
- package/dist/mcp-server/tools/utils/entity-mapping.js.map +1 -0
- package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
- package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
- package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
- package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
- package/dist/mcp-server/transports/streamable-http-transport.d.ts +53 -0
- package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
- package/dist/mcp-server/transports/streamable-http-transport.js +80 -0
- package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
- package/dist/services/meta/meta-graph-api-client.d.ts +19 -0
- package/dist/services/meta/meta-graph-api-client.d.ts.map +1 -0
- package/dist/services/meta/meta-graph-api-client.js +226 -0
- package/dist/services/meta/meta-graph-api-client.js.map +1 -0
- package/dist/services/meta/meta-insights-service.d.ts +76 -0
- package/dist/services/meta/meta-insights-service.d.ts.map +1 -0
- package/dist/services/meta/meta-insights-service.js +209 -0
- package/dist/services/meta/meta-insights-service.js.map +1 -0
- package/dist/services/meta/meta-service.d.ts +64 -0
- package/dist/services/meta/meta-service.d.ts.map +1 -0
- package/dist/services/meta/meta-service.js +177 -0
- package/dist/services/meta/meta-service.js.map +1 -0
- package/dist/services/meta/meta-targeting-service.d.ts +13 -0
- package/dist/services/meta/meta-targeting-service.d.ts.map +1 -0
- package/dist/services/meta/meta-targeting-service.js +38 -0
- package/dist/services/meta/meta-targeting-service.js.map +1 -0
- package/dist/services/meta/types.d.ts +227 -0
- package/dist/services/meta/types.d.ts.map +1 -0
- package/dist/services/meta/types.js +55 -0
- package/dist/services/meta/types.js.map +1 -0
- package/dist/services/session-services.d.ts +19 -0
- package/dist/services/session-services.d.ts.map +1 -0
- package/dist/services/session-services.js +19 -0
- package/dist/services/session-services.js.map +1 -0
- package/dist/testkit/fixtures/index.d.ts +9 -0
- package/dist/testkit/fixtures/index.d.ts.map +1 -0
- package/dist/testkit/fixtures/index.js +201 -0
- package/dist/testkit/fixtures/index.js.map +1 -0
- package/dist/testkit/index.d.ts +6 -0
- package/dist/testkit/index.d.ts.map +1 -0
- package/dist/testkit/index.js +26 -0
- package/dist/testkit/index.js.map +1 -0
- package/dist/testkit/types.d.ts +17 -0
- package/dist/testkit/types.d.ts.map +1 -0
- package/dist/testkit/types.js +2 -0
- package/dist/testkit/types.js.map +1 -0
- package/dist/types-global/mcp.d.ts +2 -0
- package/dist/types-global/mcp.d.ts.map +1 -0
- package/dist/types-global/mcp.js +2 -0
- package/dist/types-global/mcp.js.map +1 -0
- package/dist/utils/errors/index.d.ts +2 -0
- package/dist/utils/errors/index.d.ts.map +1 -0
- package/dist/utils/errors/index.js +2 -0
- package/dist/utils/errors/index.js.map +1 -0
- package/dist/utils/internal/request-context.d.ts +20 -0
- package/dist/utils/internal/request-context.d.ts.map +1 -0
- package/dist/utils/internal/request-context.js +19 -0
- package/dist/utils/internal/request-context.js.map +1 -0
- package/dist/utils/platform.d.ts +3 -0
- package/dist/utils/platform.d.ts.map +1 -0
- package/dist/utils/platform.js +5 -0
- package/dist/utils/platform.js.map +1 -0
- package/dist/utils/security/rate-limiter.d.ts +3 -0
- package/dist/utils/security/rate-limiter.d.ts.map +1 -0
- package/dist/utils/security/rate-limiter.js +5 -0
- package/dist/utils/security/rate-limiter.js.map +1 -0
- package/dist/utils/telemetry/index.d.ts +2 -0
- package/dist/utils/telemetry/index.d.ts.map +1 -0
- package/dist/utils/telemetry/index.js +2 -0
- package/dist/utils/telemetry/index.js.map +1 -0
- package/dist/utils/telemetry/tracing.d.ts +3 -0
- package/dist/utils/telemetry/tracing.d.ts.map +1 -0
- package/dist/utils/telemetry/tracing.js +4 -0
- package/dist/utils/telemetry/tracing.js.map +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
export const bulkOperationsWorkflowPrompt = {
|
|
2
|
+
name: "meta_bulk_operations_workflow",
|
|
3
|
+
description: "Step-by-step guide for Meta Ads bulk operations: batch create entities, batch update entities, batch status changes, and batch bid adjustments. Covers partial failure handling and verification.",
|
|
4
|
+
arguments: [
|
|
5
|
+
{
|
|
6
|
+
name: "adAccountId",
|
|
7
|
+
description: "Meta Ad Account ID (e.g., act_123456789)",
|
|
8
|
+
required: true,
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: "operation",
|
|
12
|
+
description: "Operation type: 'create', 'update', 'status', or 'bids' (default: status)",
|
|
13
|
+
required: false,
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
};
|
|
17
|
+
export function getBulkOperationsWorkflowMessage(args) {
|
|
18
|
+
const adAccountId = args?.adAccountId || "{adAccountId}";
|
|
19
|
+
const operation = args?.operation || "status";
|
|
20
|
+
return `# Meta Ads Bulk Operations Workflow
|
|
21
|
+
|
|
22
|
+
Ad Account: \`${adAccountId}\`
|
|
23
|
+
Operation: \`${operation}\`
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Overview
|
|
28
|
+
|
|
29
|
+
Meta MCP supports four bulk operation tools:
|
|
30
|
+
|
|
31
|
+
| Tool | Purpose | Max Items |
|
|
32
|
+
|------|---------|-----------|
|
|
33
|
+
| \`meta_bulk_create_entities\` | Create multiple entities of the same type | 50 |
|
|
34
|
+
| \`meta_bulk_update_entities\` | Update multiple entities with individual payloads | 50 |
|
|
35
|
+
| \`meta_bulk_update_status\` | Pause/activate/archive multiple entities | 50 |
|
|
36
|
+
| \`meta_adjust_bids\` | Adjust bids on multiple ad sets | 50 |
|
|
37
|
+
|
|
38
|
+
All bulk operations support partial success — failed items don't block the rest.
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## Bulk Status Updates
|
|
43
|
+
|
|
44
|
+
### Step 1: Identify Entities
|
|
45
|
+
|
|
46
|
+
\`\`\`json
|
|
47
|
+
{
|
|
48
|
+
"tool": "meta_list_entities",
|
|
49
|
+
"params": {
|
|
50
|
+
"entityType": "adSet",
|
|
51
|
+
"adAccountId": "${adAccountId}",
|
|
52
|
+
"fields": ["id", "name", "status", "effective_status"]
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
\`\`\`
|
|
56
|
+
|
|
57
|
+
### Step 2: Execute Status Change
|
|
58
|
+
|
|
59
|
+
\`\`\`json
|
|
60
|
+
{
|
|
61
|
+
"tool": "meta_bulk_update_status",
|
|
62
|
+
"params": {
|
|
63
|
+
"entityType": "adSet",
|
|
64
|
+
"entityIds": ["{id1}", "{id2}", "{id3}"],
|
|
65
|
+
"status": "PAUSED"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
\`\`\`
|
|
69
|
+
|
|
70
|
+
Valid statuses: \`ACTIVE\`, \`PAUSED\`, \`ARCHIVED\`
|
|
71
|
+
|
|
72
|
+
⚠️ **GOTCHA**: Archiving is **irreversible**. Always pause first if you might want to reactivate.
|
|
73
|
+
|
|
74
|
+
⚠️ **GOTCHA**: Pausing a campaign pauses all its ad sets and ads (via effective_status), even though their individual status fields remain unchanged.
|
|
75
|
+
|
|
76
|
+
### Step 3: Verify
|
|
77
|
+
|
|
78
|
+
Check results for \`successful\` and \`failed\` arrays with per-item status.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Bulk Entity Creation
|
|
83
|
+
|
|
84
|
+
### Step 1: Fetch Schema
|
|
85
|
+
|
|
86
|
+
**Resource:** \`entity-schema://{entityType}\` and \`entity-examples://{entityType}\`
|
|
87
|
+
|
|
88
|
+
### Step 2: Build Payloads
|
|
89
|
+
|
|
90
|
+
\`\`\`json
|
|
91
|
+
{
|
|
92
|
+
"tool": "meta_bulk_create_entities",
|
|
93
|
+
"params": {
|
|
94
|
+
"entityType": "adSet",
|
|
95
|
+
"adAccountId": "${adAccountId}",
|
|
96
|
+
"items": [
|
|
97
|
+
{
|
|
98
|
+
"name": "Ad Set - US 25-44",
|
|
99
|
+
"campaign_id": "{campaignId}",
|
|
100
|
+
"daily_budget": 2500,
|
|
101
|
+
"bid_amount": 150,
|
|
102
|
+
"billing_event": "IMPRESSIONS",
|
|
103
|
+
"optimization_goal": "LINK_CLICKS",
|
|
104
|
+
"targeting": {
|
|
105
|
+
"geo_locations": { "countries": ["US"] },
|
|
106
|
+
"age_min": 25,
|
|
107
|
+
"age_max": 44
|
|
108
|
+
},
|
|
109
|
+
"status": "PAUSED"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"name": "Ad Set - UK 25-44",
|
|
113
|
+
"campaign_id": "{campaignId}",
|
|
114
|
+
"daily_budget": 2000,
|
|
115
|
+
"bid_amount": 175,
|
|
116
|
+
"billing_event": "IMPRESSIONS",
|
|
117
|
+
"optimization_goal": "LINK_CLICKS",
|
|
118
|
+
"targeting": {
|
|
119
|
+
"geo_locations": { "countries": ["GB"] },
|
|
120
|
+
"age_min": 25,
|
|
121
|
+
"age_max": 44
|
|
122
|
+
},
|
|
123
|
+
"status": "PAUSED"
|
|
124
|
+
}
|
|
125
|
+
]
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
\`\`\`
|
|
129
|
+
|
|
130
|
+
⚠️ **GOTCHA**: Budget values are in **cents**. \`daily_budget: 2500\` = $25.00 USD.
|
|
131
|
+
|
|
132
|
+
⚠️ **GOTCHA**: Always create entities in \`PAUSED\` status. Activate after verification.
|
|
133
|
+
|
|
134
|
+
### Step 3: Save IDs from Results
|
|
135
|
+
|
|
136
|
+
Review the results array. Each successful create returns the new entity ID. Save these for subsequent operations (ad creation, targeting, etc.).
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Bulk Entity Updates
|
|
141
|
+
|
|
142
|
+
### Step 1: Build Update Items
|
|
143
|
+
|
|
144
|
+
Each item needs an \`entityId\` and a \`data\` object with only the fields to change.
|
|
145
|
+
|
|
146
|
+
\`\`\`json
|
|
147
|
+
{
|
|
148
|
+
"tool": "meta_bulk_update_entities",
|
|
149
|
+
"params": {
|
|
150
|
+
"entityType": "adSet",
|
|
151
|
+
"items": [
|
|
152
|
+
{
|
|
153
|
+
"entityId": "{adSetId1}",
|
|
154
|
+
"data": {
|
|
155
|
+
"daily_budget": 3000,
|
|
156
|
+
"bid_amount": 200
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"entityId": "{adSetId2}",
|
|
161
|
+
"data": {
|
|
162
|
+
"daily_budget": 3500,
|
|
163
|
+
"bid_amount": 225
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
]
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
\`\`\`
|
|
170
|
+
|
|
171
|
+
⚠️ **GOTCHA**: Targeting updates replace entirely. If updating targeting on one ad set, include ALL targeting fields, not just the ones you're changing.
|
|
172
|
+
|
|
173
|
+
### Step 2: Verify
|
|
174
|
+
|
|
175
|
+
Check each item in the results for success/failure status.
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## Batch Bid Adjustments
|
|
180
|
+
|
|
181
|
+
For ad set bid changes specifically, use the dedicated bid adjustment tool.
|
|
182
|
+
|
|
183
|
+
### Step 1: Review Current Bids
|
|
184
|
+
|
|
185
|
+
\`\`\`json
|
|
186
|
+
{
|
|
187
|
+
"tool": "meta_list_entities",
|
|
188
|
+
"params": {
|
|
189
|
+
"entityType": "adSet",
|
|
190
|
+
"adAccountId": "${adAccountId}",
|
|
191
|
+
"fields": ["id", "name", "bid_amount", "daily_budget"]
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
\`\`\`
|
|
195
|
+
|
|
196
|
+
### Step 2: Calculate and Apply
|
|
197
|
+
|
|
198
|
+
Bid amounts are in **cents**: 100 = $1.00 USD.
|
|
199
|
+
|
|
200
|
+
\`\`\`json
|
|
201
|
+
{
|
|
202
|
+
"tool": "meta_adjust_bids",
|
|
203
|
+
"params": {
|
|
204
|
+
"adjustments": [
|
|
205
|
+
{
|
|
206
|
+
"adSetId": "{adSetId1}",
|
|
207
|
+
"bidAmount": 250
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
"adSetId": "{adSetId2}",
|
|
211
|
+
"bidAmount": 300
|
|
212
|
+
}
|
|
213
|
+
],
|
|
214
|
+
"reason": "Increasing bids on top-performing ad sets"
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
\`\`\`
|
|
218
|
+
|
|
219
|
+
### Step 3: Verify
|
|
220
|
+
|
|
221
|
+
Each successful adjustment shows previous and new bid amounts.
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Handling Partial Failures
|
|
226
|
+
|
|
227
|
+
All bulk operations return per-item results:
|
|
228
|
+
|
|
229
|
+
1. Check \`failed\` array for error messages
|
|
230
|
+
2. Common errors: invalid ID, permission denied, policy violation, budget below minimum
|
|
231
|
+
3. Fix and retry only the failed items
|
|
232
|
+
4. After retrying, verify all entities are in expected state
|
|
233
|
+
|
|
234
|
+
## Safety Checklist
|
|
235
|
+
|
|
236
|
+
- [ ] Correct \`adAccountId\`
|
|
237
|
+
- [ ] Entity IDs verified by listing first
|
|
238
|
+
- [ ] Budget/bid amounts confirmed as cents (not dollars)
|
|
239
|
+
- [ ] Status changes: understood parent-child impact
|
|
240
|
+
- [ ] Creates: entities set to PAUSED initially
|
|
241
|
+
- [ ] Targeting updates: full targeting spec included (not partial)
|
|
242
|
+
`;
|
|
243
|
+
}
|
|
244
|
+
//# sourceMappingURL=bulk-operations-workflow.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulk-operations-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,4BAA4B,GAAW;IAClD,IAAI,EAAE,+BAA+B;IACrC,WAAW,EACT,mMAAmM;IACrM,SAAS,EAAE;QACT;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,2EAA2E;YACxF,QAAQ,EAAE,KAAK;SAChB;KACF;CACF,CAAC;AAEF,MAAM,UAAU,gCAAgC,CAAC,IAA6B;IAC5E,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,eAAe,CAAC;IACzD,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,QAAQ,CAAC;IAE9C,OAAO;;gBAEO,WAAW;eACZ,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA4BF,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA4CX,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBA+FX,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDhC,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
export declare const campaignSetupWorkflowPrompt: Prompt;
|
|
3
|
+
export declare function getCampaignSetupWorkflowMessage(args?: Record<string, string>): string;
|
|
4
|
+
//# sourceMappingURL=campaign-setup-workflow.prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign-setup-workflow.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,2BAA2B,EAAE,MAWzC,CAAC;AAEF,wBAAgB,+BAA+B,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAmGrF"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
export const campaignSetupWorkflowPrompt = {
|
|
2
|
+
name: "meta_campaign_setup_workflow",
|
|
3
|
+
description: "Step-by-step guide for creating a complete Meta Ads campaign structure (Campaign > Ad Set > Ad Creative > Ad)",
|
|
4
|
+
arguments: [
|
|
5
|
+
{
|
|
6
|
+
name: "adAccountId",
|
|
7
|
+
description: "Meta Ad Account ID (e.g., act_123456789)",
|
|
8
|
+
required: true,
|
|
9
|
+
},
|
|
10
|
+
],
|
|
11
|
+
};
|
|
12
|
+
export function getCampaignSetupWorkflowMessage(args) {
|
|
13
|
+
const adAccountId = args?.adAccountId || "{adAccountId}";
|
|
14
|
+
return `# Meta Campaign Setup Workflow
|
|
15
|
+
|
|
16
|
+
## Prerequisites
|
|
17
|
+
- Ad Account ID: \`${adAccountId}\`
|
|
18
|
+
- Verify account access: \`meta_list_ad_accounts\`
|
|
19
|
+
|
|
20
|
+
## Step 1: Create Campaign
|
|
21
|
+
|
|
22
|
+
\`\`\`json
|
|
23
|
+
meta_create_entity({
|
|
24
|
+
"entityType": "campaign",
|
|
25
|
+
"adAccountId": "${adAccountId}",
|
|
26
|
+
"data": {
|
|
27
|
+
"name": "Your Campaign Name",
|
|
28
|
+
"objective": "OUTCOME_TRAFFIC",
|
|
29
|
+
"status": "PAUSED",
|
|
30
|
+
"special_ad_categories": [],
|
|
31
|
+
"daily_budget": 5000
|
|
32
|
+
}
|
|
33
|
+
})
|
|
34
|
+
\`\`\`
|
|
35
|
+
|
|
36
|
+
**Campaign Objectives:** OUTCOME_AWARENESS, OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_APP_PROMOTION
|
|
37
|
+
|
|
38
|
+
## Step 2: Create Ad Creative(s)
|
|
39
|
+
|
|
40
|
+
\`\`\`json
|
|
41
|
+
meta_create_entity({
|
|
42
|
+
"entityType": "adCreative",
|
|
43
|
+
"adAccountId": "${adAccountId}",
|
|
44
|
+
"data": {
|
|
45
|
+
"name": "Creative Name",
|
|
46
|
+
"object_story_spec": {
|
|
47
|
+
"page_id": "YOUR_PAGE_ID",
|
|
48
|
+
"link_data": {
|
|
49
|
+
"link": "https://example.com",
|
|
50
|
+
"message": "Your ad copy",
|
|
51
|
+
"name": "Headline",
|
|
52
|
+
"call_to_action": { "type": "LEARN_MORE" },
|
|
53
|
+
"image_hash": "YOUR_IMAGE_HASH"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
})
|
|
58
|
+
\`\`\`
|
|
59
|
+
|
|
60
|
+
## Step 3: Create Ad Set(s)
|
|
61
|
+
|
|
62
|
+
\`\`\`json
|
|
63
|
+
meta_create_entity({
|
|
64
|
+
"entityType": "adSet",
|
|
65
|
+
"adAccountId": "${adAccountId}",
|
|
66
|
+
"data": {
|
|
67
|
+
"name": "Ad Set Name",
|
|
68
|
+
"campaign_id": "CAMPAIGN_ID_FROM_STEP_1",
|
|
69
|
+
"optimization_goal": "LINK_CLICKS",
|
|
70
|
+
"billing_event": "IMPRESSIONS",
|
|
71
|
+
"daily_budget": 5000,
|
|
72
|
+
"targeting": {
|
|
73
|
+
"age_min": 25,
|
|
74
|
+
"age_max": 55,
|
|
75
|
+
"geo_locations": { "countries": ["US"] }
|
|
76
|
+
},
|
|
77
|
+
"status": "PAUSED"
|
|
78
|
+
}
|
|
79
|
+
})
|
|
80
|
+
\`\`\`
|
|
81
|
+
|
|
82
|
+
## Step 4: Create Ad(s)
|
|
83
|
+
|
|
84
|
+
\`\`\`json
|
|
85
|
+
meta_create_entity({
|
|
86
|
+
"entityType": "ad",
|
|
87
|
+
"adAccountId": "${adAccountId}",
|
|
88
|
+
"data": {
|
|
89
|
+
"name": "Ad Name",
|
|
90
|
+
"adset_id": "ADSET_ID_FROM_STEP_3",
|
|
91
|
+
"creative": { "creative_id": "CREATIVE_ID_FROM_STEP_2" },
|
|
92
|
+
"status": "PAUSED"
|
|
93
|
+
}
|
|
94
|
+
})
|
|
95
|
+
\`\`\`
|
|
96
|
+
|
|
97
|
+
## Step 5: Verify & Activate
|
|
98
|
+
|
|
99
|
+
1. Review: \`meta_get_entity\` for each created entity
|
|
100
|
+
2. Preview: \`meta_get_ad_preview\` to see ad appearance
|
|
101
|
+
3. Activate: \`meta_bulk_update_status\` to set ACTIVE
|
|
102
|
+
|
|
103
|
+
## Common Gotchas
|
|
104
|
+
|
|
105
|
+
- Budget values are in **cents** (5000 = $50)
|
|
106
|
+
- Campaigns require \`special_ad_categories\` (use [] if none)
|
|
107
|
+
- targeting field **replaces entirely** on updates
|
|
108
|
+
- Data reporting lags up to 48 hours
|
|
109
|
+
`;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=campaign-setup-workflow.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"campaign-setup-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,2BAA2B,GAAW;IACjD,IAAI,EAAE,8BAA8B;IACpC,WAAW,EACT,+GAA+G;IACjH,SAAS,EAAE;QACT;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,0CAA0C;YACvD,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC;AAEF,MAAM,UAAU,+BAA+B,CAAC,IAA6B;IAC3E,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,eAAe,CAAC;IAEzD,OAAO;;;qBAGY,WAAW;;;;;;;;oBAQZ,WAAW;;;;;;;;;;;;;;;;;;oBAkBX,WAAW;;;;;;;;;;;;;;;;;;;;;;oBAsBX,WAAW;;;;;;;;;;;;;;;;;;;;;;oBAsBX,WAAW;;;;;;;;;;;;;;;;;;;;;;CAsB9B,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
export declare const creativeUploadWorkflowPrompt: Prompt;
|
|
3
|
+
export declare function getCreativeUploadWorkflowMessage(args?: Record<string, string>): string;
|
|
4
|
+
//# sourceMappingURL=creative-upload-workflow.prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"creative-upload-workflow.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/creative-upload-workflow.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,4BAA4B,EAAE,MAgB1C,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAmJtF"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
export const creativeUploadWorkflowPrompt = {
|
|
2
|
+
name: "creative_upload_workflow",
|
|
3
|
+
description: "Step-by-step guide for uploading creative assets and creating Meta Ads creatives (images and videos)",
|
|
4
|
+
arguments: [
|
|
5
|
+
{
|
|
6
|
+
name: "adAccountId",
|
|
7
|
+
description: "Meta Ad Account ID (e.g., act_1234567890)",
|
|
8
|
+
required: true,
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: "creativeType",
|
|
12
|
+
description: "Type of creative to create: image or video",
|
|
13
|
+
required: false,
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
};
|
|
17
|
+
export function getCreativeUploadWorkflowMessage(args) {
|
|
18
|
+
const adAccountId = args?.adAccountId || "{adAccountId}";
|
|
19
|
+
const creativeType = args?.creativeType || "image";
|
|
20
|
+
return `# Meta Ads Creative Upload Workflow
|
|
21
|
+
|
|
22
|
+
## Prerequisites
|
|
23
|
+
- Ad Account ID: \`${adAccountId}\`
|
|
24
|
+
- A publicly accessible URL for your media file
|
|
25
|
+
|
|
26
|
+
## Overview
|
|
27
|
+
Meta Ads creative workflow: Upload media → Create Ad Creative → Attach to Ad
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Step 1: Upload ${creativeType === "video" ? "Video" : "Image"}
|
|
32
|
+
|
|
33
|
+
${creativeType === "video"
|
|
34
|
+
? `
|
|
35
|
+
\`\`\`json
|
|
36
|
+
meta_upload_video({
|
|
37
|
+
"adAccountId": "${adAccountId}",
|
|
38
|
+
"mediaUrl": "https://example.com/your-video.mp4",
|
|
39
|
+
"title": "Campaign Video Title"
|
|
40
|
+
})
|
|
41
|
+
\`\`\`
|
|
42
|
+
|
|
43
|
+
⚠️ **GOTCHA**: Video processing can take 1-5 minutes. The tool polls automatically and returns when ready (status: "ready"). If status is "processing", wait and retry.
|
|
44
|
+
|
|
45
|
+
**Video requirements:**
|
|
46
|
+
- Formats: MP4, MOV (H.264 recommended)
|
|
47
|
+
- Buffered proxy upload limit applies; use moderate-size assets and chunked workflows for very large videos
|
|
48
|
+
- Min resolution 120x120px
|
|
49
|
+
- Feed ads: up to 240 min duration
|
|
50
|
+
`
|
|
51
|
+
: `
|
|
52
|
+
\`\`\`json
|
|
53
|
+
meta_upload_image({
|
|
54
|
+
"adAccountId": "${adAccountId}",
|
|
55
|
+
"mediaUrl": "https://example.com/your-banner.jpg",
|
|
56
|
+
"name": "Campaign Banner"
|
|
57
|
+
})
|
|
58
|
+
\`\`\`
|
|
59
|
+
|
|
60
|
+
**Returns:** \`imageHash\` — save this for Step 2.
|
|
61
|
+
|
|
62
|
+
**Image requirements:**
|
|
63
|
+
- Formats: JPEG, PNG, GIF
|
|
64
|
+
- Max 30MB
|
|
65
|
+
- Recommended: 1200x628px (1.91:1 ratio) for link ads
|
|
66
|
+
- Square 1080x1080px for Stories/Reels
|
|
67
|
+
`}
|
|
68
|
+
|
|
69
|
+
## Step 2: Create Ad Creative
|
|
70
|
+
|
|
71
|
+
${creativeType === "video"
|
|
72
|
+
? `
|
|
73
|
+
\`\`\`json
|
|
74
|
+
meta_create_entity({
|
|
75
|
+
"entityType": "adCreative",
|
|
76
|
+
"adAccountId": "${adAccountId}",
|
|
77
|
+
"data": {
|
|
78
|
+
"name": "Video Creative - Campaign Name",
|
|
79
|
+
"object_story_spec": {
|
|
80
|
+
"page_id": "{your_page_id}",
|
|
81
|
+
"video_data": {
|
|
82
|
+
"video_id": "{videoId_from_step_1}",
|
|
83
|
+
"message": "Your ad copy here",
|
|
84
|
+
"call_to_action": {
|
|
85
|
+
"type": "LEARN_MORE",
|
|
86
|
+
"value": { "link": "https://yoursite.com" }
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
})
|
|
92
|
+
\`\`\`
|
|
93
|
+
`
|
|
94
|
+
: `
|
|
95
|
+
\`\`\`json
|
|
96
|
+
meta_create_entity({
|
|
97
|
+
"entityType": "adCreative",
|
|
98
|
+
"adAccountId": "${adAccountId}",
|
|
99
|
+
"data": {
|
|
100
|
+
"name": "Image Creative - Campaign Name",
|
|
101
|
+
"object_story_spec": {
|
|
102
|
+
"page_id": "{your_page_id}",
|
|
103
|
+
"link_data": {
|
|
104
|
+
"image_hash": "{imageHash_from_step_1}",
|
|
105
|
+
"link": "https://yoursite.com",
|
|
106
|
+
"message": "Your ad copy here",
|
|
107
|
+
"call_to_action": {
|
|
108
|
+
"type": "LEARN_MORE",
|
|
109
|
+
"value": { "link": "https://yoursite.com" }
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
})
|
|
115
|
+
\`\`\`
|
|
116
|
+
`}
|
|
117
|
+
|
|
118
|
+
⚠️ **GOTCHA**: You must own a Facebook Page to create ads. Get page_id by calling Meta's Page API or checking your Business Manager.
|
|
119
|
+
|
|
120
|
+
## Step 3: Preview Creative
|
|
121
|
+
|
|
122
|
+
\`\`\`json
|
|
123
|
+
meta_get_ad_preview({
|
|
124
|
+
"adId": "{ad_id}"
|
|
125
|
+
})
|
|
126
|
+
\`\`\`
|
|
127
|
+
|
|
128
|
+
## Step 4: Create Ad with Creative
|
|
129
|
+
|
|
130
|
+
\`\`\`json
|
|
131
|
+
meta_create_entity({
|
|
132
|
+
"entityType": "ad",
|
|
133
|
+
"adAccountId": "${adAccountId}",
|
|
134
|
+
"data": {
|
|
135
|
+
"adset_id": "{your_adset_id}",
|
|
136
|
+
"creative": { "creative_id": "{creativeId_from_step_2}" },
|
|
137
|
+
"status": "PAUSED",
|
|
138
|
+
"name": "Your Ad Name"
|
|
139
|
+
}
|
|
140
|
+
})
|
|
141
|
+
\`\`\`
|
|
142
|
+
|
|
143
|
+
## Common Errors
|
|
144
|
+
|
|
145
|
+
| Error | Cause | Fix |
|
|
146
|
+
|-------|-------|-----|
|
|
147
|
+
| "Invalid image" | Wrong format or dimensions | Use JPEG/PNG, check dimensions |
|
|
148
|
+
| "Video processing failed" | Codec issue | Re-encode to H.264 MP4 |
|
|
149
|
+
| "Page required" | No Facebook Page | Create/connect a Page in Business Manager |
|
|
150
|
+
| "Creative rejected" | Policy violation | Review Meta ad policies |
|
|
151
|
+
|
|
152
|
+
## Success Criteria
|
|
153
|
+
- [ ] Media uploaded (imageHash or videoId obtained)
|
|
154
|
+
- [ ] Ad Creative created (creativeId obtained)
|
|
155
|
+
- [ ] Ad created with creative in PAUSED status
|
|
156
|
+
- [ ] Preview reviewed before activating
|
|
157
|
+
|
|
158
|
+
`;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=creative-upload-workflow.prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"creative-upload-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/creative-upload-workflow.prompt.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,4BAA4B,GAAW;IAClD,IAAI,EAAE,0BAA0B;IAChC,WAAW,EACT,sGAAsG;IACxG,SAAS,EAAE;QACT;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,2CAA2C;YACxD,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,KAAK;SAChB;KACF;CACF,CAAC;AAEF,MAAM,UAAU,gCAAgC,CAAC,IAA6B;IAC5E,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,eAAe,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,OAAO,CAAC;IAEnD,OAAO;;;qBAGY,WAAW;;;;;;;;oBAQZ,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;;EAG9D,YAAY,KAAK,OAAO;QACtB,CAAC,CAAC;;;oBAGc,WAAW;;;;;;;;;;;;;CAa9B;QACG,CAAC,CAAC;;;oBAGc,WAAW;;;;;;;;;;;;;CAc/B;;;;EAKE,YAAY,KAAK,OAAO;QACtB,CAAC,CAAC;;;;oBAIc,WAAW;;;;;;;;;;;;;;;;;CAiB9B;QACG,CAAC,CAAC;;;;oBAIc,WAAW;;;;;;;;;;;;;;;;;;CAmB/B;;;;;;;;;;;;;;;;;oBAiBoB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;CAyB9B,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
|
|
2
|
+
export declare const crossPlatformCampaignSetupPrompt: Prompt;
|
|
3
|
+
export declare function getCrossPlatformCampaignSetupMessage(args?: Record<string, string>): string;
|
|
4
|
+
//# sourceMappingURL=cross-platform-campaign-setup.prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-platform-campaign-setup.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAQjE,eAAO,MAAM,gCAAgC,EAAE,MAiB9C,CAAC;AAEF,wBAAgB,oCAAoC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CA0R1F"}
|