@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,442 @@
1
+ let cachedContent;
2
+ function formatGraphqlReferenceMarkdown() {
3
+ return `# TTD GraphQL Reference
4
+
5
+ ## Overview
6
+
7
+ TTD exposes a GraphQL API at \`https://desk.thetradedesk.com/graphql\`. Use \`ttd_graphql_query\` or \`ttd_graphql_query_bulk\` to execute queries against it.
8
+
9
+ > **Note:** TTD disables schema introspection — \`{ __type(name: "Me") { fields { name } } }\` returns \`null\`. Use the query patterns documented here instead of attempting introspection.
10
+
11
+ > **Error handling:** All GraphQL errors return HTTP 200. Errors are in the response body under \`errors[]\` with codes like \`AUTHENTICATION_FAILURE\`, \`VALIDATION_FAILURE\`, \`RESOURCE_LIMIT_EXCEEDED\`, \`GRAPHQL_VALIDATION_FAILED\`, \`NOT_FOUND\`, \`SERVICE_UNAVAILABLE\`.
12
+
13
+ ---
14
+
15
+ ## Cold Start: Partner Discovery
16
+
17
+ **Always start here.** No other parameters are required.
18
+
19
+ \`\`\`graphql
20
+ { partners { nodes { id name } } }
21
+ \`\`\`
22
+
23
+ Returns all TTD partners accessible to the authenticated account. Use the \`id\` field as \`partnerId\` when calling \`ttd_list_entities\` (entityType: "advertiser").
24
+
25
+ Alternatively, call the \`ttd_get_context\` tool which wraps this query automatically.
26
+
27
+ ---
28
+
29
+ ## Identity
30
+
31
+ \`\`\`graphql
32
+ { me { id } }
33
+ \`\`\`
34
+
35
+ Returns the authenticated user's internal TTD ID. **Only \`id\` is available** — fields like \`name\`, \`email\`, \`partnerIds\`, and \`roles\` do not exist on the \`Me\` type and will fail with GRAPHQL_VALIDATION_FAILED.
36
+
37
+ ---
38
+
39
+ ## Pagination Patterns
40
+
41
+ TTD uses **two** different pagination conventions depending on the endpoint:
42
+
43
+ ### Relay-style (most entity queries)
44
+ \`\`\`graphql
45
+ {
46
+ campaigns(advertiserId: "ADV_ID") {
47
+ edges {
48
+ node { id name status }
49
+ }
50
+ pageInfo { hasNextPage endCursor }
51
+ }
52
+ }
53
+ \`\`\`
54
+
55
+ ### Simple nodes (partner and template queries)
56
+ \`\`\`graphql
57
+ {
58
+ partners {
59
+ nodes { id name }
60
+ pageInfo { hasNextPage endCursor }
61
+ }
62
+ }
63
+ \`\`\`
64
+
65
+ Use \`first: N\` and \`after: "cursor"\` arguments for forward pagination:
66
+ \`\`\`graphql
67
+ { partners(first: 10, after: "cursor") { nodes { id name } pageInfo { hasNextPage endCursor } } }
68
+ \`\`\`
69
+
70
+ Use \`last: N\` and \`before: "cursor"\` for backward pagination.
71
+
72
+ ---
73
+
74
+ ## Mutation Patterns
75
+
76
+ TTD mutations follow a consistent pattern with \`data\` and \`errors\` return fields. **Important:** \`data\` can be either a scalar or an object depending on the mutation — check each mutation's type before selecting sub-fields.
77
+
78
+ ### Error handling in mutations
79
+ Always use \`__typename\` with \`MutationError\` as the catch-all error type:
80
+ \`\`\`graphql
81
+ errors {
82
+ __typename
83
+ ... on MutationError {
84
+ field
85
+ message
86
+ }
87
+ }
88
+ \`\`\`
89
+
90
+ Some older mutations use \`userErrors\` instead of \`errors\` — check the schema. Entity report mutations use \`userErrors { field message }\` (no inline fragments needed).
91
+
92
+ ### Enum values
93
+ - In inline queries: no quotes — \`format: EXCEL\`
94
+ - In JSON variables: use strings — \`"format": "EXCEL"\`
95
+ - Values are UPPERCASE — e.g. \`INTERNATIONAL\`, not \`International\`
96
+
97
+ ---
98
+
99
+ ## Report Templates (MyReports)
100
+
101
+ > **Permission required:** MyReports queries return \`UNAUTHORIZED_FIELD_OR_TYPE\` if the TTD account does not have the MyReports feature enabled. Contact your TTD account manager.
102
+
103
+ ### List templates
104
+ \`\`\`graphql
105
+ query GetReportTemplates($first: Int, $after: String) {
106
+ myReportsReportTemplates(first: $first, after: $after) {
107
+ pageInfo { startCursor hasNextPage endCursor }
108
+ totalCount
109
+ nodes {
110
+ id
111
+ name
112
+ format
113
+ }
114
+ }
115
+ }
116
+ \`\`\`
117
+
118
+ ### Get template structure
119
+ \`\`\`graphql
120
+ query GetReportTemplate($id: ID!) {
121
+ derivedReportTemplate(id: $id) {
122
+ ... on MyReportsGetDerivedTemplateResponse {
123
+ requestedReportTemplateId
124
+ name
125
+ reportFormatType
126
+ resultSets {
127
+ reportType { name }
128
+ fields { columnOrder includedInPivot isOverlapColumn }
129
+ metrics { columnOrder includedInPivot isOverlapColumn }
130
+ conversionMetrics { columnOrder includedInPivot isOverlapColumn }
131
+ }
132
+ }
133
+ }
134
+ }
135
+ \`\`\`
136
+
137
+ **Note:** The variable type must be \`ID!\`, not \`String!\`. Column fields only expose \`columnOrder\`, \`includedInPivot\`, and \`isOverlapColumn\` — there are no \`columnId\`, \`columnType\`, or \`name\` fields on \`MyReportsTemplateColumn\`.
138
+
139
+ ### Create template
140
+ \`\`\`graphql
141
+ mutation CreateReportTemplate($input: MyReportsTemplateCreateInput!) {
142
+ myReportsTemplateCreate(input: $input) {
143
+ data
144
+ errors {
145
+ __typename
146
+ ... on MutationError { field message }
147
+ }
148
+ }
149
+ }
150
+ \`\`\`
151
+
152
+ **Important:** \`data\` is a **scalar** — do NOT select sub-fields like \`data { id }\`. The mutation does not return the new template's ID directly. Query \`myReportsReportTemplates(last: 1)\` after a successful create to retrieve it.
153
+
154
+ ### Update template
155
+ \`\`\`graphql
156
+ mutation UpdateReportTemplate($input: MyReportsTemplateUpdateInput!) {
157
+ myReportsTemplateUpdate(input: $input) {
158
+ data
159
+ errors {
160
+ __typename
161
+ ... on MutationError { field message }
162
+ }
163
+ }
164
+ }
165
+ \`\`\`
166
+
167
+ **Important:** \`data\` is a **scalar** here too. The update completely replaces the template structure — re-include all columns you want to keep.
168
+
169
+ ---
170
+
171
+ ## Report Types Discovery
172
+
173
+ ### List report types
174
+ \`\`\`graphql
175
+ query ListReportTypes($input: ReportTypesInput!) {
176
+ reportTypes(input: $input) {
177
+ id
178
+ name
179
+ }
180
+ }
181
+ \`\`\`
182
+
183
+ Variable: \`{ "input": { "format": "EXCEL" } }\`
184
+
185
+ ### Get report type schema (fields + metrics)
186
+ \`\`\`graphql
187
+ query GetReportTypeSchema($input: ReportTypeInput!, $first: Int, $after: String) {
188
+ reportType(input: $input) {
189
+ id
190
+ name
191
+ fields(first: $first, after: $after) {
192
+ pageInfo { hasNextPage endCursor }
193
+ nodes { id name }
194
+ }
195
+ metrics(first: $first, after: $after) {
196
+ pageInfo { hasNextPage endCursor }
197
+ nodes { id name }
198
+ }
199
+ }
200
+ }
201
+ \`\`\`
202
+
203
+ Fields and metrics are paginated — use \`first\`/\`after\` to retrieve all.
204
+
205
+ ---
206
+
207
+ ## Report Schedules
208
+
209
+ ### Create schedule from template
210
+ \`\`\`graphql
211
+ mutation CreateTemplateSchedule($input: MyReportsTemplateScheduleCreateInput!) {
212
+ myReportsTemplateScheduleCreate(input: $input) {
213
+ data {
214
+ scheduleId
215
+ }
216
+ errors {
217
+ __typename
218
+ ... on MutationError { field message }
219
+ }
220
+ }
221
+ }
222
+ \`\`\`
223
+
224
+ Required input fields: \`templateId\`, \`reportName\`, \`startDate\`, \`frequency\`, \`dateRange\`, \`timezone\`, \`format\`, \`includeHeaders\`, \`reportFilters\`, \`suppressTotals\`, \`suppressZeroMeasureRows\`, \`dateFormat\` (UPPERCASE enum, e.g. \`INTERNATIONAL\`), \`numericFormat\`.
225
+
226
+ ### Get schedule executions (single)
227
+ \`\`\`graphql
228
+ query GetReportSchedule($id: ID!) {
229
+ myReportsReportSchedule(id: $id) {
230
+ status
231
+ filters {
232
+ advertiserFilters { name }
233
+ partnerFilters { name }
234
+ }
235
+ executions {
236
+ nodes {
237
+ reportStartDateInclusive
238
+ reportEndDateExclusive
239
+ lastStatusChangeDate
240
+ state
241
+ delivery {
242
+ downloadLink
243
+ deliveredDate
244
+ }
245
+ }
246
+ }
247
+ }
248
+ }
249
+ \`\`\`
250
+
251
+ ### List schedule executions (with pagination)
252
+ \`\`\`graphql
253
+ query GetReportSchedules($where: MyReportsReportScheduleFilterInput, $first: Int, $after: String) {
254
+ myReportsReportSchedules(where: $where, first: $first, after: $after) {
255
+ nodes {
256
+ name
257
+ status
258
+ filters {
259
+ advertiserFilters { name }
260
+ partnerFilters { name }
261
+ }
262
+ timezone
263
+ executions {
264
+ nodes {
265
+ reportStartDateInclusive
266
+ reportEndDateExclusive
267
+ lastStatusChangeDate
268
+ state
269
+ delivery {
270
+ downloadLink
271
+ deliveredDate
272
+ }
273
+ }
274
+ }
275
+ }
276
+ pageInfo { hasNextPage endCursor }
277
+ }
278
+ }
279
+ \`\`\`
280
+
281
+ ### Enable/disable schedule
282
+ \`\`\`graphql
283
+ mutation UpdateSchedule($input: MyReportsReportScheduleUpdateInput!) {
284
+ myReportsReportScheduleUpdate(input: $input) {
285
+ data {
286
+ status
287
+ }
288
+ errors {
289
+ __typename
290
+ ... on MutationError { field message }
291
+ }
292
+ }
293
+ }
294
+ \`\`\`
295
+
296
+ ### Cancel execution
297
+ \`\`\`graphql
298
+ mutation CancelExecution($input: MyReportsReportExecutionCancelInput!) {
299
+ myReportsReportExecutionCancel(input: $input) {
300
+ data {
301
+ isCancelled
302
+ }
303
+ errors {
304
+ __typename
305
+ ... on MutationError { field message }
306
+ }
307
+ }
308
+ }
309
+ \`\`\`
310
+
311
+ ### Rerun schedule
312
+ \`\`\`graphql
313
+ mutation RerunSchedule($input: MyReportsReportScheduleCreateInput!) {
314
+ myReportsReportScheduleCreate(input: $input) {
315
+ data {
316
+ id
317
+ }
318
+ errors {
319
+ __typename
320
+ ... on MutationError { field message }
321
+ }
322
+ }
323
+ }
324
+ \`\`\`
325
+
326
+ ---
327
+
328
+ ## Entity Reports (Immediate, No Polling)
329
+
330
+ These mutations return a download URL directly — no schedule/polling required. They use \`userErrors\` instead of \`errors\`.
331
+
332
+ ### Ad group report
333
+ \`\`\`graphql
334
+ mutation($entityId: ID!, $reportType: AdGroupReportType!) {
335
+ adGroupReportExecute(input: { id: $entityId, report: $reportType }) {
336
+ data { id url hasSampleData }
337
+ userErrors { field message }
338
+ }
339
+ }
340
+ \`\`\`
341
+
342
+ ### Campaign report
343
+ \`\`\`graphql
344
+ mutation($entityId: ID!, $reportType: CampaignReportType!) {
345
+ campaignReportExecute(input: { id: $entityId, report: $reportType }) {
346
+ data { id url hasSampleData }
347
+ userErrors { field message }
348
+ }
349
+ }
350
+ \`\`\`
351
+
352
+ ### Advertiser report
353
+ \`\`\`graphql
354
+ mutation($entityId: ID!, $reportType: AdvertiserReportType!) {
355
+ advertiserReportExecute(input: { id: $entityId, report: $reportType }) {
356
+ data { id url hasSampleData }
357
+ userErrors { field message }
358
+ }
359
+ }
360
+ \`\`\`
361
+
362
+ Use \`ttd_get_entity_report_types\` to discover valid \`reportType\` enum values for a given entity.
363
+
364
+ ---
365
+
366
+ ## Bulk Operations
367
+
368
+ TTD supports async bulk GraphQL jobs for large-scale operations. Submit a job and poll for results:
369
+
370
+ ### Submit bulk query
371
+ \`\`\`graphql
372
+ mutation BulkQuery($query: String!, $variables: [JSON!]!) {
373
+ bulkQuery(input: { query: $query, variables: $variables }) {
374
+ jobId
375
+ }
376
+ }
377
+ \`\`\`
378
+
379
+ ### Check job status
380
+ \`\`\`graphql
381
+ query BulkJobStatus($jobId: ID!) {
382
+ bulkJob(jobId: $jobId) {
383
+ jobId
384
+ status
385
+ resultUrl
386
+ resultExpiresAt
387
+ errorMessage
388
+ progress {
389
+ completed
390
+ total
391
+ }
392
+ }
393
+ }
394
+ \`\`\`
395
+
396
+ Use \`ttd_graphql_query_bulk\`, \`ttd_graphql_mutation_bulk\`, \`ttd_graphql_bulk_job\`, and \`ttd_graphql_cancel_bulk_job\` tools to avoid managing this flow manually.
397
+
398
+ ---
399
+
400
+ ## Known Field Constraints (from live testing 2026-04-14)
401
+
402
+ | Type | Field | Status |
403
+ |------|-------|--------|
404
+ | \`Me\` | \`id\` | ✅ Works |
405
+ | \`Me\` | \`name\`, \`email\`, \`partnerIds\`, \`roles\` | ❌ Do not exist |
406
+ | \`Partner\` | \`id\`, \`name\` | ✅ Works |
407
+ | \`MyReportsTemplate\` (nodes) | \`id\`, \`name\`, \`format\` | ✅ Works |
408
+ | \`MyReportsTemplateColumn\` | \`columnOrder\`, \`includedInPivot\`, \`isOverlapColumn\` | ✅ Works |
409
+ | \`MyReportsTemplateColumn\` | \`columnId\`, \`columnType\`, \`name\` | ❌ Do not exist |
410
+ | \`MyReportsGetDerivedTemplateResponse\` | \`requestedReportTemplateId\`, \`name\`, \`reportFormatType\`, \`resultSets\` | ✅ Works |
411
+ | \`MyReportsGetDerivedTemplateResponse\` | \`isDerived\` | ❌ Does not exist |
412
+ | \`MyReportsTemplateResultSet\` | \`reportType { name }\`, \`fields\`, \`metrics\`, \`conversionMetrics\` | ✅ Works |
413
+ | \`MyReportsTemplateResultSet\` | \`filters\`, \`name\` | ❌ Do not exist |
414
+ | \`MyReportsTemplateCreatePayload\` | \`data\` (scalar) | ✅ Works |
415
+ | \`MyReportsTemplateUpdatePayload\` | \`data\` (scalar) | ✅ Works |
416
+ | \`MyReportsTemplateScheduleCreatePayload\` | \`data { scheduleId }\` | ✅ Works |
417
+ | \`derivedReportTemplate\` query | Variable type must be \`ID!\` not \`String!\` | ⚠️ Type matters |
418
+ | \`dateFormat\` enum | Must be UPPERCASE (\`INTERNATIONAL\`) | ⚠️ Casing matters |
419
+
420
+ ---
421
+
422
+ ## Complexity and Rate Limits
423
+
424
+ - TTD calculates query complexity and rejects calls that exceed limits
425
+ - \`totalCount\` adds processing overhead — omit if not needed
426
+ - Limit page sizes to ~1000 for paginated requests
427
+ - Reduce nesting depth to lower complexity scores
428
+ - Rate limit errors return code \`RESOURCE_LIMIT_EXCEEDED\` with HTTP 200 (not 429 for GraphQL)
429
+ - API Gateway errors return HTTP 429 for extreme overload
430
+ `;
431
+ }
432
+ export const graphqlReferenceResource = {
433
+ uri: "graphql-reference://ttd",
434
+ name: "TTD GraphQL Reference",
435
+ description: "Working GraphQL query patterns for the TTD GraphQL API. TTD disables schema introspection — use this resource instead of __type queries.",
436
+ mimeType: "text/markdown",
437
+ getContent: () => {
438
+ cachedContent ??= formatGraphqlReferenceMarkdown();
439
+ return cachedContent;
440
+ },
441
+ };
442
+ //# sourceMappingURL=graphql-reference.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphql-reference.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/graphql-reference.resource.ts"],"names":[],"mappings":"AAeA,IAAI,aAAiC,CAAC;AAEtC,SAAS,8BAA8B;IACrC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2aR,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAa;IAChD,GAAG,EAAE,yBAAyB;IAC9B,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EACT,0IAA0I;IAC5I,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE;QACf,aAAa,KAAK,8BAA8B,EAAE,CAAC;QACnD,OAAO,aAAa,CAAC;IACvB,CAAC;CACF,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { entityHierarchyResource } from "./entity-hierarchy.resource.js";
2
+ export { entitySchemaResources, entitySchemaAllResource } from "./entity-schemas.resource.js";
3
+ export { entityExampleResources, entityExampleAllResource } from "./entity-examples.resource.js";
4
+ export { reportReferenceResource } from "./report-reference.resource.js";
5
+ export { graphqlReferenceResource } from "./graphql-reference.resource.js";
6
+ import type { Resource } from "../types.js";
7
+ export declare const allResources: Resource[];
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAS3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA0F5C,eAAO,MAAM,YAAY,EAAE,QAAQ,EAUlC,CAAC"}
@@ -0,0 +1,108 @@
1
+ export { entityHierarchyResource } from "./entity-hierarchy.resource.js";
2
+ export { entitySchemaResources, entitySchemaAllResource } from "./entity-schemas.resource.js";
3
+ export { entityExampleResources, entityExampleAllResource } from "./entity-examples.resource.js";
4
+ export { reportReferenceResource } from "./report-reference.resource.js";
5
+ export { graphqlReferenceResource } from "./graphql-reference.resource.js";
6
+ import { entityHierarchyResource } from "./entity-hierarchy.resource.js";
7
+ import { entitySchemaResources, entitySchemaAllResource } from "./entity-schemas.resource.js";
8
+ import { entityExampleResources, entityExampleAllResource } from "./entity-examples.resource.js";
9
+ import { reportReferenceResource } from "./report-reference.resource.js";
10
+ import { graphqlReferenceResource } from "./graphql-reference.resource.js";
11
+ import { allTools } from "../../tools/definitions/index.js";
12
+ import { createToolExamplesResource, createServerCapabilitiesResource } from "@cesteral/shared";
13
+ const toolExamplesResource = createToolExamplesResource(allTools, "ttd-mcp");
14
+ const serverCapabilitiesResource = createServerCapabilitiesResource({
15
+ serverName: "ttd-mcp",
16
+ allTools,
17
+ toolGroups: {
18
+ context: ["ttd_get_context"],
19
+ crud: [
20
+ "ttd_list_entities",
21
+ "ttd_get_entity",
22
+ "ttd_create_entity",
23
+ "ttd_update_entity",
24
+ "ttd_delete_entity",
25
+ ],
26
+ reporting: [
27
+ "ttd_get_report",
28
+ "ttd_download_report",
29
+ "ttd_submit_report",
30
+ "ttd_check_report_status",
31
+ "ttd_execute_entity_report",
32
+ "ttd_get_entity_report_types",
33
+ "ttd_list_report_types",
34
+ "ttd_get_report_type_schema",
35
+ ],
36
+ reportSchedules: [
37
+ "ttd_create_report_schedule",
38
+ "ttd_update_report_schedule",
39
+ "ttd_list_report_schedules",
40
+ "ttd_get_report_schedule",
41
+ "ttd_delete_report_schedule",
42
+ "ttd_rerun_report_schedule",
43
+ "ttd_cancel_report_execution",
44
+ "ttd_get_report_executions",
45
+ ],
46
+ reportTemplates: [
47
+ "ttd_list_report_templates",
48
+ "ttd_create_report_template",
49
+ "ttd_update_report_template",
50
+ "ttd_get_report_template",
51
+ "ttd_create_template_schedule",
52
+ ],
53
+ bulk: [
54
+ "ttd_bulk_create_entities",
55
+ "ttd_bulk_update_entities",
56
+ "ttd_bulk_update_status",
57
+ "ttd_archive_entities",
58
+ "ttd_adjust_bids",
59
+ ],
60
+ graphql: [
61
+ "ttd_graphql_query",
62
+ "ttd_graphql_query_bulk",
63
+ "ttd_graphql_mutation_bulk",
64
+ "ttd_graphql_bulk_job",
65
+ "ttd_graphql_cancel_bulk_job",
66
+ ],
67
+ bidListsAndSeeds: ["ttd_manage_bid_list", "ttd_bulk_manage_bid_lists", "ttd_manage_seed"],
68
+ preview: ["ttd_get_ad_preview"],
69
+ validation: ["ttd_validate_entity"],
70
+ discovery: ["ttd_search_tools"],
71
+ },
72
+ commonWorkflows: [
73
+ "campaign_setup",
74
+ "ad_group_setup",
75
+ "performance_reporting",
76
+ "report_schedule_management",
77
+ "bulk_status_update",
78
+ "graphql_bulk_operations",
79
+ ],
80
+ discoveryFlow: [
81
+ "Read server-capabilities://ttd-mcp/overview to choose a capability group.",
82
+ "Read entity-hierarchy://all and entity-schema://{entityType} before entity writes.",
83
+ "Read report-reference://all before report or schedule tools.",
84
+ "Read graphql-reference://all before GraphQL passthrough or bulk GraphQL tools.",
85
+ "Use tool-examples://ttd-mcp/all only when concrete payload examples are needed.",
86
+ ],
87
+ relatedResources: [
88
+ "entity-hierarchy://all",
89
+ "entity-schema://all",
90
+ "entity-examples://all",
91
+ "report-reference://all",
92
+ "graphql-reference://all",
93
+ "tool-examples://ttd-mcp/all",
94
+ ],
95
+ startHere: "ttd_get_context",
96
+ });
97
+ export const allResources = [
98
+ entityHierarchyResource,
99
+ entitySchemaAllResource,
100
+ ...entitySchemaResources,
101
+ entityExampleAllResource,
102
+ ...entityExampleResources,
103
+ reportReferenceResource,
104
+ graphqlReferenceResource,
105
+ ...(toolExamplesResource ? [toolExamplesResource] : []),
106
+ serverCapabilitiesResource,
107
+ ];
108
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,0BAA0B,EAAE,gCAAgC,EAAE,MAAM,kBAAkB,CAAC;AAGhG,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC7E,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;IAClE,UAAU,EAAE,SAAS;IACrB,QAAQ;IACR,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,iBAAiB,CAAC;QAC5B,IAAI,EAAE;YACJ,mBAAmB;YACnB,gBAAgB;YAChB,mBAAmB;YACnB,mBAAmB;YACnB,mBAAmB;SACpB;QACD,SAAS,EAAE;YACT,gBAAgB;YAChB,qBAAqB;YACrB,mBAAmB;YACnB,yBAAyB;YACzB,2BAA2B;YAC3B,6BAA6B;YAC7B,uBAAuB;YACvB,4BAA4B;SAC7B;QACD,eAAe,EAAE;YACf,4BAA4B;YAC5B,4BAA4B;YAC5B,2BAA2B;YAC3B,yBAAyB;YACzB,4BAA4B;YAC5B,2BAA2B;YAC3B,6BAA6B;YAC7B,2BAA2B;SAC5B;QACD,eAAe,EAAE;YACf,2BAA2B;YAC3B,4BAA4B;YAC5B,4BAA4B;YAC5B,yBAAyB;YACzB,8BAA8B;SAC/B;QACD,IAAI,EAAE;YACJ,0BAA0B;YAC1B,0BAA0B;YAC1B,wBAAwB;YACxB,sBAAsB;YACtB,iBAAiB;SAClB;QACD,OAAO,EAAE;YACP,mBAAmB;YACnB,wBAAwB;YACxB,2BAA2B;YAC3B,sBAAsB;YACtB,6BAA6B;SAC9B;QACD,gBAAgB,EAAE,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,iBAAiB,CAAC;QACzF,OAAO,EAAE,CAAC,oBAAoB,CAAC;QAC/B,UAAU,EAAE,CAAC,qBAAqB,CAAC;QACnC,SAAS,EAAE,CAAC,kBAAkB,CAAC;KAChC;IACD,eAAe,EAAE;QACf,gBAAgB;QAChB,gBAAgB;QAChB,uBAAuB;QACvB,4BAA4B;QAC5B,oBAAoB;QACpB,yBAAyB;KAC1B;IACD,aAAa,EAAE;QACb,2EAA2E;QAC3E,oFAAoF;QACpF,8DAA8D;QAC9D,gFAAgF;QAChF,iFAAiF;KAClF;IACD,gBAAgB,EAAE;QAChB,wBAAwB;QACxB,qBAAqB;QACrB,uBAAuB;QACvB,wBAAwB;QACxB,yBAAyB;QACzB,6BAA6B;KAC9B;IACD,SAAS,EAAE,iBAAiB;CAC7B,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,YAAY,GAAe;IACtC,uBAAuB;IACvB,uBAAuB;IACvB,GAAG,qBAAqB;IACxB,wBAAwB;IACxB,GAAG,sBAAsB;IACzB,uBAAuB;IACvB,wBAAwB;IACxB,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,oBAA2C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,0BAAiD;CAClD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Resource } from "../types.js";
2
+ export declare const reportReferenceResource: Resource;
3
+ //# sourceMappingURL=report-reference.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-reference.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/report-reference.resource.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA4R5C,eAAO,MAAM,uBAAuB,EAAE,QAUrC,CAAC"}