@adcp/client 4.23.0 → 4.24.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.
Files changed (120) hide show
  1. package/README.md +23 -9
  2. package/bin/adcp.js +83 -18
  3. package/dist/lib/index.d.ts +2 -4
  4. package/dist/lib/index.d.ts.map +1 -1
  5. package/dist/lib/index.js +16 -12
  6. package/dist/lib/index.js.map +1 -1
  7. package/dist/lib/server/index.d.ts +5 -1
  8. package/dist/lib/server/index.d.ts.map +1 -1
  9. package/dist/lib/server/index.js +10 -1
  10. package/dist/lib/server/index.js.map +1 -1
  11. package/dist/lib/server/postgres-task-store.d.ts +105 -0
  12. package/dist/lib/server/postgres-task-store.d.ts.map +1 -0
  13. package/dist/lib/server/postgres-task-store.js +267 -0
  14. package/dist/lib/server/postgres-task-store.js.map +1 -0
  15. package/dist/lib/server/responses.d.ts +1 -0
  16. package/dist/lib/server/responses.d.ts.map +1 -1
  17. package/dist/lib/server/responses.js +1 -0
  18. package/dist/lib/server/responses.js.map +1 -1
  19. package/dist/lib/server/test-controller.d.ts +88 -0
  20. package/dist/lib/server/test-controller.d.ts.map +1 -0
  21. package/dist/lib/server/test-controller.js +227 -0
  22. package/dist/lib/server/test-controller.js.map +1 -0
  23. package/dist/lib/testing/agent-tester.d.ts +1 -1
  24. package/dist/lib/testing/agent-tester.d.ts.map +1 -1
  25. package/dist/lib/testing/agent-tester.js +13 -1
  26. package/dist/lib/testing/agent-tester.js.map +1 -1
  27. package/dist/lib/testing/compliance/comply.d.ts +2 -0
  28. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  29. package/dist/lib/testing/compliance/comply.js +76 -1
  30. package/dist/lib/testing/compliance/comply.js.map +1 -1
  31. package/dist/lib/testing/compliance/index.d.ts +1 -1
  32. package/dist/lib/testing/compliance/index.d.ts.map +1 -1
  33. package/dist/lib/testing/compliance/platform-storyboards.d.ts.map +1 -1
  34. package/dist/lib/testing/compliance/platform-storyboards.js +2 -0
  35. package/dist/lib/testing/compliance/platform-storyboards.js.map +1 -1
  36. package/dist/lib/testing/compliance/storyboard-tracks.d.ts.map +1 -1
  37. package/dist/lib/testing/compliance/storyboard-tracks.js +11 -2
  38. package/dist/lib/testing/compliance/storyboard-tracks.js.map +1 -1
  39. package/dist/lib/testing/compliance/types.d.ts +22 -1
  40. package/dist/lib/testing/compliance/types.d.ts.map +1 -1
  41. package/dist/lib/testing/orchestrator.d.ts.map +1 -1
  42. package/dist/lib/testing/orchestrator.js +5 -1
  43. package/dist/lib/testing/orchestrator.js.map +1 -1
  44. package/dist/lib/testing/scenarios/brand-rights.d.ts +19 -1
  45. package/dist/lib/testing/scenarios/brand-rights.d.ts.map +1 -1
  46. package/dist/lib/testing/scenarios/brand-rights.js +138 -1
  47. package/dist/lib/testing/scenarios/brand-rights.js.map +1 -1
  48. package/dist/lib/testing/scenarios/deterministic.js +7 -7
  49. package/dist/lib/testing/scenarios/deterministic.js.map +1 -1
  50. package/dist/lib/testing/scenarios/index.d.ts +1 -1
  51. package/dist/lib/testing/scenarios/index.d.ts.map +1 -1
  52. package/dist/lib/testing/scenarios/index.js +4 -2
  53. package/dist/lib/testing/scenarios/index.js.map +1 -1
  54. package/dist/lib/testing/scenarios/media-buy.js +4 -4
  55. package/dist/lib/testing/scenarios/media-buy.js.map +1 -1
  56. package/dist/lib/testing/storyboard/loader.d.ts +1 -0
  57. package/dist/lib/testing/storyboard/loader.d.ts.map +1 -1
  58. package/dist/lib/testing/storyboard/loader.js +14 -0
  59. package/dist/lib/testing/storyboard/loader.js.map +1 -1
  60. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
  61. package/dist/lib/testing/storyboard/request-builder.js +88 -11
  62. package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
  63. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  64. package/dist/lib/testing/storyboard/runner.js +83 -5
  65. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  66. package/dist/lib/testing/storyboard/task-map.d.ts +2 -0
  67. package/dist/lib/testing/storyboard/task-map.d.ts.map +1 -1
  68. package/dist/lib/testing/storyboard/task-map.js +23 -9
  69. package/dist/lib/testing/storyboard/task-map.js.map +1 -1
  70. package/dist/lib/testing/storyboard/types.d.ts +6 -2
  71. package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
  72. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -1
  73. package/dist/lib/testing/storyboard/validations.js +21 -4
  74. package/dist/lib/testing/storyboard/validations.js.map +1 -1
  75. package/dist/lib/testing/types.d.ts +1 -1
  76. package/dist/lib/testing/types.d.ts.map +1 -1
  77. package/dist/lib/types/core.generated.d.ts +1 -1
  78. package/dist/lib/types/core.generated.d.ts.map +1 -1
  79. package/dist/lib/types/core.generated.js +1 -1
  80. package/dist/lib/types/schemas.generated.d.ts +16 -13
  81. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  82. package/dist/lib/types/schemas.generated.js +7 -4
  83. package/dist/lib/types/schemas.generated.js.map +1 -1
  84. package/dist/lib/types/tools.generated.d.ts +14 -5
  85. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  86. package/dist/lib/utils/capabilities.d.ts +2 -2
  87. package/dist/lib/utils/capabilities.d.ts.map +1 -1
  88. package/dist/lib/utils/capabilities.js +9 -3
  89. package/dist/lib/utils/capabilities.js.map +1 -1
  90. package/dist/lib/utils/response-schemas.d.ts.map +1 -1
  91. package/dist/lib/utils/response-schemas.js +9 -0
  92. package/dist/lib/utils/response-schemas.js.map +1 -1
  93. package/docs/llms.txt +10 -2
  94. package/package.json +8 -2
  95. package/skills/adcp/SKILL.md +118 -33
  96. package/skills/build-creative-agent/SKILL.md +221 -0
  97. package/skills/build-generative-seller-agent/SKILL.md +288 -0
  98. package/skills/build-retail-media-agent/SKILL.md +237 -0
  99. package/skills/build-seller-agent/SKILL.md +313 -0
  100. package/skills/build-signals-agent/SKILL.md +203 -0
  101. package/storyboards/campaign_governance_conditions.yaml +2 -2
  102. package/storyboards/campaign_governance_delivery.yaml +1 -1
  103. package/storyboards/campaign_governance_denied.yaml +1 -0
  104. package/storyboards/creative_generative.yaml +317 -0
  105. package/storyboards/creative_sales_agent.yaml +2 -2
  106. package/storyboards/creative_template.yaml +2 -1
  107. package/storyboards/deterministic_testing.yaml +271 -245
  108. package/storyboards/media_buy_catalog_creative.yaml +2 -1
  109. package/storyboards/media_buy_generative_seller.yaml +581 -0
  110. package/storyboards/media_buy_governance_escalation.yaml +1 -1
  111. package/storyboards/media_buy_guaranteed_approval.yaml +14 -14
  112. package/storyboards/media_buy_non_guaranteed.yaml +2 -2
  113. package/storyboards/media_buy_proposal_mode.yaml +5 -5
  114. package/storyboards/media_buy_seller.yaml +10 -10
  115. package/storyboards/media_buy_state_machine.yaml +4 -4
  116. package/storyboards/schema.yaml +2 -1
  117. package/storyboards/signal_marketplace.yaml +3 -0
  118. package/storyboards/signal_owned.yaml +1 -0
  119. package/storyboards/test-kits/acme-outdoor.yaml +118 -0
  120. package/storyboards/test-kits/nova-motors.yaml +134 -0
@@ -12,7 +12,7 @@ export type AdcpMajorVersion = 2 | 3;
12
12
  /**
13
13
  * Supported AdCP protocols/domains
14
14
  */
15
- export type AdcpProtocol = 'media_buy' | 'signals' | 'governance' | 'creative' | 'sponsored_intelligence' | 'trusted_match' | 'compliance' | 'brand';
15
+ export type AdcpProtocol = 'media_buy' | 'signals' | 'governance' | 'creative' | 'sponsored_intelligence' | 'trusted_match' | 'compliance_testing' | 'brand';
16
16
  /**
17
17
  * Media buy features available on the agent
18
18
  */
@@ -129,7 +129,7 @@ export declare const CREATIVE_TOOLS: readonly ["build_creative", "list_creative_
129
129
  export declare const SPONSORED_INTELLIGENCE_TOOLS: readonly ["si_get_offering", "si_initiate_session", "si_send_message", "si_terminate_session"];
130
130
  export declare const TRUSTED_MATCH_TOOLS: readonly ["context_match", "identity_match"];
131
131
  export declare const COMPLIANCE_TOOLS: readonly ["comply_test_controller"];
132
- export declare const BRAND_RIGHTS_TOOLS: readonly ["get_brand_identity", "get_rights", "acquire_rights"];
132
+ export declare const BRAND_RIGHTS_TOOLS: readonly ["get_brand_identity", "get_rights", "acquire_rights", "update_rights", "creative_approval"];
133
133
  export declare const EVENT_TRACKING_TOOLS: readonly ["sync_event_sources", "log_event"];
134
134
  export declare const ACCOUNT_TOOLS: readonly ["list_accounts", "sync_accounts"];
135
135
  export declare const PROTOCOL_TOOLS: readonly ["get_adcp_capabilities"];
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/capabilities.ts"],"names":[],"mappings":"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"}
@@ -89,7 +89,13 @@ exports.SPONSORED_INTELLIGENCE_TOOLS = [
89
89
  ];
90
90
  exports.TRUSTED_MATCH_TOOLS = ['context_match', 'identity_match'];
91
91
  exports.COMPLIANCE_TOOLS = ['comply_test_controller'];
92
- exports.BRAND_RIGHTS_TOOLS = ['get_brand_identity', 'get_rights', 'acquire_rights'];
92
+ exports.BRAND_RIGHTS_TOOLS = [
93
+ 'get_brand_identity',
94
+ 'get_rights',
95
+ 'acquire_rights',
96
+ 'update_rights',
97
+ 'creative_approval',
98
+ ];
93
99
  exports.EVENT_TRACKING_TOOLS = ['sync_event_sources', 'log_event'];
94
100
  exports.ACCOUNT_TOOLS = ['list_accounts', 'sync_accounts'];
95
101
  exports.PROTOCOL_TOOLS = ['get_adcp_capabilities'];
@@ -127,7 +133,7 @@ function buildSyntheticCapabilities(tools) {
127
133
  }
128
134
  const hasComplianceTools = exports.COMPLIANCE_TOOLS.some(t => toolNames.has(t));
129
135
  if (hasComplianceTools) {
130
- protocols.push('compliance');
136
+ protocols.push('compliance_testing');
131
137
  }
132
138
  const hasBrandRightsTools = exports.BRAND_RIGHTS_TOOLS.some(t => toolNames.has(t));
133
139
  if (hasBrandRightsTools) {
@@ -304,7 +310,7 @@ exports.TASK_FEATURE_MAP = {
304
310
  context_match: ['trusted_match'],
305
311
  identity_match: ['trusted_match'],
306
312
  // Compliance protocol
307
- comply_test_controller: ['compliance'],
313
+ comply_test_controller: ['compliance_testing'],
308
314
  // Brand rights protocol
309
315
  get_brand_identity: ['brand'],
310
316
  get_rights: ['brand'],
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/lib/utils/capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../../src/lib/utils/capabilities.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"response-schemas.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/response-schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAuDpE,CAAC"}
1
+ {"version":3,"file":"response-schemas.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/response-schemas.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAkEpE,CAAC"}
@@ -64,6 +64,15 @@ exports.TOOL_RESPONSE_SCHEMAS = {
64
64
  list_accounts: schemas.ListAccountsResponseSchema,
65
65
  sync_governance: schemas.SyncGovernanceResponseSchema,
66
66
  sync_audiences: schemas.SyncAudiencesResponseSchema,
67
+ report_usage: schemas.ReportUsageResponseSchema,
68
+ get_account_financials: schemas.GetAccountFinancialsResponseSchema,
69
+ // Catalogs & events
70
+ sync_catalogs: schemas.SyncCatalogsResponseSchema,
71
+ sync_event_sources: schemas.SyncEventSourcesResponseSchema,
72
+ log_event: schemas.LogEventResponseSchema,
73
+ get_media_buy_artifacts: schemas.GetMediaBuyArtifactsResponseSchema,
74
+ // Creative (additional)
75
+ get_creative_features: schemas.GetCreativeFeaturesResponseSchema,
67
76
  // Governance — property lists & content standards
68
77
  create_property_list: schemas.CreatePropertyListResponseSchema,
69
78
  get_property_list: schemas.GetPropertyListResponseSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"response-schemas.js","sourceRoot":"","sources":["../../../src/lib/utils/response-schemas.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,oEAAsD;AAEzC,QAAA,qBAAqB,GAAuC;IACvE,gCAAgC;IAChC,YAAY,EAAE,OAAO,CAAC,yBAAyB;IAC/C,gBAAgB,EAAE,OAAO,CAAC,4BAA4B;IACtD,gBAAgB,EAAE,OAAO,CAAC,4BAA4B;IACtD,cAAc,EAAE,OAAO,CAAC,0BAA0B;IAClD,sBAAsB,EAAE,OAAO,CAAC,iCAAiC;IACjE,4BAA4B,EAAE,OAAO,CAAC,wCAAwC;IAE9E,WAAW;IACX,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAChE,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,gBAAgB,EAAE,OAAO,CAAC,6BAA6B;IACvD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAEhE,UAAU;IACV,WAAW,EAAE,OAAO,CAAC,wBAAwB;IAC7C,eAAe,EAAE,OAAO,CAAC,4BAA4B;IAErD,qBAAqB;IACrB,aAAa,EAAE,OAAO,CAAC,0BAA0B;IACjD,aAAa,EAAE,OAAO,CAAC,0BAA0B;IACjD,eAAe,EAAE,OAAO,CAAC,4BAA4B;IACrD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IAEnD,kDAAkD;IAClD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,iBAAiB,EAAE,OAAO,CAAC,6BAA6B;IACxD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,sBAAsB,EAAE,OAAO,CAAC,kCAAkC;IAClE,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAChE,iBAAiB,EAAE,OAAO,CAAC,8BAA8B;IACzD,yBAAyB,EAAE,OAAO,CAAC,qCAAqC;IAExE,sBAAsB;IACtB,UAAU,EAAE,OAAO,CAAC,uBAAuB;IAC3C,gBAAgB,EAAE,OAAO,CAAC,6BAA6B;IACvD,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,mBAAmB,EAAE,OAAO,CAAC,8BAA8B;IAE3D,yBAAyB;IACzB,eAAe,EAAE,OAAO,CAAC,2BAA2B;IACpD,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,eAAe,EAAE,OAAO,CAAC,2BAA2B;IACpD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAE9D,eAAe;IACf,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAEhE,kBAAkB;IAClB,sBAAsB,EAAE,OAAO,CAAC,kCAAkC;CACnE,CAAC"}
1
+ {"version":3,"file":"response-schemas.js","sourceRoot":"","sources":["../../../src/lib/utils/response-schemas.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGH,oEAAsD;AAEzC,QAAA,qBAAqB,GAAuC;IACvE,gCAAgC;IAChC,YAAY,EAAE,OAAO,CAAC,yBAAyB;IAC/C,gBAAgB,EAAE,OAAO,CAAC,4BAA4B;IACtD,gBAAgB,EAAE,OAAO,CAAC,4BAA4B;IACtD,cAAc,EAAE,OAAO,CAAC,0BAA0B;IAClD,sBAAsB,EAAE,OAAO,CAAC,iCAAiC;IACjE,4BAA4B,EAAE,OAAO,CAAC,wCAAwC;IAE9E,WAAW;IACX,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAChE,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,gBAAgB,EAAE,OAAO,CAAC,6BAA6B;IACvD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAEhE,UAAU;IACV,WAAW,EAAE,OAAO,CAAC,wBAAwB;IAC7C,eAAe,EAAE,OAAO,CAAC,4BAA4B;IAErD,qBAAqB;IACrB,aAAa,EAAE,OAAO,CAAC,0BAA0B;IACjD,aAAa,EAAE,OAAO,CAAC,0BAA0B;IACjD,eAAe,EAAE,OAAO,CAAC,4BAA4B;IACrD,cAAc,EAAE,OAAO,CAAC,2BAA2B;IACnD,YAAY,EAAE,OAAO,CAAC,yBAAyB;IAC/C,sBAAsB,EAAE,OAAO,CAAC,kCAAkC;IAElE,oBAAoB;IACpB,aAAa,EAAE,OAAO,CAAC,0BAA0B;IACjD,kBAAkB,EAAE,OAAO,CAAC,8BAA8B;IAC1D,SAAS,EAAE,OAAO,CAAC,sBAAsB;IACzC,uBAAuB,EAAE,OAAO,CAAC,kCAAkC;IAEnE,wBAAwB;IACxB,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAEhE,kDAAkD;IAClD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,iBAAiB,EAAE,OAAO,CAAC,6BAA6B;IACxD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAC9D,sBAAsB,EAAE,OAAO,CAAC,kCAAkC;IAClE,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAChE,iBAAiB,EAAE,OAAO,CAAC,8BAA8B;IACzD,yBAAyB,EAAE,OAAO,CAAC,qCAAqC;IAExE,sBAAsB;IACtB,UAAU,EAAE,OAAO,CAAC,uBAAuB;IAC3C,gBAAgB,EAAE,OAAO,CAAC,6BAA6B;IACvD,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,mBAAmB,EAAE,OAAO,CAAC,8BAA8B;IAE3D,yBAAyB;IACzB,eAAe,EAAE,OAAO,CAAC,2BAA2B;IACpD,mBAAmB,EAAE,OAAO,CAAC,+BAA+B;IAC5D,eAAe,EAAE,OAAO,CAAC,2BAA2B;IACpD,oBAAoB,EAAE,OAAO,CAAC,gCAAgC;IAE9D,eAAe;IACf,qBAAqB,EAAE,OAAO,CAAC,iCAAiC;IAEhE,kBAAkB;IAClB,sBAAsB,EAAE,OAAO,CAAC,kCAAkC;CACnE,CAAC"}
package/docs/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # Ad Context Protocol (AdCP)
2
2
 
3
- > Generated at: 2026-04-08
3
+ > Generated at: 2026-04-10
4
4
  > Library: @adcp/client v4.22.1
5
5
  > AdCP major version: 3
6
6
  > Canonical URL: https://adcontextprotocol.github.io/adcp-client/llms.txt
@@ -436,7 +436,7 @@ Flow: `get_brand_identity → get_rights → acquire_rights → update_rights
436
436
  Flow: `get_adcp_capabilities`
437
437
 
438
438
  **Deterministic testing** — Uses comply_test_controller to force state transitions and simulate delivery/budget, verifying state machines and reporting.
439
- Flow: `comply_test_controller → list_accounts → comply_test_controller → create_media_buy → comply_test_controller → get_media_buys → comply_test_controller → sync_creatives → comply_test_controller → si_initiate_session → comply_test_controller → si_send_message → create_media_buy → comply_test_controller → get_media_buy_delivery → create_media_buy → comply_test_controller`
439
+ Flow: `comply_test_controller → sync_accounts → list_accounts → comply_test_controller → create_media_buy → comply_test_controller → get_media_buys → comply_test_controller → sync_creatives → comply_test_controller → si_initiate_session → comply_test_controller → si_send_message → create_media_buy → comply_test_controller → get_media_buy_delivery → create_media_buy → comply_test_controller`
440
440
 
441
441
  ### Campaign Governance
442
442
 
@@ -474,6 +474,11 @@ Flow: `list_creative_formats → sync_creatives → preview_creative`
474
474
  **Creative template and transformation agent** — Stateless creative agent that takes assets in, applies templates, and produces tags or rendered output.
475
475
  Flow: `list_creative_formats → preview_creative → build_creative`
476
476
 
477
+ ###
478
+
479
+ **Generative creative agent** — Agent that takes a brief and generates finished creatives from scratch — no input assets required.
480
+ Flow: `list_creative_formats → build_creative`
481
+
477
482
  ### Error Handling
478
483
 
479
484
  **Error handling and compliance** — Validates that agents return properly structured AdCP errors with correct codes, recovery hints, and transport bindings.
@@ -484,6 +489,9 @@ Flow: `create_media_buy → get_products → create_media_buy`
484
489
  **Catalog-driven creative and conversion tracking** — Seller that renders dynamic ads from product catalogs, tracks conversions, and optimizes delivery based on performance feedback.
485
490
  Flow: `sync_accounts → list_creative_formats → sync_catalogs → get_products → create_media_buy → sync_event_sources → log_event → provide_performance_feedback → get_media_buy_delivery`
486
491
 
492
+ **Generative seller agent** — Seller agent that generates creatives from briefs at buy time — no pre-built assets required.
493
+ Flow: `sync_accounts → list_creative_formats → get_products → create_media_buy → sync_creatives → get_media_buy_delivery`
494
+
487
495
  **Guaranteed media buy with human IO approval** — Seller agent that requires human-in-the-loop IO signing before guaranteed media buys go live.
488
496
  Flow: `sync_accounts → get_products → create_media_buy → get_media_buys → sync_creatives → get_media_buy_delivery`
489
497
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adcp/client",
3
- "version": "4.23.0",
3
+ "version": "4.24.0",
4
4
  "description": "AdCP client library with protocol support for MCP and A2A",
5
5
  "main": "dist/lib/index.js",
6
6
  "types": "dist/lib/index.d.ts",
@@ -142,11 +142,15 @@
142
142
  "peerDependencies": {
143
143
  "@a2a-js/sdk": "^0.3.4",
144
144
  "@modelcontextprotocol/sdk": "^1.17.5",
145
- "@opentelemetry/api": "^1.0.0"
145
+ "@opentelemetry/api": "^1.0.0",
146
+ "pg": "^8.0.0"
146
147
  },
147
148
  "peerDependenciesMeta": {
148
149
  "@opentelemetry/api": {
149
150
  "optional": true
151
+ },
152
+ "pg": {
153
+ "optional": true
150
154
  }
151
155
  },
152
156
  "devDependencies": {
@@ -157,10 +161,12 @@
157
161
  "@modelcontextprotocol/sdk": "^1.29.0",
158
162
  "@opentelemetry/api": "^1.9.0",
159
163
  "@types/node": "^20.19.13",
164
+ "@types/pg": "^8.20.0",
160
165
  "eslint": "^10.0.3",
161
166
  "json-schema-to-typescript": "^15.0.4",
162
167
  "json-schema-to-zod": "^2.6.1",
163
168
  "openapi-typescript": "^7.13.0",
169
+ "pg": "^8.20.0",
164
170
  "prettier": "^3.6.2",
165
171
  "ts-to-zod": "^5.0.1",
166
172
  "tsx": "^4.6.0",
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: adcp
3
3
  description: Interact with AdCP (Ad Context Protocol) advertising agents over MCP or A2A protocols. Use when the user wants to call AdCP tools (get_products, create_media_buy, sync_creatives, etc.), discover an agent's capabilities, run protocol compliance tests, look up brands or properties in the AdCP registry, manage saved agent aliases, or debug agent responses. NOT for general HTTP/REST API calls. Requires @adcp/client (npm).
4
- argument-hint: "<agent> [tool] [payload] | test <agent> [scenario] | registry <command>"
4
+ argument-hint: "<agent> [tool] [payload] | comply <agent> | storyboard <cmd> | test <agent> [scenario] | registry <command>"
5
5
  allowed-tools: Bash, Read
6
6
  ---
7
7
 
@@ -71,50 +71,133 @@ adcp https://agent.example.com get_products '{}' --protocol mcp
71
71
  adcp https://agent.example.com get_products '{}' --protocol a2a
72
72
  ```
73
73
 
74
- ## Test runner
74
+ ## Testing: comply vs storyboard vs test
75
75
 
76
- Run protocol compliance tests against any AdCP agent. 24 built-in scenarios.
76
+ Three testing commands, each for a different purpose:
77
+
78
+ - **`comply`** — Full compliance assessment. "Does my agent work?" Runs all applicable storyboards, reports by track.
79
+ - **`storyboard`** — Debug a specific flow step by step. Stateless, context-in/context-out.
80
+ - **`test`** — Individual legacy scenarios. Use `comply` for new work.
81
+
82
+ ## Compliance assessment (comply)
83
+
84
+ The primary way to test an AdCP agent. Runs storyboard-driven assessments grouped by capability track.
85
+
86
+ ```bash
87
+ adcp comply <agent> [options]
88
+ ```
89
+
90
+ ### Recommended workflow
91
+
92
+ 1. Run full compliance to see the big picture:
93
+ ```bash
94
+ adcp comply my-agent --json
95
+ ```
96
+
97
+ 2. Parse the `failures` array for actionable items — each failure includes `storyboard_id`, `step_id`, and a `fix_command` you can run directly.
98
+
99
+ 3. Debug specific failures with storyboard step:
100
+ ```bash
101
+ adcp storyboard step my-agent media_buy_seller sync_accounts --json
102
+ ```
103
+
104
+ 4. Fix and re-run. Use `--storyboards` to re-test only the relevant storyboard:
105
+ ```bash
106
+ adcp comply my-agent --storyboards media_buy_seller --json
107
+ ```
108
+
109
+ ### Filtering options (resolution priority)
110
+
111
+ | Flag | When to use | Example |
112
+ |------|-------------|---------|
113
+ | `--storyboards IDS` | You know exactly which storyboards to run | `--storyboards media_buy_seller,error_compliance` |
114
+ | `--platform-type TYPE` | You know your platform type and want curated tests + coherence checking | `--platform-type retail_media` |
115
+ | `--tracks TRACKS` | You want to test specific capability areas | `--tracks media_buy,products` |
116
+ | _(none)_ | Run everything applicable to your agent's tools | `adcp comply my-agent` |
117
+
118
+ When `--platform-type` and `--tracks` are both set, `--tracks` controls which storyboards run, and `--platform-type` adds coherence checking.
119
+
120
+ ### Options
121
+ - `--json` — Structured JSON output (recommended for agents)
122
+ - `--platform-type TYPE` — Declare platform type for curated storyboards + coherence
123
+ - `--storyboards IDS` — Comma-separated storyboard IDs (highest priority)
124
+ - `--tracks TRACKS` — Comma-separated tracks to test
125
+ - `--list-platform-types` — Show available platform types
126
+ - `--debug` — Verbose logging
127
+ - `--no-dry-run` — Execute real operations (default is dry-run)
128
+
129
+ ### JSON output structure
130
+
131
+ The `--json` output includes a `failures` array for quick iteration:
132
+ ```json
133
+ {
134
+ "overall_status": "partial",
135
+ "storyboards_executed": ["capability_discovery", "media_buy_seller"],
136
+ "failures": [
137
+ {
138
+ "track": "media_buy",
139
+ "storyboard_id": "media_buy_seller",
140
+ "step_id": "sync_accounts",
141
+ "step_title": "Establish account relationship",
142
+ "error": "Unknown tool: sync_accounts",
143
+ "expected": "Return the account with account_id, status, ...",
144
+ "fix_command": "adcp storyboard step <agent> media_buy_seller sync_accounts --json"
145
+ }
146
+ ],
147
+ "summary": { "headline": "1 passing, 3 partial" },
148
+ "tracks": [ ... ]
149
+ }
150
+ ```
151
+
152
+ ## Storyboard testing
153
+
154
+ Explore and debug individual storyboard flows.
155
+
156
+ ```bash
157
+ adcp storyboard list [--platform-type TYPE] [--json] # List storyboards
158
+ adcp storyboard show <id> [--json] # Show structure and narratives
159
+ adcp storyboard run <agent> <id> [options] # Run full storyboard
160
+ adcp storyboard step <agent> <id> <step_id> [options] # Run single step
161
+ ```
162
+
163
+ ### Step-by-step debugging (agent-friendly)
164
+
165
+ Each step returns context and a preview of the next step:
166
+ ```bash
167
+ # Run step 1
168
+ adcp storyboard step my-agent media_buy_seller sync_accounts --json > step1.json
169
+
170
+ # Feed context to step 2
171
+ adcp storyboard step my-agent media_buy_seller get_products_brief \
172
+ --context @step1_context.json --json
173
+ ```
174
+
175
+ The `--context` flag accepts inline JSON or `@file.json` (read from file).
176
+
177
+ ### Step options
178
+ - `--context JSON` or `--context @file.json` — Pass state from previous steps
179
+ - `--request JSON` or `--request @file.json` — Override sample_request
180
+ - `--json` — Structured output
181
+
182
+ ## Legacy test runner
183
+
184
+ Individual scenario testing. 24 built-in scenarios.
77
185
 
78
186
  ```bash
79
187
  adcp test <agent> [scenario] [options]
80
- adcp test --list-scenarios
188
+ adcp test --list-scenarios # List all scenarios
81
189
  ```
82
190
 
83
- ### Scenarios (run `adcp test --list-scenarios` for all 24 with descriptions)
191
+ ### Common scenarios
84
192
  | Scenario | What it tests |
85
193
  |----------|---------------|
86
194
  | `health_check` | Basic connectivity |
87
- | `discovery` | get_products, list_creative_formats, list_authorized_properties |
88
- | `create_media_buy` | Discovery + create a media buy (dry-run by default) |
195
+ | `discovery` | get_products, list_creative_formats |
89
196
  | `full_sales_flow` | Full lifecycle: discovery, create, update, delivery |
90
- | `creative_sync` | Test sync_creatives flow |
91
- | `creative_inline` | Test inline creatives in create_media_buy |
92
- | `creative_flow` | Creative agent: list_formats, build, preview |
93
197
  | `signals_flow` | Signals: get_signals, activate |
94
- | `validation` | Schema validation (invalid inputs should be rejected) |
95
- | `error_handling` | Verify proper error responses |
96
- | `pricing_edge_cases` | Auction vs fixed pricing, min spend, bid_price |
97
- | `temporal_validation` | Date/time ordering and format validation |
98
- | `behavior_analysis` | Auth, brief relevance, filtering behavior |
99
- | `response_consistency` | Schema errors, pagination bugs, data mismatches |
100
198
  | `capability_discovery` | v3: get_adcp_capabilities |
101
- | `governance_property_lists` | v3: property list CRUD |
102
- | `governance_content_standards` | v3: content standards listing and calibration |
103
- | `si_session_lifecycle` | v3: structured interaction sessions |
104
- | `si_availability` | v3: SI offering availability check |
105
- | `campaign_governance` | v3: full governance lifecycle: sync_plans → check → execute → report |
106
- | `campaign_governance_denied` | v3: denied flow: over-budget, unauthorized market |
107
- | `campaign_governance_conditions` | v3: apply conditions → re-check |
108
- | `campaign_governance_delivery` | v3: delivery monitoring with drift detection |
109
- | `seller_governance_context` | v3: verify seller persists governance_context |
110
199
 
111
- ### Examples
112
- ```bash
113
- adcp test test-mcp discovery # Quick check
114
- adcp test test-mcp full_sales_flow --json # CI-friendly JSON output
115
- adcp test https://my-agent.com validation --protocol mcp
116
- adcp test my-alias create_media_buy --no-dry-run # Real operations (careful!)
117
- ```
200
+ Run `adcp test --list-scenarios` for all 24 with descriptions.
118
201
 
119
202
  ### Test options
120
203
  - `--json` — Machine-readable output for CI
@@ -210,7 +293,9 @@ If not installed, prefix all commands with `npx @adcp/client`. Requires Node.js
210
293
 
211
294
  - **"try AdCP" / "show me how it works" / no specific agent** — Use built-in `test-mcp`
212
295
  - **"what tools" / "discover" / "list tools"** — `adcp <agent>` with no tool name
213
- - **"test" / "run tests" / "compliance" / "validate agent"** — `adcp test <agent> [scenario]`
296
+ - **"test" / "compliance" / "validate agent" / "does my agent work"** — `adcp comply <agent> --json`
297
+ - **"debug a specific failure" / "why does this step fail"** — `adcp storyboard step <agent> <storyboard_id> <step_id> --json`
298
+ - **"run a specific scenario"** — `adcp test <agent> [scenario]` (legacy)
214
299
  - **"brand" / "property" / "registry" / "look up" / "validate domain"** — `adcp registry <command>`
215
300
  - **Specific tool name mentioned** — `adcp <agent> <tool> '<payload>'`
216
301
  - **"compare protocols"** — Run same call with `--protocol mcp` then `--protocol a2a`, diff results
@@ -0,0 +1,221 @@
1
+ ---
2
+ name: build-creative-agent
3
+ description: Use when building an AdCP creative agent — an ad server, creative management platform, or any system that accepts, stores, transforms, and serves ad creatives.
4
+ ---
5
+
6
+ # Build a Creative Agent
7
+
8
+ ## Overview
9
+
10
+ A creative agent manages the creative lifecycle: accepts assets from buyers, stores them in a library, builds serving tags, and renders previews. Unlike a generative seller (which also sells inventory), a creative agent is a standalone creative platform — it manages creatives but doesn't sell media.
11
+
12
+ ## When to Use
13
+
14
+ - User wants to build an ad server, creative management platform, or creative rendering service
15
+ - User mentions `build_creative`, `preview_creative`, `sync_creatives`, or `list_creatives`
16
+ - User references creative formats, VAST tags, serving tags, or creative libraries
17
+
18
+ **Not this skill:**
19
+ - Selling inventory + generating creatives → `skills/build-generative-seller-agent/`
20
+ - Selling inventory (no creative management) → `skills/build-seller-agent/`
21
+ - Serving audience segments → `skills/build-signals-agent/`
22
+
23
+ ## Before Writing Code
24
+
25
+ Determine these things. Ask the user — don't guess.
26
+
27
+ ### 1. What kind of creative platform?
28
+
29
+ - **Ad server** (Innovid, Flashtalking, CM360) — stateful library, builds serving tags (VAST, display tags), tracks delivery
30
+ - **Creative management platform** (Celtra) — format transformation, template rendering, asset management
31
+ - **Publisher creative service** — accepts buyer assets, validates against publisher specs, renders previews
32
+
33
+ ### 2. What formats?
34
+
35
+ Get specific formats the platform supports. Common ones:
36
+ - **Display**: `display_300x250`, `display_728x90`, `display_160x600`
37
+ - **Video**: `video_30s`, `vast_30s`, `video_15s`
38
+ - **Native**: `native_content` (image + headline + description)
39
+ - **Rich media**: `html5_300x250` (interactive HTML)
40
+
41
+ Each format needs: dimensions, accepted asset types (image, video, html, text), mime types.
42
+
43
+ ### 3. What operations?
44
+
45
+ - **Sync** — accept and store creatives from buyers (always needed)
46
+ - **List** — query the creative library with filtering (recommended)
47
+ - **Preview** — render a visual preview of a creative (recommended)
48
+ - **Build** — produce serving tags (VAST, display tags, etc.) from stored creatives (recommended)
49
+
50
+ ### 4. Review pipeline?
51
+
52
+ What happens when a creative is synced:
53
+ - **Instant accept** — creative passes validation, immediately available
54
+ - **Pending review** — human or automated review before going live
55
+ - **Rejection** — creative fails validation (wrong dimensions, prohibited content)
56
+
57
+ ## Tools and Required Response Shapes
58
+
59
+ **`get_adcp_capabilities`** — register first, empty `{}` schema
60
+ ```
61
+ capabilitiesResponse({
62
+ adcp: { major_versions: [3] },
63
+ supported_protocols: ['creative'],
64
+ })
65
+ ```
66
+
67
+ **`list_creative_formats`** — `ListCreativeFormatsRequestSchema.shape`
68
+ ```
69
+ taskToolResponse({
70
+ formats: [{
71
+ format_id: { agent_url: string, id: string }, // required
72
+ name: string, // required
73
+ description: string,
74
+ renders: [{ width: number, height: number }], // output dimensions
75
+ assets: [{ // what the format accepts
76
+ item_type: 'individual',
77
+ asset_id: string,
78
+ asset_type: 'image' | 'video' | 'html' | 'text',
79
+ required: boolean,
80
+ accepted_media_types: string[], // e.g., ['image/png', 'image/jpeg']
81
+ }],
82
+ }],
83
+ })
84
+ ```
85
+
86
+ **`sync_creatives`** — `SyncCreativesRequestSchema.shape`
87
+
88
+ Store creatives in the library. Echo back creative_id and action.
89
+ ```
90
+ taskToolResponse({
91
+ creatives: [{
92
+ creative_id: string, // required — echo from request
93
+ action: 'created' | 'updated', // required
94
+ status: 'accepted' | 'pending_review' | 'rejected',
95
+ }],
96
+ })
97
+ ```
98
+
99
+ **`list_creatives`** — `ListCreativesRequestSchema.shape`
100
+
101
+ Return creatives from the library. Support filtering by format_id.
102
+ ```
103
+ taskToolResponse({
104
+ creatives: [{
105
+ creative_id: string,
106
+ name: string,
107
+ format_id: { agent_url: string, id: string },
108
+ status: 'accepted' | 'pending_review' | 'rejected',
109
+ }],
110
+ })
111
+ ```
112
+
113
+ The handler should check `args.filters?.format_ids` — if present, return only creatives matching those formats.
114
+
115
+ **`preview_creative`** — `PreviewCreativeRequestSchema.shape`
116
+
117
+ Render a preview of a stored creative. Each preview has a `renders` array with output_format discriminator.
118
+ ```
119
+ taskToolResponse({
120
+ response_type: 'single',
121
+ previews: [{
122
+ preview_id: string,
123
+ input: { format_id: { agent_url: string, id: string }, name: string, assets: {} },
124
+ renders: [{
125
+ render_id: string,
126
+ output_format: 'url', // discriminator: 'url' or 'html'
127
+ preview_url: string, // URL to rendered preview (for output_format: 'url')
128
+ role: 'primary',
129
+ dimensions: { width: number, height: number },
130
+ }],
131
+ }],
132
+ expires_at: string, // ISO timestamp
133
+ })
134
+ ```
135
+
136
+ **`build_creative`** — `BuildCreativeRequestSchema.shape`
137
+
138
+ Produce a serving tag from a stored creative.
139
+ ```
140
+ taskToolResponse({
141
+ creative_manifest: {
142
+ format_id: { agent_url: string, id: string },
143
+ name: string,
144
+ assets: {}, // built output assets
145
+ },
146
+ sandbox: true,
147
+ })
148
+ ```
149
+
150
+ ## SDK Quick Reference
151
+
152
+ | SDK piece | Usage |
153
+ |-----------|-------|
154
+ | `serve(createAgent)` | Start HTTP server on `:3001/mcp` |
155
+ | `createTaskCapableServer(name, version, { taskStore })` | Create MCP server with task support |
156
+ | `server.tool(name, Schema.shape, handler)` | Register tool — `.shape` unwraps Zod |
157
+ | `capabilitiesResponse(data)` | Build `get_adcp_capabilities` response |
158
+ | `taskToolResponse(data, summary)` | Build generic tool response |
159
+ | `adcpError(code, { message })` | Structured error |
160
+
161
+ Schemas: `ListCreativeFormatsRequestSchema`, `SyncCreativesRequestSchema`, `ListCreativesRequestSchema`, `PreviewCreativeRequestSchema`, `BuildCreativeRequestSchema`.
162
+
163
+ Import everything from `@adcp/client`. Types from `@adcp/client` with `import type`.
164
+
165
+ ## Implementation
166
+
167
+ 1. Single `.ts` file — all tools in one file
168
+ 2. Always register `get_adcp_capabilities` as the **first** tool with empty `{}` schema
169
+ 3. Use `Schema.shape` (not `Schema`) when registering tools
170
+ 4. Use an in-memory Map to store synced creatives (the creative library)
171
+ 5. Set `sandbox: true` on all mock/demo responses
172
+ 6. Use `ServeContext` pattern: `function createAgent({ taskStore }: ServeContext)`
173
+
174
+ The skill contains everything you need. Do not read additional docs before writing code.
175
+
176
+ ### Key implementation detail: creative library
177
+
178
+ Use a `Map<string, Creative>` to store synced creatives. The `sync_creatives` handler adds/updates entries. The `list_creatives` handler queries the map. The `preview_creative` and `build_creative` handlers look up by `creative_id`.
179
+
180
+ ## Validation
181
+
182
+ **After writing the agent, validate it. Fix failures. Repeat.**
183
+
184
+ **Full validation** (if you can bind ports):
185
+ ```bash
186
+ npx tsx agent.ts &
187
+ npx @adcp/client storyboard run http://localhost:3001/mcp creative_lifecycle --json
188
+ ```
189
+
190
+ **Sandbox validation** (if ports are blocked):
191
+ ```bash
192
+ npx tsc --noEmit agent.ts
193
+ ```
194
+
195
+ **Keep iterating until all steps pass.**
196
+
197
+ ## Common Mistakes
198
+
199
+ | Mistake | Fix |
200
+ |---------|-----|
201
+ | Skip `get_adcp_capabilities` | Must be the first tool registered |
202
+ | Pass `Schema` instead of `Schema.shape` | MCP SDK needs unwrapped Zod fields |
203
+ | `list_creatives` ignores format filter | Check `args.filters?.format_ids` and filter results |
204
+ | `preview_creative` returns wrong response_type | Must be `'single'` for single creative previews |
205
+ | `build_creative` missing creative_manifest | Required field — contains the built output |
206
+ | No in-memory store for synced creatives | `list_creatives` and `preview_creative` need to find previously synced creatives |
207
+
208
+ ## Storyboards
209
+
210
+ | Storyboard | Tests |
211
+ |-----------|-------|
212
+ | `creative_lifecycle` | Full lifecycle: format discovery → sync → list → preview → build |
213
+ | `creative_template` | Stateless template rendering (build + preview only) |
214
+ | `creative_sales_agent` | Sales agent that accepts pushed assets |
215
+ | `creative_ad_server` | Ad server with pre-loaded library |
216
+
217
+ ## Reference
218
+
219
+ - `storyboards/creative_lifecycle.yaml` — full creative lifecycle storyboard
220
+ - `docs/guides/BUILD-AN-AGENT.md` — SDK patterns
221
+ - `docs/llms.txt` — full protocol reference