@cesteral/meta-mcp 1.0.0

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