@cesteral/linkedin-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 (259) hide show
  1. package/LICENSE.md +201 -0
  2. package/README.md +304 -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/linkedin-auth-adapter.d.ts +38 -0
  8. package/dist/auth/linkedin-auth-adapter.d.ts.map +1 -0
  9. package/dist/auth/linkedin-auth-adapter.js +110 -0
  10. package/dist/auth/linkedin-auth-adapter.js.map +1 -0
  11. package/dist/auth/linkedin-auth-strategy.d.ts +14 -0
  12. package/dist/auth/linkedin-auth-strategy.d.ts.map +1 -0
  13. package/dist/auth/linkedin-auth-strategy.js +50 -0
  14. package/dist/auth/linkedin-auth-strategy.js.map +1 -0
  15. package/dist/config/index.d.ts +100 -0
  16. package/dist/config/index.d.ts.map +1 -0
  17. package/dist/config/index.js +37 -0
  18. package/dist/config/index.js.map +1 -0
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +40 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/mcp-server/prompts/definitions/analytics-reporting-workflow.prompt.d.ts +4 -0
  24. package/dist/mcp-server/prompts/definitions/analytics-reporting-workflow.prompt.d.ts.map +1 -0
  25. package/dist/mcp-server/prompts/definitions/analytics-reporting-workflow.prompt.js +108 -0
  26. package/dist/mcp-server/prompts/definitions/analytics-reporting-workflow.prompt.js.map +1 -0
  27. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts +4 -0
  28. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts.map +1 -0
  29. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js +177 -0
  30. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js.map +1 -0
  31. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts +4 -0
  32. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts.map +1 -0
  33. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js +171 -0
  34. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js.map +1 -0
  35. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts +4 -0
  36. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts.map +1 -0
  37. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js +109 -0
  38. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js.map +1 -0
  39. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
  40. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
  41. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
  42. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
  43. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
  44. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
  45. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
  46. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
  47. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts +4 -0
  48. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts.map +1 -0
  49. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js +213 -0
  50. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js.map +1 -0
  51. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts +4 -0
  52. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts.map +1 -0
  53. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js +151 -0
  54. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js.map +1 -0
  55. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts +4 -0
  56. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts.map +1 -0
  57. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js +217 -0
  58. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js.map +1 -0
  59. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts +4 -0
  60. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts.map +1 -0
  61. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js +98 -0
  62. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js.map +1 -0
  63. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts +4 -0
  64. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts.map +1 -0
  65. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js +91 -0
  66. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js.map +1 -0
  67. package/dist/mcp-server/prompts/index.d.ts +9 -0
  68. package/dist/mcp-server/prompts/index.d.ts.map +1 -0
  69. package/dist/mcp-server/prompts/index.js +97 -0
  70. package/dist/mcp-server/prompts/index.js.map +1 -0
  71. package/dist/mcp-server/resources/definitions/analytics-reference.resource.d.ts +3 -0
  72. package/dist/mcp-server/resources/definitions/analytics-reference.resource.d.ts.map +1 -0
  73. package/dist/mcp-server/resources/definitions/analytics-reference.resource.js +162 -0
  74. package/dist/mcp-server/resources/definitions/analytics-reference.resource.js.map +1 -0
  75. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts +4 -0
  76. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts.map +1 -0
  77. package/dist/mcp-server/resources/definitions/entity-examples.resource.js +164 -0
  78. package/dist/mcp-server/resources/definitions/entity-examples.resource.js.map +1 -0
  79. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts +3 -0
  80. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts.map +1 -0
  81. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js +144 -0
  82. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js.map +1 -0
  83. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts +4 -0
  84. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts.map +1 -0
  85. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js +127 -0
  86. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js.map +1 -0
  87. package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
  88. package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
  89. package/dist/mcp-server/resources/definitions/index.js +54 -0
  90. package/dist/mcp-server/resources/definitions/index.js.map +1 -0
  91. package/dist/mcp-server/resources/definitions/targeting-reference.resource.d.ts +3 -0
  92. package/dist/mcp-server/resources/definitions/targeting-reference.resource.d.ts.map +1 -0
  93. package/dist/mcp-server/resources/definitions/targeting-reference.resource.js +122 -0
  94. package/dist/mcp-server/resources/definitions/targeting-reference.resource.js.map +1 -0
  95. package/dist/mcp-server/resources/index.d.ts +3 -0
  96. package/dist/mcp-server/resources/index.d.ts.map +1 -0
  97. package/dist/mcp-server/resources/index.js +2 -0
  98. package/dist/mcp-server/resources/index.js.map +1 -0
  99. package/dist/mcp-server/resources/types.d.ts +8 -0
  100. package/dist/mcp-server/resources/types.d.ts.map +1 -0
  101. package/dist/mcp-server/resources/types.js +2 -0
  102. package/dist/mcp-server/resources/types.js.map +1 -0
  103. package/dist/mcp-server/server.d.ts +5 -0
  104. package/dist/mcp-server/server.d.ts.map +1 -0
  105. package/dist/mcp-server/server.js +128 -0
  106. package/dist/mcp-server/server.js.map +1 -0
  107. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts +213 -0
  108. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts.map +1 -0
  109. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js +174 -0
  110. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js.map +1 -0
  111. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts +128 -0
  112. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts.map +1 -0
  113. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js +95 -0
  114. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js.map +1 -0
  115. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts +183 -0
  116. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.d.ts.map +1 -0
  117. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js +122 -0
  118. package/dist/mcp-server/tools/definitions/bulk-update-entities.tool.js.map +1 -0
  119. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts +140 -0
  120. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts.map +1 -0
  121. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js +109 -0
  122. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js.map +1 -0
  123. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts +117 -0
  124. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/definitions/create-entity.tool.js +98 -0
  126. package/dist/mcp-server/tools/definitions/create-entity.tool.js.map +1 -0
  127. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts +93 -0
  128. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/definitions/delete-entity.tool.js +100 -0
  130. package/dist/mcp-server/tools/definitions/delete-entity.tool.js.map +1 -0
  131. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts +95 -0
  132. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js +89 -0
  134. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js.map +1 -0
  135. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts +75 -0
  136. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js +68 -0
  138. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js.map +1 -0
  139. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts +75 -0
  140. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts.map +1 -0
  141. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js +71 -0
  142. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js.map +1 -0
  143. package/dist/mcp-server/tools/definitions/get-analytics-breakdowns.tool.d.ts +223 -0
  144. package/dist/mcp-server/tools/definitions/get-analytics-breakdowns.tool.d.ts.map +1 -0
  145. package/dist/mcp-server/tools/definitions/get-analytics-breakdowns.tool.js +152 -0
  146. package/dist/mcp-server/tools/definitions/get-analytics-breakdowns.tool.js.map +1 -0
  147. package/dist/mcp-server/tools/definitions/get-analytics.tool.d.ts +325 -0
  148. package/dist/mcp-server/tools/definitions/get-analytics.tool.d.ts.map +1 -0
  149. package/dist/mcp-server/tools/definitions/get-analytics.tool.js +154 -0
  150. package/dist/mcp-server/tools/definitions/get-analytics.tool.js.map +1 -0
  151. package/dist/mcp-server/tools/definitions/get-delivery-forecast.tool.d.ts +95 -0
  152. package/dist/mcp-server/tools/definitions/get-delivery-forecast.tool.d.ts.map +1 -0
  153. package/dist/mcp-server/tools/definitions/get-delivery-forecast.tool.js +90 -0
  154. package/dist/mcp-server/tools/definitions/get-delivery-forecast.tool.js.map +1 -0
  155. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts +75 -0
  156. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts.map +1 -0
  157. package/dist/mcp-server/tools/definitions/get-entity.tool.js +75 -0
  158. package/dist/mcp-server/tools/definitions/get-entity.tool.js.map +1 -0
  159. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts +81 -0
  160. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts.map +1 -0
  161. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js +76 -0
  162. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js.map +1 -0
  163. package/dist/mcp-server/tools/definitions/index.d.ts +23 -0
  164. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
  165. package/dist/mcp-server/tools/definitions/index.js +69 -0
  166. package/dist/mcp-server/tools/definitions/index.js.map +1 -0
  167. package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.d.ts +141 -0
  168. package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.d.ts.map +1 -0
  169. package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.js +84 -0
  170. package/dist/mcp-server/tools/definitions/list-ad-accounts.tool.js.map +1 -0
  171. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts +165 -0
  172. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts.map +1 -0
  173. package/dist/mcp-server/tools/definitions/list-entities.tool.js +112 -0
  174. package/dist/mcp-server/tools/definitions/list-entities.tool.js.map +1 -0
  175. package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts +102 -0
  176. package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts.map +1 -0
  177. package/dist/mcp-server/tools/definitions/search-targeting.tool.js +98 -0
  178. package/dist/mcp-server/tools/definitions/search-targeting.tool.js.map +1 -0
  179. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts +104 -0
  180. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts.map +1 -0
  181. package/dist/mcp-server/tools/definitions/update-entity.tool.js +88 -0
  182. package/dist/mcp-server/tools/definitions/update-entity.tool.js.map +1 -0
  183. package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts +75 -0
  184. package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts.map +1 -0
  185. package/dist/mcp-server/tools/definitions/upload-image.tool.js +99 -0
  186. package/dist/mcp-server/tools/definitions/upload-image.tool.js.map +1 -0
  187. package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts +69 -0
  188. package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts.map +1 -0
  189. package/dist/mcp-server/tools/definitions/upload-video.tool.js +98 -0
  190. package/dist/mcp-server/tools/definitions/upload-video.tool.js.map +1 -0
  191. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts +168 -0
  192. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts.map +1 -0
  193. package/dist/mcp-server/tools/definitions/validate-entity.tool.js +200 -0
  194. package/dist/mcp-server/tools/definitions/validate-entity.tool.js.map +1 -0
  195. package/dist/mcp-server/tools/index.d.ts +2 -0
  196. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  197. package/dist/mcp-server/tools/index.js +2 -0
  198. package/dist/mcp-server/tools/index.js.map +1 -0
  199. package/dist/mcp-server/tools/utils/entity-mapping.d.ts +13 -0
  200. package/dist/mcp-server/tools/utils/entity-mapping.d.ts.map +1 -0
  201. package/dist/mcp-server/tools/utils/entity-mapping.js +68 -0
  202. package/dist/mcp-server/tools/utils/entity-mapping.js.map +1 -0
  203. package/dist/mcp-server/tools/utils/media-types.d.ts +12 -0
  204. package/dist/mcp-server/tools/utils/media-types.d.ts.map +1 -0
  205. package/dist/mcp-server/tools/utils/media-types.js +2 -0
  206. package/dist/mcp-server/tools/utils/media-types.js.map +1 -0
  207. package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
  208. package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
  209. package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
  210. package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
  211. package/dist/mcp-server/transports/streamable-http-transport.d.ts +49 -0
  212. package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
  213. package/dist/mcp-server/transports/streamable-http-transport.js +91 -0
  214. package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
  215. package/dist/services/linkedin/linkedin-http-client.d.ts +20 -0
  216. package/dist/services/linkedin/linkedin-http-client.d.ts.map +1 -0
  217. package/dist/services/linkedin/linkedin-http-client.js +147 -0
  218. package/dist/services/linkedin/linkedin-http-client.js.map +1 -0
  219. package/dist/services/linkedin/linkedin-reporting-service.d.ts +26 -0
  220. package/dist/services/linkedin/linkedin-reporting-service.d.ts.map +1 -0
  221. package/dist/services/linkedin/linkedin-reporting-service.js +69 -0
  222. package/dist/services/linkedin/linkedin-reporting-service.js.map +1 -0
  223. package/dist/services/linkedin/linkedin-service.d.ts +84 -0
  224. package/dist/services/linkedin/linkedin-service.d.ts.map +1 -0
  225. package/dist/services/linkedin/linkedin-service.js +195 -0
  226. package/dist/services/linkedin/linkedin-service.js.map +1 -0
  227. package/dist/services/linkedin/types.d.ts +166 -0
  228. package/dist/services/linkedin/types.d.ts.map +1 -0
  229. package/dist/services/linkedin/types.js +31 -0
  230. package/dist/services/linkedin/types.js.map +1 -0
  231. package/dist/services/session-services.d.ts +18 -0
  232. package/dist/services/session-services.d.ts.map +1 -0
  233. package/dist/services/session-services.js +16 -0
  234. package/dist/services/session-services.js.map +1 -0
  235. package/dist/types-global/mcp.d.ts +2 -0
  236. package/dist/types-global/mcp.d.ts.map +1 -0
  237. package/dist/types-global/mcp.js +2 -0
  238. package/dist/types-global/mcp.js.map +1 -0
  239. package/dist/utils/errors/index.d.ts +2 -0
  240. package/dist/utils/errors/index.d.ts.map +1 -0
  241. package/dist/utils/errors/index.js +2 -0
  242. package/dist/utils/errors/index.js.map +1 -0
  243. package/dist/utils/platform.d.ts +3 -0
  244. package/dist/utils/platform.d.ts.map +1 -0
  245. package/dist/utils/platform.js +5 -0
  246. package/dist/utils/platform.js.map +1 -0
  247. package/dist/utils/security/rate-limiter.d.ts +3 -0
  248. package/dist/utils/security/rate-limiter.d.ts.map +1 -0
  249. package/dist/utils/security/rate-limiter.js +5 -0
  250. package/dist/utils/security/rate-limiter.js.map +1 -0
  251. package/dist/utils/telemetry/index.d.ts +2 -0
  252. package/dist/utils/telemetry/index.d.ts.map +1 -0
  253. package/dist/utils/telemetry/index.js +2 -0
  254. package/dist/utils/telemetry/index.js.map +1 -0
  255. package/dist/utils/telemetry/tracing.d.ts +3 -0
  256. package/dist/utils/telemetry/tracing.d.ts.map +1 -0
  257. package/dist/utils/telemetry/tracing.js +4 -0
  258. package/dist/utils/telemetry/tracing.js.map +1 -0
  259. package/package.json +55 -0
@@ -0,0 +1,217 @@
1
+ export const linkedInTargetingDiscoveryWorkflowPrompt = {
2
+ name: "linkedin_targeting_discovery_workflow",
3
+ description: "Step-by-step guide for researching LinkedIn audiences: search facets, browse categories, build targeting criteria, and estimate delivery before campaign creation.",
4
+ arguments: [
5
+ {
6
+ name: "adAccountUrn",
7
+ description: "LinkedIn Ad Account URN",
8
+ required: true,
9
+ },
10
+ {
11
+ name: "goal",
12
+ description: "Research goal: 'search' (find by keyword), 'browse' (explore categories), or 'build' (assemble targeting). Default: search",
13
+ required: false,
14
+ },
15
+ ],
16
+ };
17
+ export function getLinkedInTargetingDiscoveryWorkflowMessage(args) {
18
+ const adAccountUrn = args?.adAccountUrn || "{adAccountUrn}";
19
+ const goal = args?.goal || "search";
20
+ return `# LinkedIn Targeting Discovery Workflow
21
+
22
+ Ad Account: \`${adAccountUrn}\`
23
+ Goal: \`${goal}\`
24
+
25
+ ---
26
+
27
+ ## Overview
28
+
29
+ Before creating campaigns, you need to build a **targetingCriteria** object — the JSON structure that defines your LinkedIn audience. This workflow helps you discover and validate targeting options.
30
+
31
+ | Tool | Purpose | Use When |
32
+ |------|---------|----------|
33
+ | \`linkedin_search_targeting\` | Search by keyword | You know the audience you want |
34
+ | \`linkedin_get_targeting_options\` | Browse available facets | You want to explore what's available |
35
+ | \`linkedin_get_delivery_forecast\` | Estimate audience size | Before committing to targeting |
36
+
37
+ ---
38
+
39
+ ## Step 1: Search Targeting Facets
40
+
41
+ Search for targeting options by keyword:
42
+
43
+ \`\`\`json
44
+ {
45
+ "tool": "linkedin_search_targeting",
46
+ "params": {
47
+ "facetType": "MEMBER_SKILLS",
48
+ "query": "machine learning",
49
+ "limit": 10
50
+ }
51
+ }
52
+ \`\`\`
53
+
54
+ Each result includes:
55
+ - \`urn\` — The targeting URN to use in targetingCriteria
56
+ - \`name\` — Human-readable label
57
+
58
+ ### Key Facet Types
59
+
60
+ | Facet Type | What It Searches | Example Query |
61
+ |------------|-----------------|---------------|
62
+ | \`MEMBER_SKILLS\` | Professional skills | "python", "data science" |
63
+ | \`MEMBER_SENIORITY\` | Seniority levels | "Director", "VP" |
64
+ | \`MEMBER_JOB_FUNCTION\` | Job functions | "Engineering", "Marketing" |
65
+ | \`MEMBER_INDUSTRY\` | Industries | "Technology", "Finance" |
66
+ | \`MEMBER_COMPANY_SIZE\` | Company sizes | "201-500", "1001-5000" |
67
+ | \`GEOS\` | Geographic locations | "United States", "London" |
68
+ | \`MEMBER_INTERESTS\` | Interest groups | "AI", "Startups" |
69
+ | \`COMPANIES\` | Specific companies | "Microsoft", "Google" |
70
+
71
+ ---
72
+
73
+ ## Step 2: Browse Targeting Categories
74
+
75
+ To explore all available targeting facets for your account:
76
+
77
+ \`\`\`json
78
+ {
79
+ "tool": "linkedin_get_targeting_options",
80
+ "params": {
81
+ "adAccountUrn": "${adAccountUrn}"
82
+ }
83
+ }
84
+ \`\`\`
85
+
86
+ Filter by facet type:
87
+
88
+ \`\`\`json
89
+ {
90
+ "tool": "linkedin_get_targeting_options",
91
+ "params": {
92
+ "adAccountUrn": "${adAccountUrn}",
93
+ "facetType": "MEMBER_SENIORITY"
94
+ }
95
+ }
96
+ \`\`\`
97
+
98
+ ---
99
+
100
+ ## Step 3: Build the Targeting Criteria
101
+
102
+ Combine your research into a \`targetingCriteria\` object:
103
+
104
+ ### Skills + Seniority + Location Example
105
+
106
+ \`\`\`json
107
+ {
108
+ "targetingCriteria": {
109
+ "include": {
110
+ "and": [
111
+ {
112
+ "or": {
113
+ "urn:li:adTargetingFacet:geos": [
114
+ "urn:li:geo:103644278"
115
+ ]
116
+ }
117
+ },
118
+ {
119
+ "or": {
120
+ "urn:li:adTargetingFacet:memberSeniorities": [
121
+ "urn:li:adSeniority:5",
122
+ "urn:li:adSeniority:6"
123
+ ]
124
+ }
125
+ },
126
+ {
127
+ "or": {
128
+ "urn:li:adTargetingFacet:skills": [
129
+ "urn:li:skill:1234",
130
+ "urn:li:skill:5678"
131
+ ]
132
+ }
133
+ }
134
+ ]
135
+ },
136
+ "exclude": {
137
+ "or": {
138
+ "urn:li:adTargetingFacet:memberSeniorities": [
139
+ "urn:li:adSeniority:1"
140
+ ]
141
+ }
142
+ }
143
+ }
144
+ }
145
+ \`\`\`
146
+
147
+ ### Structure Rules
148
+
149
+ - Top-level \`include.and\` → ALL conditions must match (AND logic between facets)
150
+ - Within each \`or\` block → ANY value matches (OR logic within a facet)
151
+ - \`exclude\` → Audience members matching these are excluded
152
+
153
+ ---
154
+
155
+ ## Step 4: Estimate Delivery
156
+
157
+ Before creating the campaign, verify your targeting reaches a viable audience:
158
+
159
+ \`\`\`json
160
+ {
161
+ "tool": "linkedin_get_delivery_forecast",
162
+ "params": {
163
+ "adAccountUrn": "${adAccountUrn}",
164
+ "targetingCriteria": {
165
+ "include": {
166
+ "and": [
167
+ {
168
+ "or": {
169
+ "urn:li:adTargetingFacet:geos": ["urn:li:geo:103644278"]
170
+ }
171
+ }
172
+ ]
173
+ }
174
+ }
175
+ }
176
+ }
177
+ \`\`\`
178
+
179
+ Interpret results:
180
+ - **Too narrow** (< 1,000 reach) → Broaden facets or add more locations
181
+ - **Too broad** (> 1M reach) → Add more specific facets or seniority filters
182
+ - **Sweet spot**: 50K–500K for most B2B campaigns
183
+
184
+ ---
185
+
186
+ ## Step 5: Apply to Campaign
187
+
188
+ Use the targeting criteria when creating or updating a campaign:
189
+
190
+ \`\`\`json
191
+ {
192
+ "tool": "linkedin_update_entity",
193
+ "params": {
194
+ "entityType": "campaign",
195
+ "entityUrn": "urn:li:sponsoredCampaign:{campaignId}",
196
+ "data": {
197
+ "targetingCriteria": {
198
+ "include": { ... }
199
+ }
200
+ }
201
+ }
202
+ }
203
+ \`\`\`
204
+
205
+ ⚠️ **GOTCHA**: Targeting updates **replace entirely**. Always send the complete targetingCriteria object.
206
+
207
+ ⚠️ **GOTCHA**: All URNs must be exact — use the \`urn\` field from search results, not display names.
208
+
209
+ ---
210
+
211
+ ## Related Resources
212
+ - \`targeting-reference://linkedin\` — Full targeting facets reference
213
+ - \`entity-schema://linkedin/campaign\` — Campaign fields including targetingCriteria
214
+ - \`entity-examples://linkedin/campaign\` — Example campaign payloads with targeting
215
+ `;
216
+ }
217
+ //# sourceMappingURL=targeting-discovery-workflow.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"targeting-discovery-workflow.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,wCAAwC,GAAW;IAC9D,IAAI,EAAE,uCAAuC;IAC7C,WAAW,EACT,oKAAoK;IACtK,SAAS,EAAE;QACT;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,MAAM;YACZ,WAAW,EACT,4HAA4H;YAC9H,QAAQ,EAAE,KAAK;SAChB;KACF;CACF,CAAC;AAEF,MAAM,UAAU,4CAA4C,CAC1D,IAA6B;IAE7B,MAAM,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,gBAAgB,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,QAAQ,CAAC;IAEpC,OAAO;;gBAEO,YAAY;UAClB,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA0DS,YAAY;;;;;;;;;;;uBAWZ,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAuEZ,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDlC,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const linkedInToolSchemaExplorationPrompt: Prompt;
3
+ export declare function getLinkedInToolSchemaExplorationMessage(args?: Record<string, string>): string;
4
+ //# sourceMappingURL=tool-schema-exploration.prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schema-exploration.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/tool-schema-exploration.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,mCAAmC,EAAE,MAWjD,CAAC;AAEF,wBAAgB,uCAAuC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAsF7F"}
@@ -0,0 +1,98 @@
1
+ export const linkedInToolSchemaExplorationPrompt = {
2
+ name: "linkedin_tool_schema_exploration",
3
+ description: "Guide for discovering and understanding LinkedIn MCP tools, resources, and schemas",
4
+ arguments: [
5
+ {
6
+ name: "objective",
7
+ description: "Exploration objective (e.g., campaign management, analytics, targeting, bulk operations)",
8
+ required: false,
9
+ },
10
+ ],
11
+ };
12
+ export function getLinkedInToolSchemaExplorationMessage(args) {
13
+ const objective = args?.objective || "general capability discovery";
14
+ return `# LinkedIn MCP Tool & Schema Exploration Guide
15
+
16
+ ## Context
17
+ - Server: linkedin-mcp (LinkedIn Ads Campaign Management)
18
+ - Objective: ${objective}
19
+
20
+ Use this workflow to discover LinkedIn MCP capabilities while minimizing token usage.
21
+
22
+ ---
23
+
24
+ ## Available MCP Resources
25
+
26
+ Fetch these resources for detailed schema information:
27
+
28
+ | Resource URI | Content |
29
+ |-------------|---------|
30
+ | \`entity-hierarchy://linkedin/all\` | Entity relationships, API patterns, creation order |
31
+ | \`entity-schema://linkedin/adAccount\` | Ad Account fields |
32
+ | \`entity-schema://linkedin/campaignGroup\` | Campaign Group fields |
33
+ | \`entity-schema://linkedin/campaign\` | Campaign fields + targeting criteria |
34
+ | \`entity-schema://linkedin/creative\` | Creative fields |
35
+ | \`entity-schema://linkedin/conversionRule\` | Conversion Rule fields |
36
+ | \`entity-examples://linkedin/all\` | All entity examples |
37
+ | \`entity-examples://linkedin/{type}\` | Examples for specific type |
38
+ | \`analytics-reference://linkedin\` | Metrics, pivots, time granularities |
39
+ | \`targeting-reference://linkedin\` | Targeting facets and URN formats |
40
+
41
+ ## Tool Categories
42
+
43
+ ### Read Operations
44
+ - \`linkedin_list_ad_accounts\` — Discover accessible accounts
45
+ - \`linkedin_list_entities\` — List entities with offset pagination
46
+ - \`linkedin_get_entity\` — Get single entity by URN
47
+
48
+ ### Write Operations
49
+ - \`linkedin_create_entity\` — Create entity
50
+ - \`linkedin_update_entity\` — Update entity (PATCH semantics)
51
+ - \`linkedin_delete_entity\` — Delete entity
52
+
53
+ ### Analytics
54
+ - \`linkedin_get_analytics\` — Delivery metrics via /v2/adAnalytics
55
+ - \`linkedin_get_analytics_breakdowns\` — Metrics with dimensional breakdowns
56
+
57
+ ### Bulk Operations
58
+ - \`linkedin_bulk_update_status\` — Batch status updates
59
+ - \`linkedin_bulk_create_entities\` — Batch creation (up to 50)
60
+ - \`linkedin_bulk_update_entities\` — Batch updates (up to 50)
61
+ - \`linkedin_adjust_bids\` — Batch adjust campaign bids
62
+
63
+ ### Targeting
64
+ - \`linkedin_search_targeting\` — Search audience facets (skills, companies, locations)
65
+ - \`linkedin_get_targeting_options\` — Browse targeting categories
66
+
67
+ ### Specialized
68
+ - \`linkedin_duplicate_entity\` — Copy campaign groups, campaigns, creatives
69
+ - \`linkedin_get_delivery_forecast\` — Audience/delivery forecast
70
+ - \`linkedin_get_ad_preview\` — Ad preview rendering
71
+
72
+ ### Validation
73
+ - \`linkedin_validate_entity\` — Client-side entity validation
74
+
75
+ ### Discovery
76
+ - \`linkedin_search_tools\` — Rank server tools by a natural-language query
77
+
78
+ ## Workflow Prompts
79
+
80
+ | Task | Prompt |
81
+ |------|--------|
82
+ | Create a full campaign structure | \`linkedin_campaign_setup_workflow\` |
83
+ | Research audiences & build targeting | \`linkedin_targeting_discovery_workflow\` |
84
+ | Update entities safely | \`linkedin_entity_update_workflow\` |
85
+ | Duplicate campaigns/groups/creatives | \`linkedin_entity_duplication_workflow\` |
86
+ | Bulk create/update/status/bids | \`linkedin_bulk_operations_workflow\` |
87
+ | Analytics & breakdowns reporting | \`linkedin_analytics_reporting_workflow\` |
88
+ | Troubleshoot entity issues | \`linkedin_troubleshoot_entity\` |
89
+
90
+ ## Recommended Exploration Order
91
+
92
+ 1. Start with \`linkedin_list_ad_accounts\` to find your account
93
+ 2. Fetch \`entity-hierarchy://linkedin/all\` for API patterns and URN formats
94
+ 3. Fetch \`entity-schema://linkedin/{type}\` for field details
95
+ 4. Fetch \`entity-examples://linkedin/{type}\` for payload templates
96
+ `;
97
+ }
98
+ //# sourceMappingURL=tool-schema-exploration.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schema-exploration.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/tool-schema-exploration.prompt.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,mCAAmC,GAAW;IACzD,IAAI,EAAE,kCAAkC;IACxC,WAAW,EAAE,oFAAoF;IACjG,SAAS,EAAE;QACT;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EACT,0FAA0F;YAC5F,QAAQ,EAAE,KAAK;SAChB;KACF;CACF,CAAC;AAEF,MAAM,UAAU,uCAAuC,CAAC,IAA6B;IACnF,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,8BAA8B,CAAC;IAEpE,OAAO;;;;eAIM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8EvB,CAAC;AACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export declare const linkedInTroubleshootEntityPrompt: Prompt;
3
+ export declare function getLinkedInTroubleshootEntityMessage(args?: Record<string, string>): string;
4
+ //# sourceMappingURL=troubleshoot-entity.prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"troubleshoot-entity.prompt.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/troubleshoot-entity.prompt.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AAEjE,eAAO,MAAM,gCAAgC,EAAE,MAe9C,CAAC;AAEF,wBAAgB,oCAAoC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CA0E1F"}
@@ -0,0 +1,91 @@
1
+ export const linkedInTroubleshootEntityPrompt = {
2
+ name: "linkedin_troubleshoot_entity",
3
+ description: "Diagnostic workflow for troubleshooting LinkedIn Ads entity issues",
4
+ arguments: [
5
+ {
6
+ name: "entityType",
7
+ description: "Entity type (campaignGroup, campaign, creative, conversionRule)",
8
+ required: true,
9
+ },
10
+ {
11
+ name: "entityUrn",
12
+ description: "Entity URN to troubleshoot (e.g., urn:li:sponsoredCampaign:123)",
13
+ required: true,
14
+ },
15
+ ],
16
+ };
17
+ export function getLinkedInTroubleshootEntityMessage(args) {
18
+ const entityType = args?.entityType || "{entityType}";
19
+ const entityUrn = args?.entityUrn || "{entityUrn}";
20
+ return `# LinkedIn Entity Troubleshoot Workflow
21
+
22
+ ## Target: ${entityType} ${entityUrn}
23
+
24
+ ## Step 1: Fetch Entity Details
25
+
26
+ \`\`\`json
27
+ linkedin_get_entity({
28
+ "entityType": "${entityType}",
29
+ "entityUrn": "${entityUrn}"
30
+ })
31
+ \`\`\`
32
+
33
+ Check: status, review status, serving status, and any rejection reasons.
34
+
35
+ ## Step 2: Check Recent Analytics
36
+
37
+ \`\`\`json
38
+ linkedin_get_analytics({
39
+ "adAccountUrn": "urn:li:sponsoredAccount:{accountId}",
40
+ "startDate": "2026-02-01",
41
+ "endDate": "2026-03-07",
42
+ "metrics": ["impressions", "clicks", "costInUsd", "conversions"],
43
+ "pivot": "CAMPAIGN",
44
+ "campaigns": ["${entityUrn}"]
45
+ })
46
+ \`\`\`
47
+
48
+ ## Step 3: Check Parent Entity
49
+
50
+ If campaign or creative, check parent status:
51
+ \`\`\`json
52
+ linkedin_get_entity({
53
+ "entityType": "campaignGroup",
54
+ "entityUrn": "urn:li:sponsoredCampaignGroup:{groupId}"
55
+ })
56
+ \`\`\`
57
+
58
+ ## Common Issues
59
+
60
+ | Symptom | Likely Cause | Fix |
61
+ |---------|-------------|-----|
62
+ | No delivery | Entity PAUSED | Update status to ACTIVE |
63
+ | No delivery, ACTIVE | Parent group paused | Activate parent campaign group |
64
+ | No delivery, all ACTIVE | Budget exhausted | Increase budget or check flight dates |
65
+ | No delivery, budget OK | Targeting too narrow | Broaden targeting or check forecast |
66
+ | Creative pending | LinkedIn review in progress | Allow 24-48h for creative review |
67
+ | Creative rejected | Policy violation | Review content guidelines, update creative |
68
+ | No impressions | Missing targeting criteria | Add targeting to the campaign |
69
+ | Low reach | Audience too restrictive | Expand facets or remove exclusions |
70
+
71
+ ## Step 4: Delivery Forecast (for campaigns)
72
+
73
+ \`\`\`json
74
+ linkedin_get_delivery_forecast({
75
+ "adAccountUrn": "urn:li:sponsoredAccount:{accountId}",
76
+ "targetingCriteria": { ... targeting from campaign ... }
77
+ })
78
+ \`\`\`
79
+
80
+ ## Step 5: Validate Payload
81
+
82
+ \`\`\`json
83
+ linkedin_validate_entity({
84
+ "entityType": "${entityType}",
85
+ "mode": "update",
86
+ "data": { ... current entity data ... }
87
+ })
88
+ \`\`\`
89
+ `;
90
+ }
91
+ //# sourceMappingURL=troubleshoot-entity.prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"troubleshoot-entity.prompt.js","sourceRoot":"","sources":["../../../../src/mcp-server/prompts/definitions/troubleshoot-entity.prompt.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,gCAAgC,GAAW;IACtD,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE,oEAAoE;IACjF,SAAS,EAAE;QACT;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,iEAAiE;YAC9E,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,iEAAiE;YAC9E,QAAQ,EAAE,IAAI;SACf;KACF;CACF,CAAC;AAEF,MAAM,UAAU,oCAAoC,CAAC,IAA6B;IAChF,MAAM,UAAU,GAAG,IAAI,EAAE,UAAU,IAAI,cAAc,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,aAAa,CAAC;IAEnD,OAAO;;aAEI,UAAU,IAAI,SAAS;;;;;;mBAMjB,UAAU;kBACX,SAAS;;;;;;;;;;;;;;;mBAeR,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAwCT,UAAU;;;;;CAK5B,CAAC;AACF,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { Prompt } from "@modelcontextprotocol/sdk/types.js";
2
+ export interface PromptDefinition {
3
+ prompt: Prompt;
4
+ generateMessage: (args?: Record<string, string>) => string;
5
+ }
6
+ export declare const promptRegistry: Map<string, PromptDefinition>;
7
+ export declare function getAllPrompts(): Prompt[];
8
+ export declare function getPromptDefinition(name: string): PromptDefinition | undefined;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/prompts/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAC;AA8CjE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;CAC5D;AAED,eAAO,MAAM,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CA8EvD,CAAC;AAEH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAE9E"}
@@ -0,0 +1,97 @@
1
+ import { linkedInCampaignSetupWorkflowPrompt, getLinkedInCampaignSetupWorkflowMessage, } from "./definitions/campaign-setup-workflow.prompt.js";
2
+ import { linkedInBulkOperationsWorkflowPrompt, getLinkedInBulkOperationsWorkflowMessage, } from "./definitions/bulk-operations-workflow.prompt.js";
3
+ import { linkedInToolSchemaExplorationPrompt, getLinkedInToolSchemaExplorationMessage, } from "./definitions/tool-schema-exploration.prompt.js";
4
+ import { linkedInTroubleshootEntityPrompt, getLinkedInTroubleshootEntityMessage, } from "./definitions/troubleshoot-entity.prompt.js";
5
+ import { linkedInAnalyticsReportingWorkflowPrompt, getLinkedInAnalyticsReportingWorkflowMessage, } from "./definitions/analytics-reporting-workflow.prompt.js";
6
+ import { linkedInEntityUpdateWorkflowPrompt, getLinkedInEntityUpdateWorkflowMessage, } from "./definitions/entity-update-workflow.prompt.js";
7
+ import { linkedInTargetingDiscoveryWorkflowPrompt, getLinkedInTargetingDiscoveryWorkflowMessage, } from "./definitions/targeting-discovery-workflow.prompt.js";
8
+ import { linkedInEntityDuplicationWorkflowPrompt, getLinkedInEntityDuplicationWorkflowMessage, } from "./definitions/entity-duplication-workflow.prompt.js";
9
+ import { crossPlatformPerformancePrompt, getCrossPlatformPerformanceMessage, } from "./definitions/cross-platform-performance.prompt.js";
10
+ import { crossPlatformCampaignSetupPrompt, getCrossPlatformCampaignSetupMessage, } from "./definitions/cross-platform-campaign-setup.prompt.js";
11
+ import { linkedInCreativeUploadWorkflowPrompt, getLinkedInCreativeUploadWorkflowMessage, } from "./definitions/creative-upload-workflow.prompt.js";
12
+ export const promptRegistry = new Map([
13
+ [
14
+ linkedInCampaignSetupWorkflowPrompt.name,
15
+ {
16
+ prompt: linkedInCampaignSetupWorkflowPrompt,
17
+ generateMessage: getLinkedInCampaignSetupWorkflowMessage,
18
+ },
19
+ ],
20
+ [
21
+ linkedInBulkOperationsWorkflowPrompt.name,
22
+ {
23
+ prompt: linkedInBulkOperationsWorkflowPrompt,
24
+ generateMessage: getLinkedInBulkOperationsWorkflowMessage,
25
+ },
26
+ ],
27
+ [
28
+ linkedInToolSchemaExplorationPrompt.name,
29
+ {
30
+ prompt: linkedInToolSchemaExplorationPrompt,
31
+ generateMessage: getLinkedInToolSchemaExplorationMessage,
32
+ },
33
+ ],
34
+ [
35
+ linkedInTroubleshootEntityPrompt.name,
36
+ {
37
+ prompt: linkedInTroubleshootEntityPrompt,
38
+ generateMessage: getLinkedInTroubleshootEntityMessage,
39
+ },
40
+ ],
41
+ [
42
+ linkedInAnalyticsReportingWorkflowPrompt.name,
43
+ {
44
+ prompt: linkedInAnalyticsReportingWorkflowPrompt,
45
+ generateMessage: getLinkedInAnalyticsReportingWorkflowMessage,
46
+ },
47
+ ],
48
+ [
49
+ linkedInEntityUpdateWorkflowPrompt.name,
50
+ {
51
+ prompt: linkedInEntityUpdateWorkflowPrompt,
52
+ generateMessage: getLinkedInEntityUpdateWorkflowMessage,
53
+ },
54
+ ],
55
+ [
56
+ linkedInTargetingDiscoveryWorkflowPrompt.name,
57
+ {
58
+ prompt: linkedInTargetingDiscoveryWorkflowPrompt,
59
+ generateMessage: getLinkedInTargetingDiscoveryWorkflowMessage,
60
+ },
61
+ ],
62
+ [
63
+ linkedInEntityDuplicationWorkflowPrompt.name,
64
+ {
65
+ prompt: linkedInEntityDuplicationWorkflowPrompt,
66
+ generateMessage: getLinkedInEntityDuplicationWorkflowMessage,
67
+ },
68
+ ],
69
+ [
70
+ crossPlatformPerformancePrompt.name,
71
+ {
72
+ prompt: crossPlatformPerformancePrompt,
73
+ generateMessage: getCrossPlatformPerformanceMessage,
74
+ },
75
+ ],
76
+ [
77
+ crossPlatformCampaignSetupPrompt.name,
78
+ {
79
+ prompt: crossPlatformCampaignSetupPrompt,
80
+ generateMessage: getCrossPlatformCampaignSetupMessage,
81
+ },
82
+ ],
83
+ [
84
+ linkedInCreativeUploadWorkflowPrompt.name,
85
+ {
86
+ prompt: linkedInCreativeUploadWorkflowPrompt,
87
+ generateMessage: getLinkedInCreativeUploadWorkflowMessage,
88
+ },
89
+ ],
90
+ ]);
91
+ export function getAllPrompts() {
92
+ return Array.from(promptRegistry.values()).map((def) => def.prompt);
93
+ }
94
+ export function getPromptDefinition(name) {
95
+ return promptRegistry.get(name);
96
+ }
97
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp-server/prompts/index.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,mCAAmC,EACnC,uCAAuC,GACxC,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,oCAAoC,EACpC,wCAAwC,GACzC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EACL,mCAAmC,EACnC,uCAAuC,GACxC,MAAM,iDAAiD,CAAC;AACzD,OAAO,EACL,gCAAgC,EAChC,oCAAoC,GACrC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACL,wCAAwC,EACxC,4CAA4C,GAC7C,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EACL,kCAAkC,EAClC,sCAAsC,GACvC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EACL,wCAAwC,EACxC,4CAA4C,GAC7C,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EACL,uCAAuC,EACvC,2CAA2C,GAC5C,MAAM,qDAAqD,CAAC;AAC7D,OAAO,EACL,8BAA8B,EAC9B,kCAAkC,GACnC,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACL,gCAAgC,EAChC,oCAAoC,GACrC,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EACL,oCAAoC,EACpC,wCAAwC,GACzC,MAAM,kDAAkD,CAAC;AAO1D,MAAM,CAAC,MAAM,cAAc,GAAkC,IAAI,GAAG,CAAC;IACnE;QACE,mCAAmC,CAAC,IAAI;QACxC;YACE,MAAM,EAAE,mCAAmC;YAC3C,eAAe,EAAE,uCAAuC;SACzD;KACF;IACD;QACE,oCAAoC,CAAC,IAAI;QACzC;YACE,MAAM,EAAE,oCAAoC;YAC5C,eAAe,EAAE,wCAAwC;SAC1D;KACF;IACD;QACE,mCAAmC,CAAC,IAAI;QACxC;YACE,MAAM,EAAE,mCAAmC;YAC3C,eAAe,EAAE,uCAAuC;SACzD;KACF;IACD;QACE,gCAAgC,CAAC,IAAI;QACrC;YACE,MAAM,EAAE,gCAAgC;YACxC,eAAe,EAAE,oCAAoC;SACtD;KACF;IACD;QACE,wCAAwC,CAAC,IAAI;QAC7C;YACE,MAAM,EAAE,wCAAwC;YAChD,eAAe,EAAE,4CAA4C;SAC9D;KACF;IACD;QACE,kCAAkC,CAAC,IAAI;QACvC;YACE,MAAM,EAAE,kCAAkC;YAC1C,eAAe,EAAE,sCAAsC;SACxD;KACF;IACD;QACE,wCAAwC,CAAC,IAAI;QAC7C;YACE,MAAM,EAAE,wCAAwC;YAChD,eAAe,EAAE,4CAA4C;SAC9D;KACF;IACD;QACE,uCAAuC,CAAC,IAAI;QAC5C;YACE,MAAM,EAAE,uCAAuC;YAC/C,eAAe,EAAE,2CAA2C;SAC7D;KACF;IACD;QACE,8BAA8B,CAAC,IAAI;QACnC;YACE,MAAM,EAAE,8BAA8B;YACtC,eAAe,EAAE,kCAAkC;SACpD;KACF;IACD;QACE,gCAAgC,CAAC,IAAI;QACrC;YACE,MAAM,EAAE,gCAAgC;YACxC,eAAe,EAAE,oCAAoC;SACtD;KACF;IACD;QACE,oCAAoC,CAAC,IAAI;QACzC;YACE,MAAM,EAAE,oCAAoC;YAC5C,eAAe,EAAE,wCAAwC;SAC1D;KACF;CACF,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa;IAC3B,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Resource } from "../types.js";
2
+ export declare const analyticsReferenceResource: Resource;
3
+ //# sourceMappingURL=analytics-reference.resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics-reference.resource.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/resources/definitions/analytics-reference.resource.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2J5C,eAAO,MAAM,0BAA0B,EAAE,QAUxC,CAAC"}