@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,140 @@
1
+ import { getSupportedEntityTypes, getEntityConfig, } from "../../tools/utils/entity-mapping.js";
2
+ const ENTITY_EXAMPLES = {
3
+ campaign: `# Campaign Examples
4
+
5
+ ## Create a traffic campaign
6
+ \`\`\`json
7
+ {
8
+ "name": "Summer Sale 2026 - Traffic",
9
+ "objective": "OUTCOME_TRAFFIC",
10
+ "status": "PAUSED",
11
+ "special_ad_categories": [],
12
+ "daily_budget": 5000,
13
+ "bid_strategy": "LOWEST_COST_WITHOUT_CAP"
14
+ }
15
+ \`\`\`
16
+
17
+ ## Create a conversions campaign with CBO
18
+ \`\`\`json
19
+ {
20
+ "name": "Q1 Conversions",
21
+ "objective": "OUTCOME_SALES",
22
+ "status": "PAUSED",
23
+ "special_ad_categories": [],
24
+ "daily_budget": 10000,
25
+ "campaign_budget_optimization": true,
26
+ "bid_strategy": "COST_CAP"
27
+ }
28
+ \`\`\``,
29
+ adSet: `# Ad Set Examples
30
+
31
+ ## Basic ad set with interest targeting
32
+ \`\`\`json
33
+ {
34
+ "name": "US 25-44 Fitness Enthusiasts",
35
+ "campaign_id": "CAMPAIGN_ID",
36
+ "optimization_goal": "LINK_CLICKS",
37
+ "billing_event": "IMPRESSIONS",
38
+ "daily_budget": 5000,
39
+ "targeting": {
40
+ "age_min": 25,
41
+ "age_max": 44,
42
+ "geo_locations": { "countries": ["US"] },
43
+ "interests": [{ "id": "6003139266461", "name": "Fitness and wellness" }],
44
+ "targeting_automation": { "advantage_audience": 0 }
45
+ },
46
+ "status": "PAUSED"
47
+ }
48
+ \`\`\`
49
+
50
+ ## Ad set with custom audience and frequency cap
51
+ \`\`\`json
52
+ {
53
+ "name": "Retargeting - Website Visitors",
54
+ "campaign_id": "CAMPAIGN_ID",
55
+ "optimization_goal": "CONVERSIONS",
56
+ "billing_event": "IMPRESSIONS",
57
+ "daily_budget": 3000,
58
+ "targeting": {
59
+ "custom_audiences": [{ "id": "AUDIENCE_ID" }],
60
+ "geo_locations": { "countries": ["US"] }
61
+ },
62
+ "frequency_control_specs": [{
63
+ "event": "IMPRESSIONS",
64
+ "interval_days": 7,
65
+ "max_frequency": 3
66
+ }],
67
+ "status": "PAUSED"
68
+ }
69
+ \`\`\``,
70
+ ad: `# Ad Examples
71
+
72
+ ## Create an ad referencing an existing creative
73
+ \`\`\`json
74
+ {
75
+ "name": "Summer Sale - Image Ad v1",
76
+ "adset_id": "ADSET_ID",
77
+ "creative": { "creative_id": "CREATIVE_ID" },
78
+ "status": "PAUSED"
79
+ }
80
+ \`\`\``,
81
+ adCreative: `# Ad Creative Examples
82
+
83
+ ## Link ad creative
84
+ \`\`\`json
85
+ {
86
+ "name": "Summer Sale Creative",
87
+ "object_story_spec": {
88
+ "page_id": "PAGE_ID",
89
+ "link_data": {
90
+ "link": "https://example.com/sale",
91
+ "message": "Don't miss our Summer Sale!",
92
+ "name": "Summer Sale - 50% Off",
93
+ "description": "Shop now and save big.",
94
+ "call_to_action": { "type": "SHOP_NOW" },
95
+ "image_hash": "IMAGE_HASH"
96
+ }
97
+ }
98
+ }
99
+ \`\`\``,
100
+ customAudience: `# Custom Audience Examples
101
+
102
+ ## Website visitors audience
103
+ \`\`\`json
104
+ {
105
+ "name": "Website Visitors - Last 30 Days",
106
+ "subtype": "WEBSITE",
107
+ "description": "People who visited our website in the last 30 days"
108
+ }
109
+ \`\`\`
110
+
111
+ ## Lookalike audience
112
+ \`\`\`json
113
+ {
114
+ "name": "Lookalike - Top Purchasers US 1%",
115
+ "subtype": "LOOKALIKE",
116
+ "lookalike_spec": {
117
+ "origin": [{ "id": "SOURCE_AUDIENCE_ID", "type": "custom_audience" }],
118
+ "country": "US",
119
+ "ratio": 0.01
120
+ }
121
+ }
122
+ \`\`\``,
123
+ };
124
+ export const entityExampleResources = getSupportedEntityTypes().map((entityType) => ({
125
+ uri: `entity-examples://${entityType}`,
126
+ name: `${getEntityConfig(entityType).displayName} Examples`,
127
+ description: `Example payloads for Meta ${getEntityConfig(entityType).displayName} operations`,
128
+ mimeType: "text/markdown",
129
+ getContent: () => ENTITY_EXAMPLES[entityType] || `# ${entityType}\n\nNo examples yet.`,
130
+ }));
131
+ export const entityExampleAllResource = {
132
+ uri: "entity-examples://all",
133
+ name: "All Meta Entity Examples",
134
+ description: "Combined examples for all Meta Ads entity types",
135
+ mimeType: "text/markdown",
136
+ getContent: () => getSupportedEntityTypes()
137
+ .map((t) => ENTITY_EXAMPLES[t])
138
+ .join("\n\n---\n\n"),
139
+ };
140
+ //# sourceMappingURL=entity-examples.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-examples.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/entity-examples.resource.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,uBAAuB,EACvB,eAAe,GAEhB,MAAM,qCAAqC,CAAC;AAE7C,MAAM,eAAe,GAAmC;IACtD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;OAyBL;IAEL,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCF;IAEL,EAAE,EAAE;;;;;;;;;;OAUC;IAEL,UAAU,EAAE;;;;;;;;;;;;;;;;;;OAkBP;IAEL,cAAc,EAAE;;;;;;;;;;;;;;;;;;;;;;OAsBX;CACN,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAe,uBAAuB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC/F,GAAG,EAAE,qBAAqB,UAAU,EAAE;IACtC,IAAI,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,WAAW;IAC3D,WAAW,EAAE,6BAA6B,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,aAAa;IAC9F,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU,sBAAsB;CACvF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,wBAAwB,GAAa;IAChD,GAAG,EAAE,uBAAuB;IAC5B,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,iDAAiD;IAC9D,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE,CACf,uBAAuB,EAAE;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;SAC9B,IAAI,CAAC,aAAa,CAAC;CACzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Resource } from "../types.js";
2
+ export declare const entityHierarchyResource: Resource;
3
+ //# sourceMappingURL=entity-hierarchy.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-hierarchy.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/entity-hierarchy.resource.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA8G5C,eAAO,MAAM,uBAAuB,EAAE,QAUrC,CAAC"}
@@ -0,0 +1,117 @@
1
+ let cachedContent;
2
+ function formatEntityHierarchyMarkdown() {
3
+ return `# Meta Ads Entity Hierarchy
4
+
5
+ ## Relationship Diagram
6
+
7
+ \`\`\`
8
+ Ad Account (act_XXXXXXXXX)
9
+ ├── Campaign
10
+ │ └── Ad Set
11
+ │ └── Ad (references: Ad Creative)
12
+ ├── Ad Creative (reusable across ads)
13
+ └── Custom Audience (reusable for targeting)
14
+ \`\`\`
15
+
16
+ ## Entity Types (5 total)
17
+
18
+ | Entity Type | API Edge | Display Name | Supports Duplicate |
19
+ |-------------|----------|--------------|:---:|
20
+ | **campaign** | \`campaigns\` | Campaign | ✓ |
21
+ | **adSet** | \`adsets\` | Ad Set | ✓ |
22
+ | **ad** | \`ads\` | Ad | ✓ |
23
+ | **adCreative** | \`adcreatives\` | Ad Creative | |
24
+ | **customAudience** | \`customaudiences\` | Custom Audience | |
25
+
26
+ ## Key Relationships
27
+
28
+ ### Core Hierarchy: Account → Campaign → Ad Set → Ad
29
+ - All entities are created under an ad account (flat, not nested).
30
+ - A campaign has one or more ad sets.
31
+ - An ad set has one or more ads.
32
+ - An ad references an ad creative via \`creative.creative_id\`.
33
+
34
+ ### Reusable Entities
35
+ - **Ad Creatives** are shared across ads within the same ad account.
36
+ - **Custom Audiences** are used in ad set targeting specifications.
37
+
38
+ ## Creation Order
39
+
40
+ Full campaign structure (top-down):
41
+
42
+ 1. **Ad Account** — usually pre-exists; verify with \`meta_list_ad_accounts\`
43
+ 2. **Custom Audience(s)** — create if using custom audience targeting
44
+ 3. **Ad Creative(s)** — create before ads that reference them
45
+ 4. **Campaign** — requires \`name\`, \`objective\`, \`special_ad_categories\`
46
+ 5. **Ad Set(s)** — requires \`campaign_id\`, \`targeting\`, \`optimization_goal\`, \`billing_event\`
47
+ 6. **Ad(s)** — requires \`adset_id\`, \`creative\` (with creative_id)
48
+
49
+ ## Meta API Patterns
50
+
51
+ ### Create: POST /act_{id}/{edge}
52
+ All entities are created via the ad account edge.
53
+
54
+ ### Read: GET /{entityId}?fields=...
55
+ **Important:** Meta returns NO fields by default. You must explicitly request fields.
56
+
57
+ ### Update: POST /{entityId} (PATCH semantics)
58
+ Only provided fields are updated. Returns \`{ success: true }\`, NOT the full entity.
59
+
60
+ ### Delete: DELETE /{entityId}
61
+ Active entities must be paused first.
62
+
63
+ ### List: GET /act_{id}/{edge}?fields=...&filtering=[...]
64
+ Uses cursor-based pagination (\`after\` parameter).
65
+
66
+ ## Available Tools Summary
67
+
68
+ | Tool | Purpose | Batch? |
69
+ |------|---------|--------|
70
+ | \`meta_list_entities\` | List entities with filters | |
71
+ | \`meta_get_entity\` | Get single entity | |
72
+ | \`meta_create_entity\` | Create single entity | |
73
+ | \`meta_update_entity\` | Update single entity | |
74
+ | \`meta_delete_entity\` | Delete single entity | |
75
+ | \`meta_list_ad_accounts\` | List accessible ad accounts | |
76
+ | \`meta_get_insights\` | Get performance insights | |
77
+ | \`meta_get_insights_breakdowns\` | Get insights with breakdowns | |
78
+ | \`meta_bulk_update_status\` | Batch status update | ✓ |
79
+ | \`meta_bulk_create_entities\` | Batch entity creation | ✓ |
80
+ | \`meta_search_targeting\` | Search targeting options | |
81
+ | \`meta_get_targeting_options\` | Browse targeting categories | |
82
+ | \`meta_duplicate_entity\` | Duplicate campaign/adSet/ad | |
83
+ | \`meta_get_delivery_estimate\` | Audience size estimation | |
84
+ | \`meta_get_ad_preview\` | Ad preview HTML | |
85
+ | \`meta_adjust_bids\` | Batch adjust ad set bid amounts | ✓ |
86
+ | \`meta_validate_entity\` | Client-side payload validation | |
87
+
88
+ ## Budget Notes
89
+
90
+ - Budget values are in **cents** (1000 = $10 USD)
91
+ - Zero-decimal currencies (JPY, KRW, VND) use base unit
92
+ - Budget changes limited to ~4/hour per ad set
93
+ - Campaign Budget Optimization (CBO): set \`campaign_budget_optimization\` on campaign
94
+
95
+ ## Campaign Objectives (ODAX)
96
+
97
+ | Objective | Replaces |
98
+ |-----------|----------|
99
+ | OUTCOME_AWARENESS | BRAND_AWARENESS, REACH |
100
+ | OUTCOME_TRAFFIC | LINK_CLICKS, TRAFFIC |
101
+ | OUTCOME_ENGAGEMENT | POST_ENGAGEMENT, PAGE_LIKES, VIDEO_VIEWS |
102
+ | OUTCOME_LEADS | LEAD_GENERATION |
103
+ | OUTCOME_SALES | CONVERSIONS, CATALOG_SALES |
104
+ | OUTCOME_APP_PROMOTION | APP_INSTALLS |
105
+ `;
106
+ }
107
+ export const entityHierarchyResource = {
108
+ uri: "entity-hierarchy://all",
109
+ name: "Meta Entity Hierarchy",
110
+ description: "Parent-child relationships between Meta Ads entities, API patterns, and creation ordering",
111
+ mimeType: "text/markdown",
112
+ getContent: () => {
113
+ cachedContent ??= formatEntityHierarchyMarkdown();
114
+ return cachedContent;
115
+ },
116
+ };
117
+ //# sourceMappingURL=entity-hierarchy.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-hierarchy.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/entity-hierarchy.resource.ts"],"names":[],"mappings":"AAQA,IAAI,aAAiC,CAAC;AAEtC,SAAS,6BAA6B;IACpC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsGR,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,GAAG,EAAE,wBAAwB;IAC7B,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EACT,2FAA2F;IAC7F,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE;QACf,aAAa,KAAK,6BAA6B,EAAE,CAAC;QAClD,OAAO,aAAa,CAAC;IACvB,CAAC;CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Resource } from "../types.js";
2
+ export declare const entitySchemaResources: Resource[];
3
+ export declare const entitySchemaAllResource: Resource;
4
+ //# sourceMappingURL=entity-schemas.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-schemas.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/entity-schemas.resource.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAuH5C,eAAO,MAAM,qBAAqB,EAAE,QAAQ,EAMzC,CAAC;AAEJ,eAAO,MAAM,uBAAuB,EAAE,QASrC,CAAC"}
@@ -0,0 +1,125 @@
1
+ import { getSupportedEntityTypes, getEntityConfig, } from "../../tools/utils/entity-mapping.js";
2
+ const ENTITY_SCHEMAS = {
3
+ campaign: `# Campaign Schema
4
+
5
+ ## Required Fields
6
+ - \`name\` (string) — Campaign name
7
+ - \`objective\` (string) — OUTCOME_AWARENESS, OUTCOME_TRAFFIC, OUTCOME_ENGAGEMENT, OUTCOME_LEADS, OUTCOME_SALES, OUTCOME_APP_PROMOTION
8
+ - \`special_ad_categories\` (array) — Empty array [] if none, or ["EMPLOYMENT", "HOUSING", "CREDIT", "ISSUES_ELECTIONS_POLITICS"]
9
+
10
+ ## Optional Fields
11
+ - \`status\` (string) — ACTIVE, PAUSED (default: PAUSED)
12
+ - \`configured_status\` (string) — The status set by the advertiser (vs effective status)
13
+ - \`daily_budget\` (integer) — Daily budget in cents
14
+ - \`lifetime_budget\` (integer) — Lifetime budget in cents
15
+ - \`budget_remaining\` (string) — Remaining budget (read-only)
16
+ - \`bid_strategy\` (string) — LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, COST_CAP
17
+ - \`buying_type\` (string) — AUCTION (default), RESERVED
18
+ - \`campaign_budget_optimization\` (boolean) — Enable CBO
19
+ - \`special_ad_category_country\` (array) — Countries for special ad category enforcement
20
+ - \`start_time\` (string) — ISO 8601 datetime
21
+ - \`stop_time\` (string) — ISO 8601 datetime`,
22
+ adSet: `# Ad Set Schema
23
+
24
+ ## Required Fields
25
+ - \`name\` (string) — Ad set name
26
+ - \`campaign_id\` (string) — Parent campaign ID
27
+ - \`optimization_goal\` (string) — LINK_CLICKS, REACH, CONVERSIONS, APP_INSTALLS, VALUE, etc.
28
+ - \`billing_event\` (string) — IMPRESSIONS, LINK_CLICKS, etc.
29
+ - \`targeting\` (object) — Targeting specification
30
+ - \`status\` (string) — ACTIVE, PAUSED
31
+
32
+ ## Optional Fields
33
+ - \`daily_budget\` (integer) — Budget in cents (if not using CBO)
34
+ - \`lifetime_budget\` (integer) — Lifetime budget in cents
35
+ - \`budget_remaining\` (string) — Remaining budget (read-only)
36
+ - \`bid_amount\` (integer) — Bid cap in cents
37
+ - \`bid_strategy\` (string) — LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, COST_CAP
38
+ - \`bid_constraints\` (object) — Bid constraints (e.g., roas_average_floor for MIN_ROAS)
39
+ - \`start_time\` (string) — ISO 8601 datetime
40
+ - \`end_time\` (string) — ISO 8601 datetime (required for lifetime budgets)
41
+ - \`frequency_control_specs\` (array) — Frequency capping rules [{event, interval_days, max_frequency}]
42
+ - \`is_dynamic_creative\` (boolean) — Enable dynamic creative testing
43
+ - \`destination_type\` (string) — WEBSITE, APP, MESSENGER, WHATSAPP, INSTAGRAM_DIRECT, etc.
44
+ - \`promoted_object\` (object) — Required for APP_INSTALLS (application_id, object_store_url)
45
+ - \`attribution_spec\` (array) — Attribution settings
46
+ - \`pacing_type\` (array) — Budget pacing ["standard"] or ["no_pacing"]
47
+ - \`dsa_beneficiary\` (string) — DSA compliance: beneficiary name (EU)
48
+ - \`dsa_payor\` (string) — DSA compliance: payor name (EU)
49
+
50
+ ## Targeting Spec Structure
51
+ \`\`\`json
52
+ {
53
+ "age_min": 18,
54
+ "age_max": 65,
55
+ "genders": [1, 2],
56
+ "geo_locations": { "countries": ["US"] },
57
+ "interests": [{ "id": "6003139266461", "name": "Fitness" }],
58
+ "custom_audiences": [{ "id": "12345" }],
59
+ "targeting_automation": { "advantage_audience": 0 }
60
+ }
61
+ \`\`\``,
62
+ ad: `# Ad Schema
63
+
64
+ ## Required Fields
65
+ - \`name\` (string) — Ad name
66
+ - \`adset_id\` (string) — Parent ad set ID
67
+ - \`creative\` (object) — Creative reference: \`{ "creative_id": "CREATIVE_ID" }\`
68
+ - \`status\` (string) — ACTIVE, PAUSED
69
+
70
+ ## Optional Fields
71
+ - \`campaign_id\` (string) — Parent campaign ID (read-only, returned in responses)
72
+ - \`bid_amount\` (integer) — Override bid in cents
73
+ - \`tracking_specs\` (array) — Conversion tracking specs
74
+ - \`conversion_domain\` (string) — Domain for conversion tracking (iOS 14.5+)
75
+ - \`preview_shareable_link\` (string) — Shareable preview link (read-only)`,
76
+ adCreative: `# Ad Creative Schema
77
+
78
+ ## Required Fields
79
+ - \`name\` (string) — Creative name
80
+
81
+ ## Common Fields
82
+ - \`object_story_spec\` (object) — Creative content specification
83
+ - \`object_type\` (string) — Type of creative object (read-only)
84
+ - \`body\` / \`message\` (string) — Ad body text
85
+ - \`title\` / \`headline\` (string) — Headline
86
+ - \`description\` (string) — Description text
87
+ - \`link_url\` (string) — Destination URL
88
+ - \`url_tags\` (string) — URL tags appended to all links
89
+ - \`image_hash\` (string) — Uploaded image hash
90
+ - \`call_to_action_type\` (string) — LEARN_MORE, SHOP_NOW, SIGN_UP, etc.
91
+ - \`instagram_actor_id\` (string) — Instagram account for placements
92
+ - \`product_set_id\` (string) — Product set for catalog/dynamic ads
93
+
94
+ ## Dynamic Creative Fields
95
+ - \`asset_feed_spec\` (object) — Asset variations for dynamic creatives (images, videos, bodies, titles, descriptions, link_urls, ad_formats, call_to_action_types)
96
+ - \`dynamic_creative_spec\` (object) — Dynamic creative configuration
97
+ - \`degrees_of_freedom_spec\` (object) — Advantage+ creative optimization settings`,
98
+ customAudience: `# Custom Audience Schema
99
+
100
+ ## Required Fields
101
+ - \`name\` (string) — Audience name
102
+ - \`subtype\` (string) — CUSTOM, WEBSITE, APP, OFFLINE_CONVERSION, LOOKALIKE, etc.
103
+
104
+ ## Optional Fields
105
+ - \`description\` (string) — Audience description
106
+ - \`customer_file_source\` (string) — Data source type
107
+ - \`lookalike_spec\` (object) — For lookalike audiences`,
108
+ };
109
+ export const entitySchemaResources = getSupportedEntityTypes().map((entityType) => ({
110
+ uri: `entity-schema://${entityType}`,
111
+ name: `${getEntityConfig(entityType).displayName} Schema`,
112
+ description: `Field schema for Meta ${getEntityConfig(entityType).displayName} entities`,
113
+ mimeType: "text/markdown",
114
+ getContent: () => ENTITY_SCHEMAS[entityType] || `# ${entityType}\n\nSchema not yet documented.`,
115
+ }));
116
+ export const entitySchemaAllResource = {
117
+ uri: "entity-schema://all",
118
+ name: "All Meta Entity Schemas",
119
+ description: "Combined schema reference for all Meta Ads entity types",
120
+ mimeType: "text/markdown",
121
+ getContent: () => getSupportedEntityTypes()
122
+ .map((t) => ENTITY_SCHEMAS[t])
123
+ .join("\n\n---\n\n"),
124
+ };
125
+ //# sourceMappingURL=entity-schemas.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-schemas.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/entity-schemas.resource.ts"],"names":[],"mappings":"AASA,OAAO,EACL,uBAAuB,EACvB,eAAe,GAEhB,MAAM,qCAAqC,CAAC;AAE7C,MAAM,cAAc,GAAmC;IACrD,QAAQ,EAAE;;;;;;;;;;;;;;;;;;6CAkBiC;IAE3C,KAAK,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCF;IAEL,EAAE,EAAE;;;;;;;;;;;;;2EAaqE;IAEzE,UAAU,EAAE;;;;;;;;;;;;;;;;;;;;;mFAqBqE;IAEjF,cAAc,EAAE;;;;;;;;;wDASsC;CACvD,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAe,uBAAuB,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9F,GAAG,EAAE,mBAAmB,UAAU,EAAE;IACpC,IAAI,EAAE,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,SAAS;IACzD,WAAW,EAAE,yBAAyB,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,WAAW;IACxF,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU,gCAAgC;CAChG,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,MAAM,uBAAuB,GAAa;IAC/C,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE,yDAAyD;IACtE,QAAQ,EAAE,eAAe;IACzB,UAAU,EAAE,GAAG,EAAE,CACf,uBAAuB,EAAE;SACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;SAC7B,IAAI,CAAC,aAAa,CAAC;CACzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { TemplatedResourceDefinition } from "@cesteral/shared";
2
+ export declare const fieldRulesResource: TemplatedResourceDefinition;
3
+ //# sourceMappingURL=field-rules.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-rules.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/field-rules.resource.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAQpE,eAAO,MAAM,kBAAkB,EAAE,2BA4BhC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { getEntityTypeEnum, getSupportedEntityTypes, } from "../../tools/utils/entity-mapping.js";
2
+ import { getFieldRulesForEntity } from "../utils/field-rules.js";
3
+ export const fieldRulesResource = {
4
+ uriTemplate: "meta-field-rules://{entityType}",
5
+ name: "Meta Ads Field Rules",
6
+ description: "Required-field rules, enum suggestions, and read-only field list for a Meta Ads entity type. " +
7
+ `Valid {entityType}: ${getEntityTypeEnum().join(", ")}.`,
8
+ mimeType: "application/json",
9
+ resolveContent: (_uri, variables) => {
10
+ const raw = variables.entityType;
11
+ const entityType = (Array.isArray(raw) ? raw[0] : raw);
12
+ if (!entityType) {
13
+ throw new Error("meta-field-rules: missing {entityType} in URI");
14
+ }
15
+ if (!getSupportedEntityTypes().includes(entityType)) {
16
+ throw new Error(`meta-field-rules: unknown entityType "${entityType}". ` +
17
+ `Supported: ${getSupportedEntityTypes().join(", ")}.`);
18
+ }
19
+ return JSON.stringify(getFieldRulesForEntity(entityType), null, 2);
20
+ },
21
+ list: async () => getSupportedEntityTypes().map((t) => ({
22
+ uri: `meta-field-rules://${t}`,
23
+ name: `Meta Ads field rules — ${t}`,
24
+ description: `Required + enum + read-only fields for Meta ${t}`,
25
+ mimeType: "application/json",
26
+ })),
27
+ };
28
+ //# sourceMappingURL=field-rules.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-rules.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/field-rules.resource.ts"],"names":[],"mappings":"AAaA,OAAO,EACL,iBAAiB,EACjB,uBAAuB,GAExB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,CAAC,MAAM,kBAAkB,GAAgC;IAC7D,WAAW,EAAE,iCAAiC;IAC9C,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,+FAA+F;QAC/F,uBAAuB,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;IAC1D,QAAQ,EAAE,kBAAkB;IAC5B,cAAc,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;QAClC,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC;QACjC,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAA+B,CAAC;QACrF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,uBAAuB,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,yCAAyC,UAAU,KAAK;gBACtD,cAAc,uBAAuB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACxD,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,EAAE,KAAK,IAAI,EAAE,CACf,uBAAuB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,GAAG,EAAE,sBAAsB,CAAC,EAAE;QAC9B,IAAI,EAAE,0BAA0B,CAAC,EAAE;QACnC,WAAW,EAAE,+CAA+C,CAAC,EAAE;QAC/D,QAAQ,EAAE,kBAAkB;KAC7B,CAAC,CAAC;CACN,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { FindingBuffer, FindingStore, StaticResourceDefinition } from "@cesteral/shared";
2
+ interface FindingResourceDeps {
3
+ findingStore: FindingStore;
4
+ getFindingBuffer: () => FindingBuffer | undefined;
5
+ }
6
+ export declare function createFindingResources(deps: FindingResourceDeps): StaticResourceDefinition[];
7
+ export {};
8
+ //# sourceMappingURL=findings.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findings.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/findings.resource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE9F,UAAU,mBAAmB;IAC3B,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,MAAM,aAAa,GAAG,SAAS,CAAC;CACnD;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,mBAAmB,GAAG,wBAAwB,EAAE,CAmC5F"}
@@ -0,0 +1,33 @@
1
+ export function createFindingResources(deps) {
2
+ return [
3
+ {
4
+ uri: "findings://session/current",
5
+ name: "Current Session Findings",
6
+ description: "Evaluator findings buffered during the active session.",
7
+ mimeType: "application/json",
8
+ getContent: () => {
9
+ const buffer = deps.getFindingBuffer();
10
+ const findings = buffer?.getAll() ?? [];
11
+ return JSON.stringify({
12
+ findings,
13
+ count: findings.length,
14
+ }, null, 2);
15
+ },
16
+ },
17
+ {
18
+ uri: "findings://patterns/all",
19
+ name: "Detected Finding Patterns",
20
+ description: "Recurring evaluator issue patterns across persisted sessions.",
21
+ mimeType: "application/json",
22
+ getContent: async () => JSON.stringify(await deps.findingStore.getPatterns({}), null, 2),
23
+ },
24
+ {
25
+ uri: "findings://summary",
26
+ name: "Findings Summary",
27
+ description: "Aggregate finding counts by issue class/workflow with top patterns.",
28
+ mimeType: "application/json",
29
+ getContent: async () => JSON.stringify(await deps.findingStore.getSummary(), null, 2),
30
+ },
31
+ ];
32
+ }
33
+ //# sourceMappingURL=findings.resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findings.resource.js","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/findings.resource.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,sBAAsB,CAAC,IAAyB;IAC9D,OAAO;QACL;YACE,GAAG,EAAE,4BAA4B;YACjC,IAAI,EAAE,0BAA0B;YAChC,WAAW,EAAE,wDAAwD;YACrE,QAAQ,EAAE,kBAAkB;YAC5B,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,SAAS,CACnB;oBACE,QAAQ;oBACR,KAAK,EAAE,QAAQ,CAAC,MAAM;iBACvB,EACD,IAAI,EACJ,CAAC,CACF,CAAC;YACJ,CAAC;SACF;QACD;YACE,GAAG,EAAE,yBAAyB;YAC9B,IAAI,EAAE,2BAA2B;YACjC,WAAW,EAAE,+DAA+D;YAC5E,QAAQ,EAAE,kBAAkB;YAC5B,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzF;QACD;YACE,GAAG,EAAE,oBAAoB;YACzB,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE,kBAAkB;YAC5B,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;SACtF;KACF,CAAC;AACJ,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 { insightsReferenceResource } from "./insights-reference.resource.js";
5
+ export { targetingReferenceResource } from "./targeting-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,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAS/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA+D5C,eAAO,MAAM,YAAY,EAAE,QAAQ,EAUlC,CAAC"}
@@ -0,0 +1,81 @@
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 { insightsReferenceResource } from "./insights-reference.resource.js";
5
+ export { targetingReferenceResource } from "./targeting-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 { insightsReferenceResource } from "./insights-reference.resource.js";
10
+ import { targetingReferenceResource } from "./targeting-reference.resource.js";
11
+ import { allTools } from "../../tools/definitions/index.js";
12
+ import { createToolExamplesResource, createServerCapabilitiesResource } from "@cesteral/shared";
13
+ const toolExamplesResource = createToolExamplesResource(allTools, "meta-mcp");
14
+ const serverCapabilitiesResource = createServerCapabilitiesResource({
15
+ serverName: "meta-mcp",
16
+ allTools,
17
+ toolGroups: {
18
+ account: ["meta_list_ad_accounts"],
19
+ crud: [
20
+ "meta_list_entities",
21
+ "meta_get_entity",
22
+ "meta_create_entity",
23
+ "meta_update_entity",
24
+ "meta_delete_entity",
25
+ ],
26
+ insights: [
27
+ "meta_get_insights",
28
+ "meta_get_insights_breakdowns",
29
+ "meta_get_available_metrics",
30
+ "meta_get_pacing_status",
31
+ ],
32
+ reporting: ["meta_submit_report", "meta_check_report_status", "meta_download_report"],
33
+ bulk: [
34
+ "meta_bulk_update_status",
35
+ "meta_bulk_create_entities",
36
+ "meta_bulk_update_entities",
37
+ "meta_adjust_bids",
38
+ ],
39
+ targeting: ["meta_search_targeting", "meta_get_targeting_options"],
40
+ media: ["meta_upload_image", "meta_upload_video"],
41
+ budgetSchedules: ["meta_manage_budget_schedule"],
42
+ specialized: ["meta_duplicate_entity", "meta_get_delivery_estimate", "meta_get_ad_preview"],
43
+ validation: ["meta_validate_entity"],
44
+ discovery: ["meta_search_tools"],
45
+ },
46
+ commonWorkflows: [
47
+ "full_campaign_setup_workflow",
48
+ "performance_analysis",
49
+ "audience_targeting",
50
+ "async_reporting",
51
+ ],
52
+ discoveryFlow: [
53
+ "Read server-capabilities://meta-mcp/overview to choose a capability group.",
54
+ "Call meta_list_ad_accounts to discover accessible ad accounts.",
55
+ "Read entity-hierarchy://all and entity-schema://{entityType} before entity writes.",
56
+ "Read insights-reference://all before insights or async report tools.",
57
+ "Read targeting-reference://all before targeting search or audience estimation.",
58
+ "Use tool-examples://meta-mcp/all only when concrete payload examples are needed.",
59
+ ],
60
+ relatedResources: [
61
+ "entity-hierarchy://all",
62
+ "entity-schema://all",
63
+ "entity-examples://all",
64
+ "insights-reference://all",
65
+ "targeting-reference://all",
66
+ "tool-examples://meta-mcp/all",
67
+ ],
68
+ startHere: "meta_list_ad_accounts",
69
+ });
70
+ export const allResources = [
71
+ entityHierarchyResource,
72
+ entitySchemaAllResource,
73
+ ...entitySchemaResources,
74
+ entityExampleAllResource,
75
+ ...entityExampleResources,
76
+ insightsReferenceResource,
77
+ targetingReferenceResource,
78
+ ...(toolExamplesResource ? [toolExamplesResource] : []),
79
+ serverCapabilitiesResource,
80
+ ];
81
+ //# 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,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E,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,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAC7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC/E,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,UAAU,CAAC,CAAC;AAC9E,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;IAClE,UAAU,EAAE,UAAU;IACtB,QAAQ;IACR,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,uBAAuB,CAAC;QAClC,IAAI,EAAE;YACJ,oBAAoB;YACpB,iBAAiB;YACjB,oBAAoB;YACpB,oBAAoB;YACpB,oBAAoB;SACrB;QACD,QAAQ,EAAE;YACR,mBAAmB;YACnB,8BAA8B;YAC9B,4BAA4B;YAC5B,wBAAwB;SACzB;QACD,SAAS,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,sBAAsB,CAAC;QACrF,IAAI,EAAE;YACJ,yBAAyB;YACzB,2BAA2B;YAC3B,2BAA2B;YAC3B,kBAAkB;SACnB;QACD,SAAS,EAAE,CAAC,uBAAuB,EAAE,4BAA4B,CAAC;QAClE,KAAK,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;QACjD,eAAe,EAAE,CAAC,6BAA6B,CAAC;QAChD,WAAW,EAAE,CAAC,uBAAuB,EAAE,4BAA4B,EAAE,qBAAqB,CAAC;QAC3F,UAAU,EAAE,CAAC,sBAAsB,CAAC;QACpC,SAAS,EAAE,CAAC,mBAAmB,CAAC;KACjC;IACD,eAAe,EAAE;QACf,8BAA8B;QAC9B,sBAAsB;QACtB,oBAAoB;QACpB,iBAAiB;KAClB;IACD,aAAa,EAAE;QACb,4EAA4E;QAC5E,gEAAgE;QAChE,oFAAoF;QACpF,sEAAsE;QACtE,gFAAgF;QAChF,kFAAkF;KACnF;IACD,gBAAgB,EAAE;QAChB,wBAAwB;QACxB,qBAAqB;QACrB,uBAAuB;QACvB,0BAA0B;QAC1B,2BAA2B;QAC3B,8BAA8B;KAC/B;IACD,SAAS,EAAE,uBAAuB;CACnC,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,YAAY,GAAe;IACtC,uBAAuB;IACvB,uBAAuB;IACvB,GAAG,qBAAqB;IACxB,wBAAwB;IACxB,GAAG,sBAAsB;IACzB,yBAAyB;IACzB,0BAA0B;IAC1B,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 insightsReferenceResource: Resource;
3
+ //# sourceMappingURL=insights-reference.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insights-reference.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/insights-reference.resource.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,yBAAyB,EAAE,QAgHvC,CAAC"}