@cesteral/ttd-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.
Files changed (427) hide show
  1. package/LICENSE.md +201 -0
  2. package/README.md +308 -0
  3. package/dist/auth/index.d.ts +3 -0
  4. package/dist/auth/index.d.ts.map +1 -0
  5. package/dist/auth/index.js +3 -0
  6. package/dist/auth/index.js.map +1 -0
  7. package/dist/auth/ttd-auth-adapter.d.ts +21 -0
  8. package/dist/auth/ttd-auth-adapter.d.ts.map +1 -0
  9. package/dist/auth/ttd-auth-adapter.js +70 -0
  10. package/dist/auth/ttd-auth-adapter.js.map +1 -0
  11. package/dist/auth/ttd-auth-strategy.d.ts +10 -0
  12. package/dist/auth/ttd-auth-strategy.d.ts.map +1 -0
  13. package/dist/auth/ttd-auth-strategy.js +28 -0
  14. package/dist/auth/ttd-auth-strategy.js.map +1 -0
  15. package/dist/config/index.d.ts +100 -0
  16. package/dist/config/index.d.ts.map +1 -0
  17. package/dist/config/index.js +47 -0
  18. package/dist/config/index.js.map +1 -0
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +45 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts +4 -0
  24. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts.map +1 -0
  25. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js +286 -0
  26. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js.map +1 -0
  27. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts +4 -0
  28. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts.map +1 -0
  29. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js +245 -0
  30. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js.map +1 -0
  31. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.d.ts +4 -0
  32. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.d.ts.map +1 -0
  33. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.js +102 -0
  34. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.js.map +1 -0
  35. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
  36. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
  37. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
  38. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
  39. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
  40. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
  41. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
  42. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
  43. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts +4 -0
  44. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts.map +1 -0
  45. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js +215 -0
  46. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js.map +1 -0
  47. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts +4 -0
  48. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts.map +1 -0
  49. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js +162 -0
  50. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js.map +1 -0
  51. package/dist/mcp-server/prompts/definitions/report-generation-workflow.prompt.d.ts +4 -0
  52. package/dist/mcp-server/prompts/definitions/report-generation-workflow.prompt.d.ts.map +1 -0
  53. package/dist/mcp-server/prompts/definitions/report-generation-workflow.prompt.js +163 -0
  54. package/dist/mcp-server/prompts/definitions/report-generation-workflow.prompt.js.map +1 -0
  55. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts +4 -0
  56. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts.map +1 -0
  57. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js +259 -0
  58. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js.map +1 -0
  59. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts +4 -0
  60. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts.map +1 -0
  61. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js +193 -0
  62. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js.map +1 -0
  63. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts +4 -0
  64. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts.map +1 -0
  65. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js +119 -0
  66. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js.map +1 -0
  67. package/dist/mcp-server/prompts/index.d.ts +9 -0
  68. package/dist/mcp-server/prompts/index.d.ts.map +1 -0
  69. package/dist/mcp-server/prompts/index.js +97 -0
  70. package/dist/mcp-server/prompts/index.js.map +1 -0
  71. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts +4 -0
  72. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts.map +1 -0
  73. package/dist/mcp-server/resources/definitions/entity-examples.resource.js +388 -0
  74. package/dist/mcp-server/resources/definitions/entity-examples.resource.js.map +1 -0
  75. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts +3 -0
  76. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts.map +1 -0
  77. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js +145 -0
  78. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js.map +1 -0
  79. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts +4 -0
  80. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts.map +1 -0
  81. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js +318 -0
  82. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js.map +1 -0
  83. package/dist/mcp-server/resources/definitions/field-rules.resource.d.ts +3 -0
  84. package/dist/mcp-server/resources/definitions/field-rules.resource.d.ts.map +1 -0
  85. package/dist/mcp-server/resources/definitions/field-rules.resource.js +28 -0
  86. package/dist/mcp-server/resources/definitions/field-rules.resource.js.map +1 -0
  87. package/dist/mcp-server/resources/definitions/graphql-reference.resource.d.ts +3 -0
  88. package/dist/mcp-server/resources/definitions/graphql-reference.resource.d.ts.map +1 -0
  89. package/dist/mcp-server/resources/definitions/graphql-reference.resource.js +442 -0
  90. package/dist/mcp-server/resources/definitions/graphql-reference.resource.js.map +1 -0
  91. package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
  92. package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
  93. package/dist/mcp-server/resources/definitions/index.js +108 -0
  94. package/dist/mcp-server/resources/definitions/index.js.map +1 -0
  95. package/dist/mcp-server/resources/definitions/report-reference.resource.d.ts +3 -0
  96. package/dist/mcp-server/resources/definitions/report-reference.resource.d.ts.map +1 -0
  97. package/dist/mcp-server/resources/definitions/report-reference.resource.js +291 -0
  98. package/dist/mcp-server/resources/definitions/report-reference.resource.js.map +1 -0
  99. package/dist/mcp-server/resources/index.d.ts +3 -0
  100. package/dist/mcp-server/resources/index.d.ts.map +1 -0
  101. package/dist/mcp-server/resources/index.js +2 -0
  102. package/dist/mcp-server/resources/index.js.map +1 -0
  103. package/dist/mcp-server/resources/types.d.ts +8 -0
  104. package/dist/mcp-server/resources/types.d.ts.map +1 -0
  105. package/dist/mcp-server/resources/types.js +2 -0
  106. package/dist/mcp-server/resources/types.js.map +1 -0
  107. package/dist/mcp-server/resources/utils/field-rules.d.ts +18 -0
  108. package/dist/mcp-server/resources/utils/field-rules.d.ts.map +1 -0
  109. package/dist/mcp-server/resources/utils/field-rules.js +117 -0
  110. package/dist/mcp-server/resources/utils/field-rules.js.map +1 -0
  111. package/dist/mcp-server/server.d.ts +5 -0
  112. package/dist/mcp-server/server.d.ts.map +1 -0
  113. package/dist/mcp-server/server.js +162 -0
  114. package/dist/mcp-server/server.js.map +1 -0
  115. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts +1137 -0
  116. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts.map +1 -0
  117. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js +165 -0
  118. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js.map +1 -0
  119. package/dist/mcp-server/tools/definitions/archive-entities.tool.d.ts +145 -0
  120. package/dist/mcp-server/tools/definitions/archive-entities.tool.d.ts.map +1 -0
  121. package/dist/mcp-server/tools/definitions/archive-entities.tool.js +120 -0
  122. package/dist/mcp-server/tools/definitions/archive-entities.tool.js.map +1 -0
  123. package/dist/mcp-server/tools/definitions/bid-list-bulk.tool.d.ts +174 -0
  124. package/dist/mcp-server/tools/definitions/bid-list-bulk.tool.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/definitions/bid-list-bulk.tool.js +141 -0
  126. package/dist/mcp-server/tools/definitions/bid-list-bulk.tool.js.map +1 -0
  127. package/dist/mcp-server/tools/definitions/bid-list.tool.d.ts +225 -0
  128. package/dist/mcp-server/tools/definitions/bid-list.tool.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/definitions/bid-list.tool.js +169 -0
  130. package/dist/mcp-server/tools/definitions/bid-list.tool.js.map +1 -0
  131. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts +198 -0
  132. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js +135 -0
  134. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js.map +1 -0
  135. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts +258 -0
  136. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js +187 -0
  138. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js.map +1 -0
  139. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts +170 -0
  140. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts.map +1 -0
  141. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js +137 -0
  142. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js.map +1 -0
  143. package/dist/mcp-server/tools/definitions/cancel-report-execution.tool.d.ts +109 -0
  144. package/dist/mcp-server/tools/definitions/cancel-report-execution.tool.d.ts.map +1 -0
  145. package/dist/mcp-server/tools/definitions/cancel-report-execution.tool.js +134 -0
  146. package/dist/mcp-server/tools/definitions/cancel-report-execution.tool.js.map +1 -0
  147. package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts +112 -0
  148. package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts.map +1 -0
  149. package/dist/mcp-server/tools/definitions/check-report-status.tool.js +94 -0
  150. package/dist/mcp-server/tools/definitions/check-report-status.tool.js.map +1 -0
  151. package/dist/mcp-server/tools/definitions/create-ad-group-workflow.tool.d.ts +181 -0
  152. package/dist/mcp-server/tools/definitions/create-ad-group-workflow.tool.d.ts.map +1 -0
  153. package/dist/mcp-server/tools/definitions/create-ad-group-workflow.tool.js +52 -0
  154. package/dist/mcp-server/tools/definitions/create-ad-group-workflow.tool.js.map +1 -0
  155. package/dist/mcp-server/tools/definitions/create-ad-groups-job.tool.d.ts +300 -0
  156. package/dist/mcp-server/tools/definitions/create-ad-groups-job.tool.d.ts.map +1 -0
  157. package/dist/mcp-server/tools/definitions/create-ad-groups-job.tool.js +63 -0
  158. package/dist/mcp-server/tools/definitions/create-ad-groups-job.tool.js.map +1 -0
  159. package/dist/mcp-server/tools/definitions/create-ad-groups.tool.d.ts +482 -0
  160. package/dist/mcp-server/tools/definitions/create-ad-groups.tool.d.ts.map +1 -0
  161. package/dist/mcp-server/tools/definitions/create-ad-groups.tool.js +121 -0
  162. package/dist/mcp-server/tools/definitions/create-ad-groups.tool.js.map +1 -0
  163. package/dist/mcp-server/tools/definitions/create-campaign-workflow.tool.d.ts +172 -0
  164. package/dist/mcp-server/tools/definitions/create-campaign-workflow.tool.d.ts.map +1 -0
  165. package/dist/mcp-server/tools/definitions/create-campaign-workflow.tool.js +55 -0
  166. package/dist/mcp-server/tools/definitions/create-campaign-workflow.tool.js.map +1 -0
  167. package/dist/mcp-server/tools/definitions/create-campaigns-job.tool.d.ts +286 -0
  168. package/dist/mcp-server/tools/definitions/create-campaigns-job.tool.d.ts.map +1 -0
  169. package/dist/mcp-server/tools/definitions/create-campaigns-job.tool.js +63 -0
  170. package/dist/mcp-server/tools/definitions/create-campaigns-job.tool.js.map +1 -0
  171. package/dist/mcp-server/tools/definitions/create-campaigns.tool.d.ts +458 -0
  172. package/dist/mcp-server/tools/definitions/create-campaigns.tool.d.ts.map +1 -0
  173. package/dist/mcp-server/tools/definitions/create-campaigns.tool.js +124 -0
  174. package/dist/mcp-server/tools/definitions/create-campaigns.tool.js.map +1 -0
  175. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts +196 -0
  176. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts.map +1 -0
  177. package/dist/mcp-server/tools/definitions/create-entity.tool.js +126 -0
  178. package/dist/mcp-server/tools/definitions/create-entity.tool.js.map +1 -0
  179. package/dist/mcp-server/tools/definitions/create-report-schedule.tool.d.ts +147 -0
  180. package/dist/mcp-server/tools/definitions/create-report-schedule.tool.d.ts.map +1 -0
  181. package/dist/mcp-server/tools/definitions/create-report-schedule.tool.js +171 -0
  182. package/dist/mcp-server/tools/definitions/create-report-schedule.tool.js.map +1 -0
  183. package/dist/mcp-server/tools/definitions/create-report-template.tool.d.ts +370 -0
  184. package/dist/mcp-server/tools/definitions/create-report-template.tool.d.ts.map +1 -0
  185. package/dist/mcp-server/tools/definitions/create-report-template.tool.js +224 -0
  186. package/dist/mcp-server/tools/definitions/create-report-template.tool.js.map +1 -0
  187. package/dist/mcp-server/tools/definitions/create-template-schedule.tool.d.ts +316 -0
  188. package/dist/mcp-server/tools/definitions/create-template-schedule.tool.d.ts.map +1 -0
  189. package/dist/mcp-server/tools/definitions/create-template-schedule.tool.js +247 -0
  190. package/dist/mcp-server/tools/definitions/create-template-schedule.tool.js.map +1 -0
  191. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts +147 -0
  192. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts.map +1 -0
  193. package/dist/mcp-server/tools/definitions/delete-entity.tool.js +112 -0
  194. package/dist/mcp-server/tools/definitions/delete-entity.tool.js.map +1 -0
  195. package/dist/mcp-server/tools/definitions/delete-report-schedule.tool.d.ts +79 -0
  196. package/dist/mcp-server/tools/definitions/delete-report-schedule.tool.d.ts.map +1 -0
  197. package/dist/mcp-server/tools/definitions/delete-report-schedule.tool.js +89 -0
  198. package/dist/mcp-server/tools/definitions/delete-report-schedule.tool.js.map +1 -0
  199. package/dist/mcp-server/tools/definitions/download-report.tool.d.ts +297 -0
  200. package/dist/mcp-server/tools/definitions/download-report.tool.d.ts.map +1 -0
  201. package/dist/mcp-server/tools/definitions/download-report.tool.js +160 -0
  202. package/dist/mcp-server/tools/definitions/download-report.tool.js.map +1 -0
  203. package/dist/mcp-server/tools/definitions/execute-entity-report.tool.d.ts +147 -0
  204. package/dist/mcp-server/tools/definitions/execute-entity-report.tool.d.ts.map +1 -0
  205. package/dist/mcp-server/tools/definitions/execute-entity-report.tool.js +134 -0
  206. package/dist/mcp-server/tools/definitions/execute-entity-report.tool.js.map +1 -0
  207. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts +80 -0
  208. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts.map +1 -0
  209. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js +82 -0
  210. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js.map +1 -0
  211. package/dist/mcp-server/tools/definitions/get-campaign-version.tool.d.ts +61 -0
  212. package/dist/mcp-server/tools/definitions/get-campaign-version.tool.d.ts.map +1 -0
  213. package/dist/mcp-server/tools/definitions/get-campaign-version.tool.js +51 -0
  214. package/dist/mcp-server/tools/definitions/get-campaign-version.tool.js.map +1 -0
  215. package/dist/mcp-server/tools/definitions/get-context.tool.d.ts +77 -0
  216. package/dist/mcp-server/tools/definitions/get-context.tool.d.ts.map +1 -0
  217. package/dist/mcp-server/tools/definitions/get-context.tool.js +80 -0
  218. package/dist/mcp-server/tools/definitions/get-context.tool.js.map +1 -0
  219. package/dist/mcp-server/tools/definitions/get-entity-report-types.tool.d.ts +169 -0
  220. package/dist/mcp-server/tools/definitions/get-entity-report-types.tool.d.ts.map +1 -0
  221. package/dist/mcp-server/tools/definitions/get-entity-report-types.tool.js +138 -0
  222. package/dist/mcp-server/tools/definitions/get-entity-report-types.tool.js.map +1 -0
  223. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts +129 -0
  224. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts.map +1 -0
  225. package/dist/mcp-server/tools/definitions/get-entity.tool.js +88 -0
  226. package/dist/mcp-server/tools/definitions/get-entity.tool.js.map +1 -0
  227. package/dist/mcp-server/tools/definitions/get-first-party-data-job.tool.d.ts +110 -0
  228. package/dist/mcp-server/tools/definitions/get-first-party-data-job.tool.d.ts.map +1 -0
  229. package/dist/mcp-server/tools/definitions/get-first-party-data-job.tool.js +58 -0
  230. package/dist/mcp-server/tools/definitions/get-first-party-data-job.tool.js.map +1 -0
  231. package/dist/mcp-server/tools/definitions/get-job-status.tool.d.ts +61 -0
  232. package/dist/mcp-server/tools/definitions/get-job-status.tool.d.ts.map +1 -0
  233. package/dist/mcp-server/tools/definitions/get-job-status.tool.js +54 -0
  234. package/dist/mcp-server/tools/definitions/get-job-status.tool.js.map +1 -0
  235. package/dist/mcp-server/tools/definitions/get-report-executions.tool.d.ts +131 -0
  236. package/dist/mcp-server/tools/definitions/get-report-executions.tool.d.ts.map +1 -0
  237. package/dist/mcp-server/tools/definitions/get-report-executions.tool.js +253 -0
  238. package/dist/mcp-server/tools/definitions/get-report-executions.tool.js.map +1 -0
  239. package/dist/mcp-server/tools/definitions/get-report-schedule.tool.d.ts +197 -0
  240. package/dist/mcp-server/tools/definitions/get-report-schedule.tool.d.ts.map +1 -0
  241. package/dist/mcp-server/tools/definitions/get-report-schedule.tool.js +66 -0
  242. package/dist/mcp-server/tools/definitions/get-report-schedule.tool.js.map +1 -0
  243. package/dist/mcp-server/tools/definitions/get-report-template.tool.d.ts +303 -0
  244. package/dist/mcp-server/tools/definitions/get-report-template.tool.d.ts.map +1 -0
  245. package/dist/mcp-server/tools/definitions/get-report-template.tool.js +139 -0
  246. package/dist/mcp-server/tools/definitions/get-report-template.tool.js.map +1 -0
  247. package/dist/mcp-server/tools/definitions/get-report-type-schema.tool.d.ts +152 -0
  248. package/dist/mcp-server/tools/definitions/get-report-type-schema.tool.d.ts.map +1 -0
  249. package/dist/mcp-server/tools/definitions/get-report-type-schema.tool.js +167 -0
  250. package/dist/mcp-server/tools/definitions/get-report-type-schema.tool.js.map +1 -0
  251. package/dist/mcp-server/tools/definitions/get-report.tool.d.ts +126 -0
  252. package/dist/mcp-server/tools/definitions/get-report.tool.d.ts.map +1 -0
  253. package/dist/mcp-server/tools/definitions/get-report.tool.js +138 -0
  254. package/dist/mcp-server/tools/definitions/get-report.tool.js.map +1 -0
  255. package/dist/mcp-server/tools/definitions/get-third-party-data-job.tool.d.ts +104 -0
  256. package/dist/mcp-server/tools/definitions/get-third-party-data-job.tool.d.ts.map +1 -0
  257. package/dist/mcp-server/tools/definitions/get-third-party-data-job.tool.js +57 -0
  258. package/dist/mcp-server/tools/definitions/get-third-party-data-job.tool.js.map +1 -0
  259. package/dist/mcp-server/tools/definitions/graphql-bulk-job.tool.d.ts +92 -0
  260. package/dist/mcp-server/tools/definitions/graphql-bulk-job.tool.d.ts.map +1 -0
  261. package/dist/mcp-server/tools/definitions/graphql-bulk-job.tool.js +124 -0
  262. package/dist/mcp-server/tools/definitions/graphql-bulk-job.tool.js.map +1 -0
  263. package/dist/mcp-server/tools/definitions/graphql-cancel-bulk-job.tool.d.ts +68 -0
  264. package/dist/mcp-server/tools/definitions/graphql-cancel-bulk-job.tool.d.ts.map +1 -0
  265. package/dist/mcp-server/tools/definitions/graphql-cancel-bulk-job.tool.js +102 -0
  266. package/dist/mcp-server/tools/definitions/graphql-cancel-bulk-job.tool.js.map +1 -0
  267. package/dist/mcp-server/tools/definitions/graphql-mutation-bulk.tool.d.ts +102 -0
  268. package/dist/mcp-server/tools/definitions/graphql-mutation-bulk.tool.d.ts.map +1 -0
  269. package/dist/mcp-server/tools/definitions/graphql-mutation-bulk.tool.js +152 -0
  270. package/dist/mcp-server/tools/definitions/graphql-mutation-bulk.tool.js.map +1 -0
  271. package/dist/mcp-server/tools/definitions/graphql-query-bulk.tool.d.ts +93 -0
  272. package/dist/mcp-server/tools/definitions/graphql-query-bulk.tool.d.ts.map +1 -0
  273. package/dist/mcp-server/tools/definitions/graphql-query-bulk.tool.js +133 -0
  274. package/dist/mcp-server/tools/definitions/graphql-query-bulk.tool.js.map +1 -0
  275. package/dist/mcp-server/tools/definitions/graphql-query.tool.d.ts +189 -0
  276. package/dist/mcp-server/tools/definitions/graphql-query.tool.d.ts.map +1 -0
  277. package/dist/mcp-server/tools/definitions/graphql-query.tool.js +143 -0
  278. package/dist/mcp-server/tools/definitions/graphql-query.tool.js.map +1 -0
  279. package/dist/mcp-server/tools/definitions/index.d.ts +45 -0
  280. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
  281. package/dist/mcp-server/tools/definitions/index.js +135 -0
  282. package/dist/mcp-server/tools/definitions/index.js.map +1 -0
  283. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts +231 -0
  284. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts.map +1 -0
  285. package/dist/mcp-server/tools/definitions/list-entities.tool.js +147 -0
  286. package/dist/mcp-server/tools/definitions/list-entities.tool.js.map +1 -0
  287. package/dist/mcp-server/tools/definitions/list-report-schedules.tool.d.ts +282 -0
  288. package/dist/mcp-server/tools/definitions/list-report-schedules.tool.d.ts.map +1 -0
  289. package/dist/mcp-server/tools/definitions/list-report-schedules.tool.js +128 -0
  290. package/dist/mcp-server/tools/definitions/list-report-schedules.tool.js.map +1 -0
  291. package/dist/mcp-server/tools/definitions/list-report-templates.tool.d.ts +140 -0
  292. package/dist/mcp-server/tools/definitions/list-report-templates.tool.d.ts.map +1 -0
  293. package/dist/mcp-server/tools/definitions/list-report-templates.tool.js +118 -0
  294. package/dist/mcp-server/tools/definitions/list-report-templates.tool.js.map +1 -0
  295. package/dist/mcp-server/tools/definitions/list-report-types.tool.d.ts +97 -0
  296. package/dist/mcp-server/tools/definitions/list-report-types.tool.d.ts.map +1 -0
  297. package/dist/mcp-server/tools/definitions/list-report-types.tool.js +89 -0
  298. package/dist/mcp-server/tools/definitions/list-report-types.tool.js.map +1 -0
  299. package/dist/mcp-server/tools/definitions/rerun-report-schedule.tool.d.ts +109 -0
  300. package/dist/mcp-server/tools/definitions/rerun-report-schedule.tool.d.ts.map +1 -0
  301. package/dist/mcp-server/tools/definitions/rerun-report-schedule.tool.js +130 -0
  302. package/dist/mcp-server/tools/definitions/rerun-report-schedule.tool.js.map +1 -0
  303. package/dist/mcp-server/tools/definitions/rest-request.tool.d.ts +74 -0
  304. package/dist/mcp-server/tools/definitions/rest-request.tool.d.ts.map +1 -0
  305. package/dist/mcp-server/tools/definitions/rest-request.tool.js +54 -0
  306. package/dist/mcp-server/tools/definitions/rest-request.tool.js.map +1 -0
  307. package/dist/mcp-server/tools/definitions/seed.tool.d.ts +156 -0
  308. package/dist/mcp-server/tools/definitions/seed.tool.d.ts.map +1 -0
  309. package/dist/mcp-server/tools/definitions/seed.tool.js +316 -0
  310. package/dist/mcp-server/tools/definitions/seed.tool.js.map +1 -0
  311. package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts +114 -0
  312. package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts.map +1 -0
  313. package/dist/mcp-server/tools/definitions/submit-report.tool.js +136 -0
  314. package/dist/mcp-server/tools/definitions/submit-report.tool.js.map +1 -0
  315. package/dist/mcp-server/tools/definitions/update-ad-group-workflow.tool.d.ts +82 -0
  316. package/dist/mcp-server/tools/definitions/update-ad-group-workflow.tool.d.ts.map +1 -0
  317. package/dist/mcp-server/tools/definitions/update-ad-group-workflow.tool.js +51 -0
  318. package/dist/mcp-server/tools/definitions/update-ad-group-workflow.tool.js.map +1 -0
  319. package/dist/mcp-server/tools/definitions/update-ad-groups-job.tool.d.ts +158 -0
  320. package/dist/mcp-server/tools/definitions/update-ad-groups-job.tool.d.ts.map +1 -0
  321. package/dist/mcp-server/tools/definitions/update-ad-groups-job.tool.js +63 -0
  322. package/dist/mcp-server/tools/definitions/update-ad-groups-job.tool.js.map +1 -0
  323. package/dist/mcp-server/tools/definitions/update-ad-groups.tool.d.ts +241 -0
  324. package/dist/mcp-server/tools/definitions/update-ad-groups.tool.d.ts.map +1 -0
  325. package/dist/mcp-server/tools/definitions/update-ad-groups.tool.js +120 -0
  326. package/dist/mcp-server/tools/definitions/update-ad-groups.tool.js.map +1 -0
  327. package/dist/mcp-server/tools/definitions/update-campaign-workflow.tool.d.ts +82 -0
  328. package/dist/mcp-server/tools/definitions/update-campaign-workflow.tool.d.ts.map +1 -0
  329. package/dist/mcp-server/tools/definitions/update-campaign-workflow.tool.js +53 -0
  330. package/dist/mcp-server/tools/definitions/update-campaign-workflow.tool.js.map +1 -0
  331. package/dist/mcp-server/tools/definitions/update-campaigns-job.tool.d.ts +158 -0
  332. package/dist/mcp-server/tools/definitions/update-campaigns-job.tool.d.ts.map +1 -0
  333. package/dist/mcp-server/tools/definitions/update-campaigns-job.tool.js +63 -0
  334. package/dist/mcp-server/tools/definitions/update-campaigns-job.tool.js.map +1 -0
  335. package/dist/mcp-server/tools/definitions/update-campaigns.tool.d.ts +241 -0
  336. package/dist/mcp-server/tools/definitions/update-campaigns.tool.d.ts.map +1 -0
  337. package/dist/mcp-server/tools/definitions/update-campaigns.tool.js +120 -0
  338. package/dist/mcp-server/tools/definitions/update-campaigns.tool.js.map +1 -0
  339. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts +164 -0
  340. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts.map +1 -0
  341. package/dist/mcp-server/tools/definitions/update-entity.tool.js +101 -0
  342. package/dist/mcp-server/tools/definitions/update-entity.tool.js.map +1 -0
  343. package/dist/mcp-server/tools/definitions/update-report-schedule.tool.d.ts +116 -0
  344. package/dist/mcp-server/tools/definitions/update-report-schedule.tool.d.ts.map +1 -0
  345. package/dist/mcp-server/tools/definitions/update-report-schedule.tool.js +134 -0
  346. package/dist/mcp-server/tools/definitions/update-report-schedule.tool.js.map +1 -0
  347. package/dist/mcp-server/tools/definitions/update-report-template.tool.d.ts +358 -0
  348. package/dist/mcp-server/tools/definitions/update-report-template.tool.d.ts.map +1 -0
  349. package/dist/mcp-server/tools/definitions/update-report-template.tool.js +156 -0
  350. package/dist/mcp-server/tools/definitions/update-report-template.tool.js.map +1 -0
  351. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts +226 -0
  352. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts.map +1 -0
  353. package/dist/mcp-server/tools/definitions/validate-entity.tool.js +205 -0
  354. package/dist/mcp-server/tools/definitions/validate-entity.tool.js.map +1 -0
  355. package/dist/mcp-server/tools/index.d.ts +2 -0
  356. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  357. package/dist/mcp-server/tools/index.js +2 -0
  358. package/dist/mcp-server/tools/index.js.map +1 -0
  359. package/dist/mcp-server/tools/utils/entity-mapping.d.ts +18 -0
  360. package/dist/mcp-server/tools/utils/entity-mapping.d.ts.map +1 -0
  361. package/dist/mcp-server/tools/utils/entity-mapping.js +66 -0
  362. package/dist/mcp-server/tools/utils/entity-mapping.js.map +1 -0
  363. package/dist/mcp-server/tools/utils/graphql-errors.d.ts +13 -0
  364. package/dist/mcp-server/tools/utils/graphql-errors.d.ts.map +1 -0
  365. package/dist/mcp-server/tools/utils/graphql-errors.js +48 -0
  366. package/dist/mcp-server/tools/utils/graphql-errors.js.map +1 -0
  367. package/dist/mcp-server/tools/utils/parent-id-validation.d.ts +11 -0
  368. package/dist/mcp-server/tools/utils/parent-id-validation.d.ts.map +1 -0
  369. package/dist/mcp-server/tools/utils/parent-id-validation.js +60 -0
  370. package/dist/mcp-server/tools/utils/parent-id-validation.js.map +1 -0
  371. package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
  372. package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
  373. package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
  374. package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
  375. package/dist/mcp-server/tools/utils/workflow-schemas.d.ts +646 -0
  376. package/dist/mcp-server/tools/utils/workflow-schemas.d.ts.map +1 -0
  377. package/dist/mcp-server/tools/utils/workflow-schemas.js +173 -0
  378. package/dist/mcp-server/tools/utils/workflow-schemas.js.map +1 -0
  379. package/dist/mcp-server/transports/streamable-http-transport.d.ts +49 -0
  380. package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
  381. package/dist/mcp-server/transports/streamable-http-transport.js +74 -0
  382. package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
  383. package/dist/services/session-services.d.ts +22 -0
  384. package/dist/services/session-services.d.ts.map +1 -0
  385. package/dist/services/session-services.js +24 -0
  386. package/dist/services/session-services.js.map +1 -0
  387. package/dist/services/ttd/ttd-http-client.d.ts +13 -0
  388. package/dist/services/ttd/ttd-http-client.d.ts.map +1 -0
  389. package/dist/services/ttd/ttd-http-client.js +70 -0
  390. package/dist/services/ttd/ttd-http-client.js.map +1 -0
  391. package/dist/services/ttd/ttd-reporting-service.d.ts +79 -0
  392. package/dist/services/ttd/ttd-reporting-service.d.ts.map +1 -0
  393. package/dist/services/ttd/ttd-reporting-service.js +180 -0
  394. package/dist/services/ttd/ttd-reporting-service.js.map +1 -0
  395. package/dist/services/ttd/ttd-service.d.ts +107 -0
  396. package/dist/services/ttd/ttd-service.d.ts.map +1 -0
  397. package/dist/services/ttd/ttd-service.js +307 -0
  398. package/dist/services/ttd/ttd-service.js.map +1 -0
  399. package/dist/services/ttd/types.d.ts +153 -0
  400. package/dist/services/ttd/types.d.ts.map +1 -0
  401. package/dist/services/ttd/types.js +30 -0
  402. package/dist/services/ttd/types.js.map +1 -0
  403. package/dist/types-global/mcp.d.ts +2 -0
  404. package/dist/types-global/mcp.d.ts.map +1 -0
  405. package/dist/types-global/mcp.js +2 -0
  406. package/dist/types-global/mcp.js.map +1 -0
  407. package/dist/utils/errors/index.d.ts +2 -0
  408. package/dist/utils/errors/index.d.ts.map +1 -0
  409. package/dist/utils/errors/index.js +2 -0
  410. package/dist/utils/errors/index.js.map +1 -0
  411. package/dist/utils/platform.d.ts +3 -0
  412. package/dist/utils/platform.d.ts.map +1 -0
  413. package/dist/utils/platform.js +5 -0
  414. package/dist/utils/platform.js.map +1 -0
  415. package/dist/utils/security/rate-limiter.d.ts +3 -0
  416. package/dist/utils/security/rate-limiter.d.ts.map +1 -0
  417. package/dist/utils/security/rate-limiter.js +5 -0
  418. package/dist/utils/security/rate-limiter.js.map +1 -0
  419. package/dist/utils/telemetry/index.d.ts +2 -0
  420. package/dist/utils/telemetry/index.d.ts.map +1 -0
  421. package/dist/utils/telemetry/index.js +2 -0
  422. package/dist/utils/telemetry/index.js.map +1 -0
  423. package/dist/utils/telemetry/tracing.d.ts +3 -0
  424. package/dist/utils/telemetry/tracing.d.ts.map +1 -0
  425. package/dist/utils/telemetry/tracing.js +4 -0
  426. package/dist/utils/telemetry/tracing.js.map +1 -0
  427. package/package.json +56 -0
@@ -0,0 +1,170 @@
1
+ export const crossPlatformPerformancePrompt = {
2
+ name: "cross_platform_performance_comparison",
3
+ description: "Guide for comparing campaign performance across DV360 (via dbm-mcp), The Trade Desk (ttd-mcp), Google Ads (gads-mcp), and Meta Ads (meta-mcp). Normalizes metrics, identifies top performers, and recommends budget reallocation.",
4
+ arguments: [
5
+ {
6
+ name: "dateRange",
7
+ description: "Date range for comparison (e.g., LAST_7_DAYS, LAST_30_DAYS, or custom YYYY-MM-DD format)",
8
+ required: false,
9
+ },
10
+ ],
11
+ };
12
+ export function getCrossPlatformPerformanceMessage(args) {
13
+ const dateRange = args?.dateRange || "LAST_7_DAYS";
14
+ return `# Cross-Platform Performance Comparison
15
+
16
+ Date Range: \`${dateRange}\`
17
+
18
+ This workflow coordinates across multiple MCP servers to gather, normalize, and compare campaign performance. You must be connected to all relevant servers.
19
+
20
+ ---
21
+
22
+ ## Step 1: Gather Metrics from Each Platform
23
+
24
+ ### DV360 (via dbm-mcp)
25
+
26
+ \`\`\`json
27
+ {
28
+ "tool": "dbm_get_performance_metrics",
29
+ "params": {
30
+ "campaignId": "{dv360CampaignId}",
31
+ "advertiserId": "{dv360AdvertiserId}",
32
+ "dateRange": "${dateRange}"
33
+ }
34
+ }
35
+ \`\`\`
36
+
37
+ Key metrics returned: impressions, clicks, spend, CPM, CTR, CPA, ROAS.
38
+
39
+ ### The Trade Desk (via ttd-mcp)
40
+
41
+ \`\`\`json
42
+ {
43
+ "tool": "ttd_get_report",
44
+ "params": {
45
+ "reportName": "Cross-Platform Comparison",
46
+ "dateRange": "${dateRange}",
47
+ "dimensions": ["CampaignId", "CampaignName"],
48
+ "metrics": ["Impressions", "Clicks", "TotalCostAdvertiserCurrency", "Conversions", "Revenue"],
49
+ "advertiserIds": ["{ttdAdvertiserId}"]
50
+ }
51
+ }
52
+ \`\`\`
53
+
54
+ ### Google Ads (via gads-mcp)
55
+
56
+ \`\`\`json
57
+ {
58
+ "tool": "gads_get_insights",
59
+ "params": {
60
+ "customerId": "{gadsCustomerId}",
61
+ "entityType": "campaign",
62
+ "dateRange": "${dateRange}"
63
+ }
64
+ }
65
+ \`\`\`
66
+
67
+ ### Meta Ads (via meta-mcp)
68
+
69
+ \`\`\`json
70
+ {
71
+ "tool": "meta_get_insights",
72
+ "params": {
73
+ "entityId": "{metaCampaignId}",
74
+ "fields": ["impressions", "clicks", "spend", "cpm", "ctr", "cpc", "conversions", "cost_per_action_type"],
75
+ "datePreset": "last_7d"
76
+ }
77
+ }
78
+ \`\`\`
79
+
80
+ ---
81
+
82
+ ## Step 2: Normalize Metrics
83
+
84
+ Each platform reports metrics differently. Normalize to a common format:
85
+
86
+ | Metric | DV360 (dbm-mcp) | TTD (ttd-mcp) | Google Ads (gads-mcp) | Meta (meta-mcp) |
87
+ |--------|-----------------|---------------|----------------------|-----------------|
88
+ | **Spend** | USD (from report) | Advertiser currency | Micros (÷ 1,000,000) | Cents (÷ 100) |
89
+ | **CPM** | Calculated | Calculated | Micros (÷ 1,000,000) | Cents (÷ 100) |
90
+ | **CPC** | Calculated | Calculated | Micros (÷ 1,000,000) | Cents (÷ 100) |
91
+ | **CTR** | Ratio (0-1) | Ratio (0-1) | Ratio (0-1) | Percentage string |
92
+ | **Conversions** | Bid Manager metric | \`Conversions\` field | \`conversions\` metric | \`conversions\` field |
93
+
94
+ ### Normalization formulas:
95
+
96
+ - **Google Ads micros → USD**: Divide by 1,000,000
97
+ - **Meta cents → USD**: Divide by 100
98
+ - **Meta CTR string → number**: Parse "1.23%" to 0.0123
99
+ - **CPM**: (Spend / Impressions) × 1,000
100
+ - **CTR**: Clicks / Impressions
101
+ - **CPA**: Spend / Conversions
102
+ - **ROAS**: Revenue / Spend
103
+
104
+ ---
105
+
106
+ ## Step 3: Compare in Normalized Table
107
+
108
+ Present results in a unified format:
109
+
110
+ | Platform | Campaign | Impressions | Clicks | CTR | Spend (USD) | CPM (USD) | CPA (USD) | ROAS |
111
+ |----------|----------|-------------|--------|-----|-------------|-----------|-----------|------|
112
+ | DV360 | {name} | {n} | {n} | {%} | \${n} | \${n} | \${n} | {n}x |
113
+ | TTD | {name} | {n} | {n} | {%} | \${n} | \${n} | \${n} | {n}x |
114
+ | Google Ads | {name} | {n} | {n} | {%} | \${n} | \${n} | \${n} | {n}x |
115
+ | Meta | {name} | {n} | {n} | {%} | \${n} | \${n} | \${n} | {n}x |
116
+
117
+ ---
118
+
119
+ ## Step 4: Identify Winners and Losers
120
+
121
+ Rank platforms by key efficiency metrics:
122
+
123
+ ### By CPA (lower is better)
124
+ 1. Best CPA platform → candidate for budget increase
125
+ 2. Worst CPA platform → candidate for budget decrease or pause
126
+
127
+ ### By ROAS (higher is better)
128
+ 1. Best ROAS platform → highest return on investment
129
+ 2. Worst ROAS platform → losing money if < 1.0
130
+
131
+ ### By CPM (context-dependent)
132
+ - Low CPM + low CTR → cheap but ineffective (awareness only)
133
+ - High CPM + high CTR → expensive but effective (consider if CPA is good)
134
+
135
+ ---
136
+
137
+ ## Step 5: Recommend Budget Reallocation
138
+
139
+ Based on the comparison, suggest budget moves:
140
+
141
+ ### Conservative Approach (low risk)
142
+ - Shift 10-15% of budget from worst performer to best performer
143
+ - Monitor for 1 week before making further changes
144
+
145
+ ### Aggressive Approach (high confidence)
146
+ - Shift 25-30% of budget from worst performer to best performer
147
+ - Pause campaigns on platforms with ROAS < 0.5
148
+
149
+ ### Execution
150
+
151
+ For each platform where budget changes are needed:
152
+
153
+ - **DV360**: Use \`dv360_update_entity\` (via dv360-mcp) to adjust IO/Line Item budgets
154
+ - **TTD**: Use \`ttd_update_entity\` (via ttd-mcp) to adjust campaign/ad group budgets
155
+ - **Google Ads**: Use \`gads_update_entity\` (via gads-mcp) to adjust campaign budgets
156
+ - **Meta**: Use \`meta_update_entity\` (via meta-mcp) to adjust campaign/ad set budgets
157
+
158
+ ---
159
+
160
+ ## Gotchas
161
+
162
+ - **Date ranges differ by platform**: DV360 uses Bid Manager presets (LAST_7_DAYS), TTD uses date strings, Google Ads uses date ranges in GAQL, Meta uses datePreset or timeRange. Align dates carefully.
163
+ - **Currency differences**: Ensure all platforms report in the same currency before comparing. TTD reports in advertiser currency, others in USD by default.
164
+ - **Attribution models differ**: Each platform attributes conversions differently. Cross-platform CPA comparisons are directional, not exact.
165
+ - **Data freshness varies**: Meta has up to 48-hour lag. DV360 reports are async. TTD and Google Ads are near-real-time. Compare data from the same time window.
166
+ - **Impression counting differs**: Viewability standards vary by platform. CPM comparisons should account for this.
167
+ - **Not all campaigns are comparable**: Only compare campaigns targeting similar audiences, geos, and objectives. A brand awareness campaign on DV360 shouldn't be compared with a direct response campaign on Google Ads.
168
+ `;
169
+ }
170
+ //# sourceMappingURL=cross-platform-performance.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cross-platform-performance.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/cross-platform-performance.prompt.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,8BAA8B,GAAW;IACpD,IAAI,EAAE,uCAAuC;IAC7C,WAAW,EACT,mOAAmO;IACrO,SAAS,EAAE;QACT;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EACT,0FAA0F;YAC5F,QAAQ,EAAE,KAAK;SAChB;KACF;CACF,CAAC;AAEF,MAAM,UAAU,kCAAkC,CAAC,IAA6B;IAC9E,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,aAAa,CAAC;IAEnD,OAAO;;gBAEO,SAAS;;;;;;;;;;;;;;;;oBAgBL,SAAS;;;;;;;;;;;;;;oBAcT,SAAS;;;;;;;;;;;;;;;;oBAgBT,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0G5B,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const ttdEntityDuplicationWorkflowPrompt: Prompt;
3
+ export declare function getTtdEntityDuplicationWorkflowMessage(args?: Record<string, string>): string;
4
+ //# sourceMappingURL=entity-duplication-workflow.prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-duplication-workflow.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAQjE,eAAO,MAAM,kCAAkC,EAAE,MAgBhD,CAAC;AAEF,wBAAgB,sCAAsC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAsM5F"}
@@ -0,0 +1,215 @@
1
+ export const ttdEntityDuplicationWorkflowPrompt = {
2
+ name: "ttd_entity_duplication_workflow",
3
+ description: "Step-by-step guide for duplicating TTD entities (campaigns, ad groups, ads, creatives) using the get-then-create pattern — covers A/B testing, scaling to new markets, and campaign templating.",
4
+ arguments: [
5
+ {
6
+ name: "entityType",
7
+ description: "Entity type to duplicate: campaign, adGroup, ad, or creative",
8
+ required: true,
9
+ },
10
+ {
11
+ name: "entityId",
12
+ description: "TTD entity ID to duplicate",
13
+ required: true,
14
+ },
15
+ ],
16
+ };
17
+ export function getTtdEntityDuplicationWorkflowMessage(args) {
18
+ const entityType = args?.entityType || "{entityType}";
19
+ const entityId = args?.entityId || "{entityId}";
20
+ return `# TTD Entity Duplication Workflow
21
+
22
+ Entity Type: \`${entityType}\`
23
+ Entity ID: \`${entityId}\`
24
+
25
+ ---
26
+
27
+ ## Overview
28
+
29
+ TTD does not have a native duplicate/copy API. To duplicate an entity, use the **get-then-create** pattern:
30
+
31
+ 1. Read the source entity
32
+ 2. Strip ID fields and update identifying info (names, dates)
33
+ 3. Create the copy under the same parent
34
+ 4. Verify and activate when ready
35
+
36
+ ---
37
+
38
+ ## Step 1: Read the Source Entity
39
+
40
+ \`\`\`
41
+ Tool: ttd_get_entity
42
+ Input: {
43
+ "entityType": "${entityType}",
44
+ "entityId": "${entityId}"
45
+ }
46
+ \`\`\`
47
+
48
+ Save the full response — this is your template.
49
+
50
+ > Fetch \`entity-schema://${entityType}\` for the fields you must strip before re-creating.
51
+
52
+ ---
53
+
54
+ ## Step 2: Prepare the Copy Payload
55
+
56
+ Starting from the source entity response, make these modifications:
57
+
58
+ ### Fields to Remove (always)
59
+ - The entity's own ID field (e.g., \`CampaignId\`, \`AdGroupId\`, \`AdId\`, \`CreativeId\`)
60
+ - Any read-only metadata: \`CreatedAt\`, \`LastModified\`, \`Version\`, \`Status\` (if auto-set)
61
+
62
+ ### Fields to Update
63
+ - **Name**: Add suffix to distinguish the copy (e.g., \`"Q1 Campaign - Copy"\`)
64
+ - **Dates**: Update \`StartDate\` and \`EndDate\` if needed
65
+ - **Budget/Bid**: Adjust for the new copy's goals
66
+ - **Parent ID**: Keep the same parent (e.g., same \`CampaignId\` for ad group copies)
67
+
68
+ ### Campaign Copy Example
69
+
70
+ \`\`\`
71
+ Tool: ttd_create_entity
72
+ Input: {
73
+ "entityType": "campaign",
74
+ "data": {
75
+ "AdvertiserId": "{source AdvertiserId}",
76
+ "CampaignName": "Q1 2025 Brand - Copy",
77
+ "Budget": { "Amount": 50000, "CurrencyCode": "USD" },
78
+ "StartDate": "2025-04-01T00:00:00",
79
+ "EndDate": "2025-06-30T23:59:59",
80
+ "PacingMode": "PaceAhead"
81
+ }
82
+ }
83
+ \`\`\`
84
+
85
+ ### Ad Group Copy Example
86
+
87
+ \`\`\`
88
+ Tool: ttd_create_entity
89
+ Input: {
90
+ "entityType": "adGroup",
91
+ "data": {
92
+ "AdGroupName": "Prospecting US - Copy",
93
+ "CampaignId": "{parent CampaignId}",
94
+ "AdvertiserId": "{source AdvertiserId}",
95
+ "RTBAttributes": {
96
+ "BudgetSettings": {
97
+ "Budget": { "Amount": 10000, "CurrencyCode": "USD" },
98
+ "DailyBudget": { "Amount": 500, "CurrencyCode": "USD" },
99
+ "PacingMode": "PaceAhead"
100
+ },
101
+ "BaseBidCPM": { "Amount": 5.00, "CurrencyCode": "USD" },
102
+ "MaxBidCPM": { "Amount": 12.00, "CurrencyCode": "USD" }
103
+ }
104
+ }
105
+ }
106
+ \`\`\`
107
+
108
+ **Save**: Note the returned ID from the response.
109
+
110
+ ---
111
+
112
+ ## Step 3: Customize the Copy
113
+
114
+ After creation, apply your desired differences:
115
+
116
+ ### Change Targeting (Ad Group)
117
+
118
+ \`\`\`
119
+ Tool: ttd_update_entity
120
+ Input: {
121
+ "entityType": "adGroup",
122
+ "entityId": "{new adGroup ID}",
123
+ "data": {
124
+ "AdGroupId": "{new adGroup ID}",
125
+ "CampaignId": "{parent CampaignId}",
126
+ "AdvertiserId": "{AdvertiserId}",
127
+ "AdGroupName": "Prospecting UK - Copy",
128
+ "RTBAttributes": {
129
+ "BudgetSettings": "...",
130
+ "BaseBidCPM": { "Amount": 5.00, "CurrencyCode": "USD" },
131
+ "GeoSegments": ["GBR"]
132
+ }
133
+ }
134
+ }
135
+ \`\`\`
136
+
137
+ ---
138
+
139
+ ## Step 4: Verify the Copy
140
+
141
+ \`\`\`
142
+ Tool: ttd_get_entity
143
+ Input: {
144
+ "entityType": "${entityType}",
145
+ "entityId": "{new entity ID}"
146
+ }
147
+ \`\`\`
148
+
149
+ ---
150
+
151
+ ## Step 5: Activate
152
+
153
+ \`\`\`
154
+ Tool: ttd_bulk_update_status
155
+ Input: {
156
+ "entityType": "${entityType}",
157
+ "entityIds": ["{new entity ID}"],
158
+ "status": "Running"
159
+ }
160
+ \`\`\`
161
+
162
+ ---
163
+
164
+ ## Common Duplication Patterns
165
+
166
+ ### A/B Testing (Bid Test)
167
+
168
+ 1. Duplicate an ad group
169
+ 2. Set a different \`BaseBidCPM\` on the copy
170
+ 3. Run both simultaneously
171
+ 4. Compare via report: \`ttd_get_report\` segmented by \`AdGroupId\`
172
+
173
+ ### Scaling to New Geos
174
+
175
+ 1. Duplicate a proven campaign or ad group
176
+ 2. Update geographic targeting on the copy (GeoSegments or SiteList)
177
+ 3. Adjust budget for the new market
178
+ 4. Activate
179
+
180
+ ### Seasonal Refresh
181
+
182
+ 1. Duplicate a past campaign
183
+ 2. Update \`StartDate\`/\`EndDate\` to new period
184
+ 3. Update creatives to seasonal versions
185
+ 4. Reset budget if needed
186
+
187
+ ### Bulk Duplication
188
+
189
+ For creating many copies at once:
190
+
191
+ \`\`\`
192
+ Tool: ttd_bulk_create_entities
193
+ Input: {
194
+ "entityType": "${entityType}",
195
+ "items": [
196
+ { "AdGroupName": "Copy 1 - East", ... },
197
+ { "AdGroupName": "Copy 2 - West", ... }
198
+ ]
199
+ }
200
+ \`\`\`
201
+
202
+ ---
203
+
204
+ ## Success Criteria
205
+
206
+ - [ ] Source entity read and saved
207
+ - [ ] ID fields stripped from payload
208
+ - [ ] Name updated to distinguish the copy
209
+ - [ ] Copy created and ID saved
210
+ - [ ] Desired changes applied (targeting, budget, creatives)
211
+ - [ ] Copy verified via \`ttd_get_entity\`
212
+ - [ ] Activated via \`ttd_bulk_update_status\` only after review
213
+ `;
214
+ }
215
+ //# sourceMappingURL=entity-duplication-workflow.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-duplication-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,kCAAkC,GAAW;IACxD,IAAI,EAAE,iCAAiC;IACvC,WAAW,EACT,iMAAiM;IACnM,SAAS,EAAE;QACT;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,8DAA8D;YAC3E,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,4BAA4B;YACzC,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC;AAEF,MAAM,UAAU,sCAAsC,CAAC,IAA6B;IAClF,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,cAAc,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,YAAY,CAAC;IAEhD,OAAO;;iBAEQ,UAAU;eACZ,QAAQ;;;;;;;;;;;;;;;;;;;;mBAoBJ,UAAU;iBACZ,QAAQ;;;;;;4BAMG,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA8FnB,UAAU;;;;;;;;;;;;mBAYV,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAsCV,UAAU;;;;;;;;;;;;;;;;;;;CAmB5B,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const ttdEntityUpdateWorkflowPrompt: Prompt;
3
+ export declare function getTtdEntityUpdateWorkflowMessage(args?: Record<string, string>): string;
4
+ //# sourceMappingURL=entity-update-workflow.prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-update-workflow.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/entity-update-workflow.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AASjE,eAAO,MAAM,6BAA6B,EAAE,MAiB3C,CAAC;AAEF,wBAAgB,iCAAiC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAiJvF"}
@@ -0,0 +1,162 @@
1
+ export const ttdEntityUpdateWorkflowPrompt = {
2
+ name: "ttd_entity_update_workflow",
3
+ description: "Step-by-step guide for safely updating TTD entities using PUT semantics. Covers safe read-modify-write pattern for campaigns, ad groups, ads, creatives, site lists, and bid lists.",
4
+ arguments: [
5
+ {
6
+ name: "entityType",
7
+ description: "Entity type to update: advertiser, campaign, adGroup, ad, creative, siteList, deal, conversionTracker, or bidList",
8
+ required: true,
9
+ },
10
+ {
11
+ name: "entityId",
12
+ description: "TTD entity ID to update",
13
+ required: true,
14
+ },
15
+ ],
16
+ };
17
+ export function getTtdEntityUpdateWorkflowMessage(args) {
18
+ const entityType = args?.entityType || "{entityType}";
19
+ const entityId = args?.entityId || "{entityId}";
20
+ return `# TTD Entity Update Workflow
21
+
22
+ Entity Type: \`${entityType}\`
23
+ Entity ID: \`${entityId}\`
24
+
25
+ ---
26
+
27
+ ## ⚠️ Critical: TTD Uses PUT (Not PATCH)
28
+
29
+ TTD's update API uses **full entity replacement** (HTTP PUT). This means:
30
+ - You MUST read the current entity first
31
+ - You MUST include ALL required fields in your update payload
32
+ - Any fields you omit may be reset to defaults or cause API errors
33
+ - Only send changes — but wrap them in the complete required structure
34
+
35
+ ---
36
+
37
+ ## Step 1: Read Current State
38
+
39
+ Fetch the entity before modifying it:
40
+
41
+ \`\`\`
42
+ Tool: ttd_get_entity
43
+ Input: {
44
+ "entityType": "${entityType}",
45
+ "entityId": "${entityId}"
46
+ }
47
+ \`\`\`
48
+
49
+ **Save the response.** You will use it as the base for your update payload.
50
+
51
+ > Fetch \`entity-schema://${entityType}\` for full field reference and \`entity-examples://${entityType}\` for update patterns.
52
+
53
+ ---
54
+
55
+ ## Step 2: Build Your Update Payload
56
+
57
+ Start with the full current entity from Step 1, then modify only the fields you want to change.
58
+
59
+ ### Campaign Update (Budget Increase)
60
+
61
+ \`\`\`
62
+ Tool: ttd_update_entity
63
+ Input: {
64
+ "entityType": "campaign",
65
+ "entityId": "${entityId}",
66
+ "data": {
67
+ "CampaignId": "${entityId}",
68
+ "AdvertiserId": "{current AdvertiserId}",
69
+ "CampaignName": "{current CampaignName}",
70
+ "Budget": { "Amount": 75000, "CurrencyCode": "USD" },
71
+ "StartDate": "{current StartDate}",
72
+ "EndDate": "{current EndDate}",
73
+ "PacingMode": "{current PacingMode}"
74
+ }
75
+ }
76
+ \`\`\`
77
+
78
+ ### Ad Group Bid Adjustment
79
+
80
+ \`\`\`
81
+ Tool: ttd_update_entity
82
+ Input: {
83
+ "entityType": "adGroup",
84
+ "entityId": "${entityId}",
85
+ "data": {
86
+ "AdGroupId": "${entityId}",
87
+ "CampaignId": "{current CampaignId}",
88
+ "AdvertiserId": "{current AdvertiserId}",
89
+ "AdGroupName": "{current AdGroupName}",
90
+ "RTBAttributes": {
91
+ "BudgetSettings": "{current BudgetSettings}",
92
+ "BaseBidCPM": { "Amount": 7.50, "CurrencyCode": "USD" },
93
+ "MaxBidCPM": { "Amount": 15.00, "CurrencyCode": "USD" }
94
+ }
95
+ }
96
+ }
97
+ \`\`\`
98
+
99
+ ### Bulk Bid Adjustment (Preferred for Multiple Ad Groups)
100
+
101
+ For multiple ad group bids, use the specialized bid tool — it handles read-modify-write atomically:
102
+
103
+ \`\`\`
104
+ Tool: ttd_adjust_bids
105
+ Input: {
106
+ "adjustments": [
107
+ { "adGroupId": "${entityId}", "bidCPM": 7.50 }
108
+ ]
109
+ }
110
+ \`\`\`
111
+
112
+ ---
113
+
114
+ ## Step 3: Execute the Update
115
+
116
+ Call \`ttd_update_entity\` with your full payload. Review the response for any errors.
117
+
118
+ ---
119
+
120
+ ## Step 4: Verify the Change
121
+
122
+ Confirm the update was applied:
123
+
124
+ \`\`\`
125
+ Tool: ttd_get_entity
126
+ Input: {
127
+ "entityType": "${entityType}",
128
+ "entityId": "${entityId}"
129
+ }
130
+ \`\`\`
131
+
132
+ Compare the returned values with what you set in Step 2.
133
+
134
+ ---
135
+
136
+ ## Gotchas
137
+
138
+ - **PUT replaces the entity**: Missing required fields cause API errors. Always start from the current state.
139
+ - **Entity IDs in body**: TTD typically requires the entity ID inside the body (e.g., \`CampaignId\` in the campaign object) in addition to the URL.
140
+ - **Budget is lifetime**: Campaign \`Budget.Amount\` is the total lifetime budget, not daily. Use ad group \`DailyBudget\` for day-level pacing.
141
+ - **Status changes**: To pause/resume entities, prefer \`ttd_bulk_update_status\` over manual status field updates.
142
+ - **Bid adjustments**: For bid changes, prefer \`ttd_adjust_bids\` over manual update — it handles the read-modify-write cycle safely.
143
+
144
+ ---
145
+
146
+ ## Rollback
147
+
148
+ If the update causes issues, restore the original values using the response you saved in Step 1:
149
+
150
+ \`\`\`
151
+ Tool: ttd_update_entity
152
+ Input: {
153
+ "entityType": "${entityType}",
154
+ "entityId": "${entityId}",
155
+ "data": "{original entity from Step 1}"
156
+ }
157
+ \`\`\`
158
+
159
+ Always save the original state before making changes.
160
+ `;
161
+ }
162
+ //# sourceMappingURL=entity-update-workflow.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-update-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/entity-update-workflow.prompt.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,6BAA6B,GAAW;IACnD,IAAI,EAAE,4BAA4B;IAClC,WAAW,EACT,qLAAqL;IACvL,SAAS,EAAE;QACT;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EACT,mHAAmH;YACrH,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC;AAEF,MAAM,UAAU,iCAAiC,CAAC,IAA6B;IAC7E,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,cAAc,CAAC;IACtD,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,YAAY,CAAC;IAEhD,OAAO;;iBAEQ,UAAU;eACZ,QAAQ;;;;;;;;;;;;;;;;;;;;;mBAqBJ,UAAU;iBACZ,QAAQ;;;;;;4BAMG,UAAU,uDAAuD,UAAU;;;;;;;;;;;;;;iBActF,QAAQ;;qBAEJ,QAAQ;;;;;;;;;;;;;;;;;iBAiBZ,QAAQ;;oBAEL,QAAQ;;;;;;;;;;;;;;;;;;;;;sBAqBN,QAAQ;;;;;;;;;;;;;;;;;;;;mBAoBX,UAAU;iBACZ,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;mBAyBN,UAAU;iBACZ,QAAQ;;;;;;CAMxB,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const reportGenerationWorkflowPrompt: Prompt;
3
+ export declare function getReportGenerationWorkflowMessage(args?: Record<string, string>): string;
4
+ //# sourceMappingURL=report-generation-workflow.prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-generation-workflow.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/report-generation-workflow.prompt.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,8BAA8B,EAAE,MAW5C,CAAC;AAEF,wBAAgB,kCAAkC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAuJxF"}