@cesteral/tiktok-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 (267) hide show
  1. package/LICENSE.md +201 -0
  2. package/README.md +347 -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/tiktok-auth-adapter.d.ts +40 -0
  8. package/dist/auth/tiktok-auth-adapter.d.ts.map +1 -0
  9. package/dist/auth/tiktok-auth-adapter.js +126 -0
  10. package/dist/auth/tiktok-auth-adapter.js.map +1 -0
  11. package/dist/auth/tiktok-auth-strategy.d.ts +14 -0
  12. package/dist/auth/tiktok-auth-strategy.d.ts.map +1 -0
  13. package/dist/auth/tiktok-auth-strategy.js +54 -0
  14. package/dist/auth/tiktok-auth-strategy.js.map +1 -0
  15. package/dist/config/index.d.ts +120 -0
  16. package/dist/config/index.d.ts.map +1 -0
  17. package/dist/config/index.js +55 -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 +47 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts +4 -0
  24. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts.map +1 -0
  25. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js +127 -0
  26. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js.map +1 -0
  27. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts +4 -0
  28. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts.map +1 -0
  29. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js +104 -0
  30. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js.map +1 -0
  31. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts +4 -0
  32. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.d.ts.map +1 -0
  33. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js +121 -0
  34. package/dist/mcp-server/prompts/definitions/creative-upload-workflow.prompt.js.map +1 -0
  35. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
  36. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
  37. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
  38. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
  39. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
  40. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
  41. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
  42. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
  43. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts +4 -0
  44. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts.map +1 -0
  45. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js +198 -0
  46. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js.map +1 -0
  47. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts +4 -0
  48. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts.map +1 -0
  49. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js +189 -0
  50. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js.map +1 -0
  51. package/dist/mcp-server/prompts/definitions/reporting-workflow.prompt.d.ts +4 -0
  52. package/dist/mcp-server/prompts/definitions/reporting-workflow.prompt.d.ts.map +1 -0
  53. package/dist/mcp-server/prompts/definitions/reporting-workflow.prompt.js +126 -0
  54. package/dist/mcp-server/prompts/definitions/reporting-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 +200 -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 +93 -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 +111 -0
  66. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js.map +1 -0
  67. package/dist/mcp-server/prompts/index.d.ts +9 -0
  68. package/dist/mcp-server/prompts/index.d.ts.map +1 -0
  69. package/dist/mcp-server/prompts/index.js +97 -0
  70. package/dist/mcp-server/prompts/index.js.map +1 -0
  71. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts +4 -0
  72. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts.map +1 -0
  73. package/dist/mcp-server/resources/definitions/entity-examples.resource.js +182 -0
  74. package/dist/mcp-server/resources/definitions/entity-examples.resource.js.map +1 -0
  75. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts +3 -0
  76. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts.map +1 -0
  77. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js +147 -0
  78. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js.map +1 -0
  79. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts +4 -0
  80. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts.map +1 -0
  81. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js +135 -0
  82. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js.map +1 -0
  83. package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
  84. package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
  85. package/dist/mcp-server/resources/definitions/index.js +79 -0
  86. package/dist/mcp-server/resources/definitions/index.js.map +1 -0
  87. package/dist/mcp-server/resources/definitions/reporting-reference.resource.d.ts +3 -0
  88. package/dist/mcp-server/resources/definitions/reporting-reference.resource.d.ts.map +1 -0
  89. package/dist/mcp-server/resources/definitions/reporting-reference.resource.js +165 -0
  90. package/dist/mcp-server/resources/definitions/reporting-reference.resource.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 +134 -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 +134 -0
  106. package/dist/mcp-server/server.js.map +1 -0
  107. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts +209 -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 +141 -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 +151 -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 +112 -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 +193 -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 +130 -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 +153 -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 +137 -0
  122. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js.map +1 -0
  123. package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts +119 -0
  124. package/dist/mcp-server/tools/definitions/check-report-status.tool.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/definitions/check-report-status.tool.js +89 -0
  126. package/dist/mcp-server/tools/definitions/check-report-status.tool.js.map +1 -0
  127. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts +115 -0
  128. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/definitions/create-entity.tool.js +103 -0
  130. package/dist/mcp-server/tools/definitions/create-entity.tool.js.map +1 -0
  131. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts +100 -0
  132. package/dist/mcp-server/tools/definitions/delete-entity.tool.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/definitions/delete-entity.tool.js +110 -0
  134. package/dist/mcp-server/tools/definitions/delete-entity.tool.js.map +1 -0
  135. package/dist/mcp-server/tools/definitions/download-report.tool.d.ts +297 -0
  136. package/dist/mcp-server/tools/definitions/download-report.tool.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/definitions/download-report.tool.js +105 -0
  138. package/dist/mcp-server/tools/definitions/download-report.tool.js.map +1 -0
  139. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts +105 -0
  140. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.d.ts.map +1 -0
  141. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js +85 -0
  142. package/dist/mcp-server/tools/definitions/duplicate-entity.tool.js.map +1 -0
  143. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts +89 -0
  144. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts.map +1 -0
  145. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js +74 -0
  146. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js.map +1 -0
  147. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts +89 -0
  148. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.d.ts.map +1 -0
  149. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js +83 -0
  150. package/dist/mcp-server/tools/definitions/get-ad-previews.tool.js.map +1 -0
  151. package/dist/mcp-server/tools/definitions/get-audience-estimate.tool.d.ts +85 -0
  152. package/dist/mcp-server/tools/definitions/get-audience-estimate.tool.d.ts.map +1 -0
  153. package/dist/mcp-server/tools/definitions/get-audience-estimate.tool.js +88 -0
  154. package/dist/mcp-server/tools/definitions/get-audience-estimate.tool.js.map +1 -0
  155. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts +76 -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 +71 -0
  158. package/dist/mcp-server/tools/definitions/get-entity.tool.js.map +1 -0
  159. package/dist/mcp-server/tools/definitions/get-report-breakdowns.tool.d.ts +295 -0
  160. package/dist/mcp-server/tools/definitions/get-report-breakdowns.tool.d.ts.map +1 -0
  161. package/dist/mcp-server/tools/definitions/get-report-breakdowns.tool.js +174 -0
  162. package/dist/mcp-server/tools/definitions/get-report-breakdowns.tool.js.map +1 -0
  163. package/dist/mcp-server/tools/definitions/get-report.tool.d.ts +303 -0
  164. package/dist/mcp-server/tools/definitions/get-report.tool.d.ts.map +1 -0
  165. package/dist/mcp-server/tools/definitions/get-report.tool.js +178 -0
  166. package/dist/mcp-server/tools/definitions/get-report.tool.js.map +1 -0
  167. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts +127 -0
  168. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.d.ts.map +1 -0
  169. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js +120 -0
  170. package/dist/mcp-server/tools/definitions/get-targeting-options.tool.js.map +1 -0
  171. package/dist/mcp-server/tools/definitions/index.d.ts +26 -0
  172. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
  173. package/dist/mcp-server/tools/definitions/index.js +78 -0
  174. package/dist/mcp-server/tools/definitions/index.js.map +1 -0
  175. package/dist/mcp-server/tools/definitions/list-advertisers.tool.d.ts +54 -0
  176. package/dist/mcp-server/tools/definitions/list-advertisers.tool.d.ts.map +1 -0
  177. package/dist/mcp-server/tools/definitions/list-advertisers.tool.js +58 -0
  178. package/dist/mcp-server/tools/definitions/list-advertisers.tool.js.map +1 -0
  179. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts +167 -0
  180. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts.map +1 -0
  181. package/dist/mcp-server/tools/definitions/list-entities.tool.js +114 -0
  182. package/dist/mcp-server/tools/definitions/list-entities.tool.js.map +1 -0
  183. package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts +131 -0
  184. package/dist/mcp-server/tools/definitions/search-targeting.tool.d.ts.map +1 -0
  185. package/dist/mcp-server/tools/definitions/search-targeting.tool.js +123 -0
  186. package/dist/mcp-server/tools/definitions/search-targeting.tool.js.map +1 -0
  187. package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts +153 -0
  188. package/dist/mcp-server/tools/definitions/submit-report.tool.d.ts.map +1 -0
  189. package/dist/mcp-server/tools/definitions/submit-report.tool.js +117 -0
  190. package/dist/mcp-server/tools/definitions/submit-report.tool.js.map +1 -0
  191. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts +111 -0
  192. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts.map +1 -0
  193. package/dist/mcp-server/tools/definitions/update-entity.tool.js +89 -0
  194. package/dist/mcp-server/tools/definitions/update-entity.tool.js.map +1 -0
  195. package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts +87 -0
  196. package/dist/mcp-server/tools/definitions/upload-image.tool.d.ts.map +1 -0
  197. package/dist/mcp-server/tools/definitions/upload-image.tool.js +82 -0
  198. package/dist/mcp-server/tools/definitions/upload-image.tool.js.map +1 -0
  199. package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts +88 -0
  200. package/dist/mcp-server/tools/definitions/upload-video.tool.d.ts.map +1 -0
  201. package/dist/mcp-server/tools/definitions/upload-video.tool.js +113 -0
  202. package/dist/mcp-server/tools/definitions/upload-video.tool.js.map +1 -0
  203. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts +197 -0
  204. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts.map +1 -0
  205. package/dist/mcp-server/tools/definitions/validate-entity.tool.js +237 -0
  206. package/dist/mcp-server/tools/definitions/validate-entity.tool.js.map +1 -0
  207. package/dist/mcp-server/tools/index.d.ts +2 -0
  208. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  209. package/dist/mcp-server/tools/index.js +2 -0
  210. package/dist/mcp-server/tools/index.js.map +1 -0
  211. package/dist/mcp-server/tools/utils/entity-mapping.d.ts +22 -0
  212. package/dist/mcp-server/tools/utils/entity-mapping.d.ts.map +1 -0
  213. package/dist/mcp-server/tools/utils/entity-mapping.js +121 -0
  214. package/dist/mcp-server/tools/utils/entity-mapping.js.map +1 -0
  215. package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
  216. package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
  217. package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
  218. package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
  219. package/dist/mcp-server/transports/streamable-http-transport.d.ts +59 -0
  220. package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
  221. package/dist/mcp-server/transports/streamable-http-transport.js +107 -0
  222. package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
  223. package/dist/services/session-services.d.ts +21 -0
  224. package/dist/services/session-services.d.ts.map +1 -0
  225. package/dist/services/session-services.js +25 -0
  226. package/dist/services/session-services.js.map +1 -0
  227. package/dist/services/tiktok/tiktok-http-client.d.ts +19 -0
  228. package/dist/services/tiktok/tiktok-http-client.d.ts.map +1 -0
  229. package/dist/services/tiktok/tiktok-http-client.js +184 -0
  230. package/dist/services/tiktok/tiktok-http-client.js.map +1 -0
  231. package/dist/services/tiktok/tiktok-reporting-service.d.ts +62 -0
  232. package/dist/services/tiktok/tiktok-reporting-service.d.ts.map +1 -0
  233. package/dist/services/tiktok/tiktok-reporting-service.js +129 -0
  234. package/dist/services/tiktok/tiktok-reporting-service.js.map +1 -0
  235. package/dist/services/tiktok/tiktok-service.d.ts +86 -0
  236. package/dist/services/tiktok/tiktok-service.d.ts.map +1 -0
  237. package/dist/services/tiktok/tiktok-service.js +217 -0
  238. package/dist/services/tiktok/tiktok-service.js.map +1 -0
  239. package/dist/services/tiktok/types.d.ts +161 -0
  240. package/dist/services/tiktok/types.d.ts.map +1 -0
  241. package/dist/services/tiktok/types.js +31 -0
  242. package/dist/services/tiktok/types.js.map +1 -0
  243. package/dist/types-global/mcp.d.ts +2 -0
  244. package/dist/types-global/mcp.d.ts.map +1 -0
  245. package/dist/types-global/mcp.js +2 -0
  246. package/dist/types-global/mcp.js.map +1 -0
  247. package/dist/utils/errors/index.d.ts +2 -0
  248. package/dist/utils/errors/index.d.ts.map +1 -0
  249. package/dist/utils/errors/index.js +2 -0
  250. package/dist/utils/errors/index.js.map +1 -0
  251. package/dist/utils/platform.d.ts +3 -0
  252. package/dist/utils/platform.d.ts.map +1 -0
  253. package/dist/utils/platform.js +5 -0
  254. package/dist/utils/platform.js.map +1 -0
  255. package/dist/utils/security/rate-limiter.d.ts +3 -0
  256. package/dist/utils/security/rate-limiter.d.ts.map +1 -0
  257. package/dist/utils/security/rate-limiter.js +5 -0
  258. package/dist/utils/security/rate-limiter.js.map +1 -0
  259. package/dist/utils/telemetry/index.d.ts +2 -0
  260. package/dist/utils/telemetry/index.d.ts.map +1 -0
  261. package/dist/utils/telemetry/index.js +2 -0
  262. package/dist/utils/telemetry/index.js.map +1 -0
  263. package/dist/utils/telemetry/tracing.d.ts +3 -0
  264. package/dist/utils/telemetry/tracing.d.ts.map +1 -0
  265. package/dist/utils/telemetry/tracing.js +4 -0
  266. package/dist/utils/telemetry/tracing.js.map +1 -0
  267. package/package.json +55 -0
@@ -0,0 +1,197 @@
1
+ import { z } from "zod";
2
+ import type { RequestContext } from "@cesteral/shared";
3
+ import { validateEntityResponseFormatter } from "@cesteral/shared";
4
+ import type { SdkContext } from "@cesteral/shared";
5
+ export declare const ValidateEntityInputSchema: z.ZodObject<{
6
+ entityType: z.ZodEnum<[string, ...string[]]>;
7
+ mode: z.ZodEnum<["create", "update"]>;
8
+ data: z.ZodRecord<z.ZodString, z.ZodAny>;
9
+ advertiserId: z.ZodOptional<z.ZodString>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ entityType: string;
12
+ data: Record<string, any>;
13
+ mode: "create" | "update";
14
+ advertiserId?: string | undefined;
15
+ }, {
16
+ entityType: string;
17
+ data: Record<string, any>;
18
+ mode: "create" | "update";
19
+ advertiserId?: string | undefined;
20
+ }>;
21
+ export declare const ValidateEntityOutputSchema: z.ZodObject<{
22
+ valid: z.ZodBoolean;
23
+ entityType: z.ZodString;
24
+ mode: z.ZodString;
25
+ issues: z.ZodArray<z.ZodObject<{
26
+ field: z.ZodString;
27
+ code: z.ZodEnum<["missing", "wrongType", "invalidValue", "readOnly", "custom"]>;
28
+ message: z.ZodString;
29
+ hint: z.ZodOptional<z.ZodString>;
30
+ suggestedValues: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
31
+ severity: z.ZodOptional<z.ZodEnum<["error", "warning"]>>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
34
+ message: string;
35
+ field: string;
36
+ hint?: string | undefined;
37
+ suggestedValues?: string[] | undefined;
38
+ severity?: "warning" | "error" | undefined;
39
+ }, {
40
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
41
+ message: string;
42
+ field: string;
43
+ hint?: string | undefined;
44
+ suggestedValues?: string[] | undefined;
45
+ severity?: "warning" | "error" | undefined;
46
+ }>, "many">;
47
+ nextAction: z.ZodOptional<z.ZodString>;
48
+ timestamp: z.ZodString;
49
+ }, "strip", z.ZodTypeAny, {
50
+ issues: {
51
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
52
+ message: string;
53
+ field: string;
54
+ hint?: string | undefined;
55
+ suggestedValues?: string[] | undefined;
56
+ severity?: "warning" | "error" | undefined;
57
+ }[];
58
+ valid: boolean;
59
+ entityType: string;
60
+ timestamp: string;
61
+ mode: string;
62
+ nextAction?: string | undefined;
63
+ }, {
64
+ issues: {
65
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
66
+ message: string;
67
+ field: string;
68
+ hint?: string | undefined;
69
+ suggestedValues?: string[] | undefined;
70
+ severity?: "warning" | "error" | undefined;
71
+ }[];
72
+ valid: boolean;
73
+ entityType: string;
74
+ timestamp: string;
75
+ mode: string;
76
+ nextAction?: string | undefined;
77
+ }>;
78
+ type ValidateEntityInput = z.infer<typeof ValidateEntityInputSchema>;
79
+ type ValidateEntityOutput = z.infer<typeof ValidateEntityOutputSchema>;
80
+ export declare function validateEntityLogic(input: ValidateEntityInput, _context: RequestContext, _sdkContext?: SdkContext): Promise<ValidateEntityOutput>;
81
+ export declare const validateEntityTool: {
82
+ name: string;
83
+ title: string;
84
+ description: string;
85
+ inputSchema: z.ZodObject<{
86
+ entityType: z.ZodEnum<[string, ...string[]]>;
87
+ mode: z.ZodEnum<["create", "update"]>;
88
+ data: z.ZodRecord<z.ZodString, z.ZodAny>;
89
+ advertiserId: z.ZodOptional<z.ZodString>;
90
+ }, "strip", z.ZodTypeAny, {
91
+ entityType: string;
92
+ data: Record<string, any>;
93
+ mode: "create" | "update";
94
+ advertiserId?: string | undefined;
95
+ }, {
96
+ entityType: string;
97
+ data: Record<string, any>;
98
+ mode: "create" | "update";
99
+ advertiserId?: string | undefined;
100
+ }>;
101
+ outputSchema: z.ZodObject<{
102
+ valid: z.ZodBoolean;
103
+ entityType: z.ZodString;
104
+ mode: z.ZodString;
105
+ issues: z.ZodArray<z.ZodObject<{
106
+ field: z.ZodString;
107
+ code: z.ZodEnum<["missing", "wrongType", "invalidValue", "readOnly", "custom"]>;
108
+ message: z.ZodString;
109
+ hint: z.ZodOptional<z.ZodString>;
110
+ suggestedValues: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
111
+ severity: z.ZodOptional<z.ZodEnum<["error", "warning"]>>;
112
+ }, "strip", z.ZodTypeAny, {
113
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
114
+ message: string;
115
+ field: string;
116
+ hint?: string | undefined;
117
+ suggestedValues?: string[] | undefined;
118
+ severity?: "warning" | "error" | undefined;
119
+ }, {
120
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
121
+ message: string;
122
+ field: string;
123
+ hint?: string | undefined;
124
+ suggestedValues?: string[] | undefined;
125
+ severity?: "warning" | "error" | undefined;
126
+ }>, "many">;
127
+ nextAction: z.ZodOptional<z.ZodString>;
128
+ timestamp: z.ZodString;
129
+ }, "strip", z.ZodTypeAny, {
130
+ issues: {
131
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
132
+ message: string;
133
+ field: string;
134
+ hint?: string | undefined;
135
+ suggestedValues?: string[] | undefined;
136
+ severity?: "warning" | "error" | undefined;
137
+ }[];
138
+ valid: boolean;
139
+ entityType: string;
140
+ timestamp: string;
141
+ mode: string;
142
+ nextAction?: string | undefined;
143
+ }, {
144
+ issues: {
145
+ code: "custom" | "missing" | "wrongType" | "invalidValue" | "readOnly";
146
+ message: string;
147
+ field: string;
148
+ hint?: string | undefined;
149
+ suggestedValues?: string[] | undefined;
150
+ severity?: "warning" | "error" | undefined;
151
+ }[];
152
+ valid: boolean;
153
+ entityType: string;
154
+ timestamp: string;
155
+ mode: string;
156
+ nextAction?: string | undefined;
157
+ }>;
158
+ annotations: {
159
+ readOnlyHint: boolean;
160
+ idempotentHint: boolean;
161
+ openWorldHint: boolean;
162
+ destructiveHint: boolean;
163
+ };
164
+ inputExamples: ({
165
+ label: string;
166
+ input: {
167
+ entityType: string;
168
+ mode: string;
169
+ advertiserId: string;
170
+ data: {
171
+ campaign_name: string;
172
+ objective_type: string;
173
+ budget_mode: string;
174
+ budget: number;
175
+ adgroup_name?: undefined;
176
+ };
177
+ };
178
+ } | {
179
+ label: string;
180
+ input: {
181
+ entityType: string;
182
+ mode: string;
183
+ advertiserId: string;
184
+ data: {
185
+ adgroup_name: string;
186
+ campaign_name?: undefined;
187
+ objective_type?: undefined;
188
+ budget_mode?: undefined;
189
+ budget?: undefined;
190
+ };
191
+ };
192
+ })[];
193
+ logic: typeof validateEntityLogic;
194
+ responseFormatter: typeof validateEntityResponseFormatter;
195
+ };
196
+ export {};
197
+ //# sourceMappingURL=validate-entity.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-entity.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/validate-entity.tool.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAML,+BAA+B,EAChC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA8HnD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;EAO8B,CAAC;AAWrE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASP,CAAC;AAMjC,KAAK,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AACrE,KAAK,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAMvE,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,mBAAmB,EAC1B,QAAQ,EAAE,cAAc,EACxB,WAAW,CAAC,EAAE,UAAU,GACvB,OAAO,CAAC,oBAAoB,CAAC,CAmF/B;AAMD,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyC9B,CAAC"}
@@ -0,0 +1,237 @@
1
+ import { z } from "zod";
2
+ import { getEntityTypeEnum } from "../utils/entity-mapping.js";
3
+ import { validateRequiredFieldsStructured, validateEnumFieldsStructured, checkReadOnlyFieldsStructured, validateEntityResponseFormatter, } from "@cesteral/shared";
4
+ const TOOL_NAME = "tiktok_validate_entity";
5
+ const TOOL_TITLE = "TikTok Ads Entity Validation (Client-Side)";
6
+ const TOOL_DESCRIPTION = `Validate an entity payload against known TikTok Ads requirements without calling the API.
7
+
8
+ Checks required fields, data types, and common configuration mistakes.
9
+
10
+ **Supported entity types:** ${getEntityTypeEnum().join(", ")}
11
+
12
+ This is a pure client-side check — it catches missing required fields and
13
+ obvious type errors. The TikTok API may still reject payloads for business-rule
14
+ reasons (e.g., invalid objective/placement combinations).`;
15
+ const OBJECTIVE_TYPES = [
16
+ "REACH",
17
+ "TRAFFIC",
18
+ "APP_PROMOTION",
19
+ "VIDEO_VIEWS",
20
+ "LEAD_GENERATION",
21
+ "WEB_CONVERSIONS",
22
+ "ENGAGEMENT",
23
+ "PRODUCT_SALES",
24
+ "CATALOG_SALES",
25
+ ];
26
+ const PLACEMENTS = [
27
+ "PLACEMENT_TIKTOK",
28
+ "PLACEMENT_TOPBUZZ",
29
+ "PLACEMENT_PANGLE",
30
+ "PLACEMENT_GLOBAL_APP_BUNDLE",
31
+ ];
32
+ const OPERATION_STATUSES = ["ENABLE", "DISABLE", "DELETE"];
33
+ const BUDGET_MODES = ["BUDGET_MODE_DAY", "BUDGET_MODE_TOTAL", "BUDGET_MODE_INFINITE"];
34
+ const REQUIRED_FIELDS_CREATE = {
35
+ campaign: [
36
+ { field: "campaign_name", expectedType: "string" },
37
+ {
38
+ field: "objective_type",
39
+ expectedType: "string",
40
+ hint: "Campaign optimization objective",
41
+ suggestedValues: OBJECTIVE_TYPES,
42
+ },
43
+ ],
44
+ adGroup: [
45
+ { field: "campaign_id", expectedType: "string" },
46
+ { field: "adgroup_name", expectedType: "string" },
47
+ {
48
+ field: "placements",
49
+ expectedType: "array",
50
+ hint: "Inventory placements (array of placement enums)",
51
+ suggestedValues: PLACEMENTS,
52
+ },
53
+ ],
54
+ ad: [
55
+ { field: "adgroup_id", expectedType: "string" },
56
+ { field: "creatives", expectedType: "array", hint: "TikTok AdCreateBody requires creatives[]" },
57
+ ],
58
+ creative: [{ field: "display_name", expectedType: "string" }],
59
+ };
60
+ const OPTIONAL_ENUM_FIELDS = {
61
+ campaign: [
62
+ {
63
+ field: "operation_status",
64
+ expectedType: "string",
65
+ hint: "Campaign operational state",
66
+ suggestedValues: OPERATION_STATUSES,
67
+ },
68
+ {
69
+ field: "budget_mode",
70
+ expectedType: "string",
71
+ hint: "How the campaign-level budget is interpreted",
72
+ suggestedValues: BUDGET_MODES,
73
+ },
74
+ ],
75
+ adGroup: [
76
+ {
77
+ field: "operation_status",
78
+ expectedType: "string",
79
+ hint: "Ad group operational state",
80
+ suggestedValues: OPERATION_STATUSES,
81
+ },
82
+ {
83
+ field: "budget_mode",
84
+ expectedType: "string",
85
+ hint: "How the ad-group budget is interpreted",
86
+ suggestedValues: BUDGET_MODES,
87
+ },
88
+ ],
89
+ ad: [
90
+ {
91
+ field: "operation_status",
92
+ expectedType: "string",
93
+ hint: "Ad operational state",
94
+ suggestedValues: OPERATION_STATUSES,
95
+ },
96
+ ],
97
+ creative: [],
98
+ };
99
+ const READ_ONLY_FIELDS = [
100
+ "campaign_id",
101
+ "adgroup_id",
102
+ "ad_id",
103
+ "creative_id",
104
+ "create_time",
105
+ "modify_time",
106
+ ];
107
+ export const ValidateEntityInputSchema = z
108
+ .object({
109
+ entityType: z.enum(getEntityTypeEnum()).describe("Type of entity to validate"),
110
+ mode: z.enum(["create", "update"]).describe("Whether validating for creation or update"),
111
+ data: z.record(z.any()).describe("Entity payload to validate"),
112
+ advertiserId: z.string().optional().describe("Advertiser ID (recommended for create mode)"),
113
+ })
114
+ .describe("Parameters for validating a TikTok Ads entity payload");
115
+ const ValidationIssueSchema = z.object({
116
+ field: z.string(),
117
+ code: z.enum(["missing", "wrongType", "invalidValue", "readOnly", "custom"]),
118
+ message: z.string(),
119
+ hint: z.string().optional(),
120
+ suggestedValues: z.array(z.string()).optional(),
121
+ severity: z.enum(["error", "warning"]).optional(),
122
+ });
123
+ export const ValidateEntityOutputSchema = z
124
+ .object({
125
+ valid: z.boolean().describe("Whether the payload passed validation"),
126
+ entityType: z.string(),
127
+ mode: z.string(),
128
+ issues: z.array(ValidationIssueSchema),
129
+ nextAction: z.string().optional(),
130
+ timestamp: z.string().datetime(),
131
+ })
132
+ .describe("Validation result");
133
+ export async function validateEntityLogic(input, _context, _sdkContext) {
134
+ const { entityType, mode, data } = input;
135
+ const issues = [];
136
+ const requiredRules = REQUIRED_FIELDS_CREATE[entityType] ?? [];
137
+ const optionalRules = OPTIONAL_ENUM_FIELDS[entityType] ?? [];
138
+ issues.push(...validateEnumFieldsStructured(data, [...requiredRules, ...optionalRules]));
139
+ if (mode === "create") {
140
+ issues.push(...validateRequiredFieldsStructured(data, requiredRules));
141
+ if (entityType === "ad") {
142
+ if (!Array.isArray(data.creatives) || data.creatives.length === 0) {
143
+ issues.push({
144
+ field: "creatives",
145
+ code: "missing",
146
+ message: 'Field "creatives" must be a non-empty array for ad creation',
147
+ severity: "error",
148
+ });
149
+ }
150
+ }
151
+ if (Array.isArray(data.placements)) {
152
+ const invalid = data.placements.filter((p) => typeof p === "string" && !PLACEMENTS.includes(p));
153
+ if (invalid.length > 0) {
154
+ issues.push({
155
+ field: "placements",
156
+ code: "invalidValue",
157
+ message: `Field "placements" contains unknown values: ${invalid.join(", ")}`,
158
+ suggestedValues: [...PLACEMENTS],
159
+ severity: "error",
160
+ });
161
+ }
162
+ }
163
+ }
164
+ if (mode === "update") {
165
+ if (Object.keys(data).length === 0) {
166
+ issues.push({
167
+ field: "data",
168
+ code: "custom",
169
+ message: "Update payload must contain at least one field to update",
170
+ severity: "error",
171
+ });
172
+ }
173
+ issues.push(...checkReadOnlyFieldsStructured(data, READ_ONLY_FIELDS, (field) => `Field "${field}" is a system field and may be ignored by the API on update`));
174
+ }
175
+ const budgetValue = data.budget;
176
+ if (budgetValue !== undefined && typeof budgetValue === "number") {
177
+ if (budgetValue <= 0) {
178
+ issues.push({
179
+ field: "budget",
180
+ code: "invalidValue",
181
+ message: 'Field "budget" must be a positive number',
182
+ severity: "error",
183
+ });
184
+ }
185
+ }
186
+ const errorIssues = issues.filter((i) => i.severity !== "warning");
187
+ return {
188
+ valid: errorIssues.length === 0,
189
+ entityType,
190
+ mode,
191
+ issues,
192
+ timestamp: new Date().toISOString(),
193
+ };
194
+ }
195
+ export const validateEntityTool = {
196
+ name: TOOL_NAME,
197
+ title: TOOL_TITLE,
198
+ description: TOOL_DESCRIPTION,
199
+ inputSchema: ValidateEntityInputSchema,
200
+ outputSchema: ValidateEntityOutputSchema,
201
+ annotations: {
202
+ readOnlyHint: true,
203
+ idempotentHint: true,
204
+ openWorldHint: false,
205
+ destructiveHint: false,
206
+ },
207
+ inputExamples: [
208
+ {
209
+ label: "Valid campaign create",
210
+ input: {
211
+ entityType: "campaign",
212
+ mode: "create",
213
+ advertiserId: "1234567890",
214
+ data: {
215
+ campaign_name: "Summer Sale 2026",
216
+ objective_type: "TRAFFIC",
217
+ budget_mode: "BUDGET_MODE_DAY",
218
+ budget: 100,
219
+ },
220
+ },
221
+ },
222
+ {
223
+ label: "Missing required fields (ad group)",
224
+ input: {
225
+ entityType: "adGroup",
226
+ mode: "create",
227
+ advertiserId: "1234567890",
228
+ data: {
229
+ adgroup_name: "Test Ad Group",
230
+ },
231
+ },
232
+ },
233
+ ],
234
+ logic: validateEntityLogic,
235
+ responseFormatter: validateEntityResponseFormatter,
236
+ };
237
+ //# sourceMappingURL=validate-entity.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-entity.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/validate-entity.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { allTools } from "./definitions/index.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { allTools } from "./definitions/index.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,22 @@
1
+ export type TikTokEntityType = "campaign" | "adGroup" | "ad" | "creative";
2
+ export interface TikTokEntityConfig {
3
+ listPath: string;
4
+ createPath: string;
5
+ updatePath: string;
6
+ statusUpdatePath: string;
7
+ deletePath: string;
8
+ duplicatePath?: string;
9
+ idField: string;
10
+ idsField: string;
11
+ displayName: string;
12
+ defaultFields: string[];
13
+ supportsDuplicate?: boolean;
14
+ supportsStatusUpdate?: boolean;
15
+ }
16
+ export declare function setApiVersion(version: string): void;
17
+ export declare function getEntityConfig(entityType: TikTokEntityType): TikTokEntityConfig;
18
+ export declare function getSupportedEntityTypes(): TikTokEntityType[];
19
+ export declare function getEntityTypeEnum(): [string, ...string[]];
20
+ export declare function getDuplicateSupportedEntityTypes(): TikTokEntityType[];
21
+ export declare function getDuplicateEntityTypeEnum(): [string, ...string[]];
22
+ //# sourceMappingURL=entity-mapping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-mapping.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/entity-mapping.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,UAAU,CAAC;AAE1E,MAAM,WAAW,kBAAkB;IAEjC,QAAQ,EAAE,MAAM,CAAC;IAEjB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;IAEnB,gBAAgB,EAAE,MAAM,CAAC;IAEzB,UAAU,EAAE,MAAM,CAAC;IAEnB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,OAAO,EAAE,MAAM,CAAC;IAEhB,QAAQ,EAAE,MAAM,CAAC;IAEjB,WAAW,EAAE,MAAM,CAAC;IAEpB,aAAa,EAAE,MAAM,EAAE,CAAC;IAExB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAMD,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEnD;AAgGD,wBAAgB,eAAe,CAAC,UAAU,EAAE,gBAAgB,GAAG,kBAAkB,CAOhF;AAED,wBAAgB,uBAAuB,IAAI,gBAAgB,EAAE,CAE5D;AAED,wBAAgB,iBAAiB,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAGzD;AAED,wBAAgB,gCAAgC,IAAI,gBAAgB,EAAE,CAKrE;AAED,wBAAgB,0BAA0B,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAGlE"}
@@ -0,0 +1,121 @@
1
+ import { JsonRpcErrorCode, McpError } from "@cesteral/shared";
2
+ let apiVersion = "v1.3";
3
+ export function setApiVersion(version) {
4
+ apiVersion = version;
5
+ }
6
+ function buildEntityConfigs() {
7
+ const v = apiVersion;
8
+ return {
9
+ campaign: {
10
+ listPath: `/open_api/${v}/campaign/get/`,
11
+ createPath: `/open_api/${v}/campaign/create/`,
12
+ updatePath: `/open_api/${v}/campaign/update/`,
13
+ statusUpdatePath: `/open_api/${v}/campaign/status/update/`,
14
+ deletePath: `/open_api/${v}/campaign/delete/`,
15
+ idField: "campaign_id",
16
+ idsField: "campaign_ids",
17
+ displayName: "Campaign",
18
+ defaultFields: [
19
+ "campaign_id",
20
+ "campaign_name",
21
+ "status",
22
+ "objective_type",
23
+ "budget",
24
+ "budget_mode",
25
+ "created_time",
26
+ "modify_time",
27
+ ],
28
+ supportsDuplicate: true,
29
+ supportsStatusUpdate: true,
30
+ },
31
+ adGroup: {
32
+ listPath: `/open_api/${v}/adgroup/get/`,
33
+ createPath: `/open_api/${v}/adgroup/create/`,
34
+ updatePath: `/open_api/${v}/adgroup/update/`,
35
+ statusUpdatePath: `/open_api/${v}/adgroup/status/update/`,
36
+ deletePath: `/open_api/${v}/adgroup/delete/`,
37
+ idField: "adgroup_id",
38
+ idsField: "adgroup_ids",
39
+ displayName: "Ad Group",
40
+ defaultFields: [
41
+ "adgroup_id",
42
+ "adgroup_name",
43
+ "campaign_id",
44
+ "status",
45
+ "budget",
46
+ "budget_mode",
47
+ "schedule_type",
48
+ "created_time",
49
+ ],
50
+ supportsDuplicate: true,
51
+ supportsStatusUpdate: true,
52
+ },
53
+ ad: {
54
+ listPath: `/open_api/${v}/ad/get/`,
55
+ createPath: `/open_api/${v}/ad/create/`,
56
+ updatePath: `/open_api/${v}/ad/update/`,
57
+ statusUpdatePath: `/open_api/${v}/ad/status/update/`,
58
+ deletePath: `/open_api/${v}/ad/delete/`,
59
+ idField: "ad_id",
60
+ idsField: "ad_ids",
61
+ displayName: "Ad",
62
+ defaultFields: [
63
+ "ad_id",
64
+ "adgroup_id",
65
+ "ad_name",
66
+ "status",
67
+ "creative_type",
68
+ "image_ids",
69
+ "video_id",
70
+ "created_time",
71
+ ],
72
+ supportsDuplicate: true,
73
+ supportsStatusUpdate: true,
74
+ },
75
+ creative: {
76
+ listPath: `/open_api/${v}/creative/adcreative/get/`,
77
+ createPath: `/open_api/${v}/creative/adcreative/create/`,
78
+ updatePath: `/open_api/${v}/creative/adcreative/update/`,
79
+ statusUpdatePath: "",
80
+ deletePath: `/open_api/${v}/creative/adcreative/delete/`,
81
+ idField: "creative_id",
82
+ idsField: "creative_ids",
83
+ displayName: "Creative",
84
+ defaultFields: [
85
+ "creative_id",
86
+ "advertiser_id",
87
+ "display_name",
88
+ "image_ids",
89
+ "video_id",
90
+ "created_time",
91
+ ],
92
+ },
93
+ };
94
+ }
95
+ const ENTITY_TYPE_KEYS = ["campaign", "adGroup", "ad", "creative"];
96
+ export function getEntityConfig(entityType) {
97
+ const configs = buildEntityConfigs();
98
+ const config = configs[entityType];
99
+ if (!config) {
100
+ throw new McpError(JsonRpcErrorCode.InvalidParams, `Unknown TikTok entity type: ${entityType}`);
101
+ }
102
+ return config;
103
+ }
104
+ export function getSupportedEntityTypes() {
105
+ return ENTITY_TYPE_KEYS;
106
+ }
107
+ export function getEntityTypeEnum() {
108
+ const types = getSupportedEntityTypes();
109
+ return types;
110
+ }
111
+ export function getDuplicateSupportedEntityTypes() {
112
+ const configs = buildEntityConfigs();
113
+ return Object.entries(configs)
114
+ .filter(([, config]) => config.supportsDuplicate)
115
+ .map(([type]) => type);
116
+ }
117
+ export function getDuplicateEntityTypeEnum() {
118
+ const types = getDuplicateSupportedEntityTypes();
119
+ return types;
120
+ }
121
+ //# sourceMappingURL=entity-mapping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-mapping.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/entity-mapping.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type SessionServices } from "../../../services/session-services.js";
2
+ import type { SdkContext } from "@cesteral/shared";
3
+ export declare function resolveSessionServices(sdkContext?: SdkContext): SessionServices;
4
+ //# sourceMappingURL=resolve-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-session.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/resolve-session.ts"],"names":[],"mappings":"AAQA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAClG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAMnD,wBAAgB,sBAAsB,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,eAAe,CAE/E"}
@@ -0,0 +1,6 @@
1
+ import { resolveSessionServicesFromStore } from "@cesteral/shared";
2
+ import { sessionServiceStore } from "../../../services/session-services.js";
3
+ export function resolveSessionServices(sdkContext) {
4
+ return resolveSessionServicesFromStore(sessionServiceStore, sdkContext);
5
+ }
6
+ //# sourceMappingURL=resolve-session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-session.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/resolve-session.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,+BAA+B,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAwB,MAAM,uCAAuC,CAAC;AAOlG,MAAM,UAAU,sBAAsB,CAAC,UAAuB;IAC5D,OAAO,+BAA+B,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAC1E,CAAC"}