@cesteral/gads-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 (251) hide show
  1. package/LICENSE.md +201 -0
  2. package/README.md +262 -0
  3. package/dist/auth/gads-auth-adapter.d.ts +31 -0
  4. package/dist/auth/gads-auth-adapter.d.ts.map +1 -0
  5. package/dist/auth/gads-auth-adapter.js +70 -0
  6. package/dist/auth/gads-auth-adapter.js.map +1 -0
  7. package/dist/auth/gads-auth-strategy.d.ts +9 -0
  8. package/dist/auth/gads-auth-strategy.d.ts.map +1 -0
  9. package/dist/auth/gads-auth-strategy.js +27 -0
  10. package/dist/auth/gads-auth-strategy.js.map +1 -0
  11. package/dist/config/index.d.ts +100 -0
  12. package/dist/config/index.d.ts.map +1 -0
  13. package/dist/config/index.js +37 -0
  14. package/dist/config/index.js.map +1 -0
  15. package/dist/container/index.d.ts +5 -0
  16. package/dist/container/index.d.ts.map +1 -0
  17. package/dist/container/index.js +14 -0
  18. package/dist/container/index.js.map +1 -0
  19. package/dist/container/registrations/core.d.ts +3 -0
  20. package/dist/container/registrations/core.d.ts.map +1 -0
  21. package/dist/container/registrations/core.js +14 -0
  22. package/dist/container/registrations/core.js.map +1 -0
  23. package/dist/container/registrations/mcp.d.ts +2 -0
  24. package/dist/container/registrations/mcp.d.ts.map +1 -0
  25. package/dist/container/registrations/mcp.js +3 -0
  26. package/dist/container/registrations/mcp.js.map +1 -0
  27. package/dist/container/tokens.d.ts +6 -0
  28. package/dist/container/tokens.d.ts.map +1 -0
  29. package/dist/container/tokens.js +6 -0
  30. package/dist/container/tokens.js.map +1 -0
  31. package/dist/index.d.ts +3 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +50 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts +4 -0
  36. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.d.ts.map +1 -0
  37. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js +230 -0
  38. package/dist/mcp-server/prompts/definitions/bulk-operations-workflow.prompt.js.map +1 -0
  39. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts +4 -0
  40. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.d.ts.map +1 -0
  41. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js +237 -0
  42. package/dist/mcp-server/prompts/definitions/campaign-setup-workflow.prompt.js.map +1 -0
  43. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.d.ts +4 -0
  44. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.d.ts.map +1 -0
  45. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.js +154 -0
  46. package/dist/mcp-server/prompts/definitions/creative-setup-workflow.prompt.js.map +1 -0
  47. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts +4 -0
  48. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.d.ts.map +1 -0
  49. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js +299 -0
  50. package/dist/mcp-server/prompts/definitions/cross-platform-campaign-setup.prompt.js.map +1 -0
  51. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts +4 -0
  52. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.d.ts.map +1 -0
  53. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js +170 -0
  54. package/dist/mcp-server/prompts/definitions/cross-platform-performance.prompt.js.map +1 -0
  55. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts +4 -0
  56. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.d.ts.map +1 -0
  57. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js +221 -0
  58. package/dist/mcp-server/prompts/definitions/entity-duplication-workflow.prompt.js.map +1 -0
  59. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts +4 -0
  60. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.d.ts.map +1 -0
  61. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js +207 -0
  62. package/dist/mcp-server/prompts/definitions/entity-update-workflow.prompt.js.map +1 -0
  63. package/dist/mcp-server/prompts/definitions/gaql-reporting-workflow.prompt.d.ts +4 -0
  64. package/dist/mcp-server/prompts/definitions/gaql-reporting-workflow.prompt.d.ts.map +1 -0
  65. package/dist/mcp-server/prompts/definitions/gaql-reporting-workflow.prompt.js +182 -0
  66. package/dist/mcp-server/prompts/definitions/gaql-reporting-workflow.prompt.js.map +1 -0
  67. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts +4 -0
  68. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.d.ts.map +1 -0
  69. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js +223 -0
  70. package/dist/mcp-server/prompts/definitions/targeting-discovery-workflow.prompt.js.map +1 -0
  71. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts +4 -0
  72. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.d.ts.map +1 -0
  73. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js +125 -0
  74. package/dist/mcp-server/prompts/definitions/tool-schema-exploration.prompt.js.map +1 -0
  75. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts +4 -0
  76. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.d.ts.map +1 -0
  77. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js +177 -0
  78. package/dist/mcp-server/prompts/definitions/troubleshoot-entity.prompt.js.map +1 -0
  79. package/dist/mcp-server/prompts/index.d.ts +9 -0
  80. package/dist/mcp-server/prompts/index.d.ts.map +1 -0
  81. package/dist/mcp-server/prompts/index.js +97 -0
  82. package/dist/mcp-server/prompts/index.js.map +1 -0
  83. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts +4 -0
  84. package/dist/mcp-server/resources/definitions/entity-examples.resource.d.ts.map +1 -0
  85. package/dist/mcp-server/resources/definitions/entity-examples.resource.js +574 -0
  86. package/dist/mcp-server/resources/definitions/entity-examples.resource.js.map +1 -0
  87. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts +3 -0
  88. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.d.ts.map +1 -0
  89. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js +124 -0
  90. package/dist/mcp-server/resources/definitions/entity-hierarchy.resource.js.map +1 -0
  91. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts +4 -0
  92. package/dist/mcp-server/resources/definitions/entity-schemas.resource.d.ts.map +1 -0
  93. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js +264 -0
  94. package/dist/mcp-server/resources/definitions/entity-schemas.resource.js.map +1 -0
  95. package/dist/mcp-server/resources/definitions/gaql-reference.resource.d.ts +3 -0
  96. package/dist/mcp-server/resources/definitions/gaql-reference.resource.d.ts.map +1 -0
  97. package/dist/mcp-server/resources/definitions/gaql-reference.resource.js +157 -0
  98. package/dist/mcp-server/resources/definitions/gaql-reference.resource.js.map +1 -0
  99. package/dist/mcp-server/resources/definitions/index.d.ts +8 -0
  100. package/dist/mcp-server/resources/definitions/index.d.ts.map +1 -0
  101. package/dist/mcp-server/resources/definitions/index.js +42 -0
  102. package/dist/mcp-server/resources/definitions/index.js.map +1 -0
  103. package/dist/mcp-server/resources/definitions/insights-reference.resource.d.ts +3 -0
  104. package/dist/mcp-server/resources/definitions/insights-reference.resource.d.ts.map +1 -0
  105. package/dist/mcp-server/resources/definitions/insights-reference.resource.js +78 -0
  106. package/dist/mcp-server/resources/definitions/insights-reference.resource.js.map +1 -0
  107. package/dist/mcp-server/resources/index.d.ts +3 -0
  108. package/dist/mcp-server/resources/index.d.ts.map +1 -0
  109. package/dist/mcp-server/resources/index.js +2 -0
  110. package/dist/mcp-server/resources/index.js.map +1 -0
  111. package/dist/mcp-server/resources/types.d.ts +8 -0
  112. package/dist/mcp-server/resources/types.d.ts.map +1 -0
  113. package/dist/mcp-server/resources/types.js +2 -0
  114. package/dist/mcp-server/resources/types.js.map +1 -0
  115. package/dist/mcp-server/server.d.ts +5 -0
  116. package/dist/mcp-server/server.d.ts.map +1 -0
  117. package/dist/mcp-server/server.js +124 -0
  118. package/dist/mcp-server/server.js.map +1 -0
  119. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts +270 -0
  120. package/dist/mcp-server/tools/definitions/adjust-bids.tool.d.ts.map +1 -0
  121. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js +189 -0
  122. package/dist/mcp-server/tools/definitions/adjust-bids.tool.js.map +1 -0
  123. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts +148 -0
  124. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.d.ts.map +1 -0
  125. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js +141 -0
  126. package/dist/mcp-server/tools/definitions/bulk-create-entities.tool.js.map +1 -0
  127. package/dist/mcp-server/tools/definitions/bulk-mutate.tool.d.ts +136 -0
  128. package/dist/mcp-server/tools/definitions/bulk-mutate.tool.d.ts.map +1 -0
  129. package/dist/mcp-server/tools/definitions/bulk-mutate.tool.js +127 -0
  130. package/dist/mcp-server/tools/definitions/bulk-mutate.tool.js.map +1 -0
  131. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts +185 -0
  132. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.d.ts.map +1 -0
  133. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js +149 -0
  134. package/dist/mcp-server/tools/definitions/bulk-update-status.tool.js.map +1 -0
  135. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts +123 -0
  136. package/dist/mcp-server/tools/definitions/create-entity.tool.d.ts.map +1 -0
  137. package/dist/mcp-server/tools/definitions/create-entity.tool.js +98 -0
  138. package/dist/mcp-server/tools/definitions/create-entity.tool.js.map +1 -0
  139. package/dist/mcp-server/tools/definitions/gaql-search.tool.d.ts +197 -0
  140. package/dist/mcp-server/tools/definitions/gaql-search.tool.d.ts.map +1 -0
  141. package/dist/mcp-server/tools/definitions/gaql-search.tool.js +110 -0
  142. package/dist/mcp-server/tools/definitions/gaql-search.tool.js.map +1 -0
  143. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.d.ts +87 -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 +91 -0
  146. package/dist/mcp-server/tools/definitions/get-ad-preview.tool.js.map +1 -0
  147. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts +92 -0
  148. package/dist/mcp-server/tools/definitions/get-entity.tool.d.ts.map +1 -0
  149. package/dist/mcp-server/tools/definitions/get-entity.tool.js +87 -0
  150. package/dist/mcp-server/tools/definitions/get-entity.tool.js.map +1 -0
  151. package/dist/mcp-server/tools/definitions/get-insights.tool.d.ts +382 -0
  152. package/dist/mcp-server/tools/definitions/get-insights.tool.d.ts.map +1 -0
  153. package/dist/mcp-server/tools/definitions/get-insights.tool.js +246 -0
  154. package/dist/mcp-server/tools/definitions/get-insights.tool.js.map +1 -0
  155. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts +141 -0
  156. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.d.ts.map +1 -0
  157. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js +163 -0
  158. package/dist/mcp-server/tools/definitions/get-pacing-status.tool.js.map +1 -0
  159. package/dist/mcp-server/tools/definitions/index.d.ts +18 -0
  160. package/dist/mcp-server/tools/definitions/index.d.ts.map +1 -0
  161. package/dist/mcp-server/tools/definitions/index.js +53 -0
  162. package/dist/mcp-server/tools/definitions/index.js.map +1 -0
  163. package/dist/mcp-server/tools/definitions/list-accounts.tool.d.ts +54 -0
  164. package/dist/mcp-server/tools/definitions/list-accounts.tool.d.ts.map +1 -0
  165. package/dist/mcp-server/tools/definitions/list-accounts.tool.js +61 -0
  166. package/dist/mcp-server/tools/definitions/list-accounts.tool.js.map +1 -0
  167. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts +220 -0
  168. package/dist/mcp-server/tools/definitions/list-entities.tool.d.ts.map +1 -0
  169. package/dist/mcp-server/tools/definitions/list-entities.tool.js +112 -0
  170. package/dist/mcp-server/tools/definitions/list-entities.tool.js.map +1 -0
  171. package/dist/mcp-server/tools/definitions/remove-entity.tool.d.ts +116 -0
  172. package/dist/mcp-server/tools/definitions/remove-entity.tool.d.ts.map +1 -0
  173. package/dist/mcp-server/tools/definitions/remove-entity.tool.js +120 -0
  174. package/dist/mcp-server/tools/definitions/remove-entity.tool.js.map +1 -0
  175. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts +129 -0
  176. package/dist/mcp-server/tools/definitions/update-entity.tool.d.ts.map +1 -0
  177. package/dist/mcp-server/tools/definitions/update-entity.tool.js +91 -0
  178. package/dist/mcp-server/tools/definitions/update-entity.tool.js.map +1 -0
  179. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts +239 -0
  180. package/dist/mcp-server/tools/definitions/validate-entity.tool.d.ts.map +1 -0
  181. package/dist/mcp-server/tools/definitions/validate-entity.tool.js +151 -0
  182. package/dist/mcp-server/tools/definitions/validate-entity.tool.js.map +1 -0
  183. package/dist/mcp-server/tools/index.d.ts +2 -0
  184. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  185. package/dist/mcp-server/tools/index.js +2 -0
  186. package/dist/mcp-server/tools/index.js.map +1 -0
  187. package/dist/mcp-server/tools/utils/computed-metrics.d.ts +8 -0
  188. package/dist/mcp-server/tools/utils/computed-metrics.d.ts.map +1 -0
  189. package/dist/mcp-server/tools/utils/computed-metrics.js +19 -0
  190. package/dist/mcp-server/tools/utils/computed-metrics.js.map +1 -0
  191. package/dist/mcp-server/tools/utils/entity-mapping.d.ts +22 -0
  192. package/dist/mcp-server/tools/utils/entity-mapping.d.ts.map +1 -0
  193. package/dist/mcp-server/tools/utils/entity-mapping.js +99 -0
  194. package/dist/mcp-server/tools/utils/entity-mapping.js.map +1 -0
  195. package/dist/mcp-server/tools/utils/gaql-helpers.d.ts +4 -0
  196. package/dist/mcp-server/tools/utils/gaql-helpers.d.ts.map +1 -0
  197. package/dist/mcp-server/tools/utils/gaql-helpers.js +82 -0
  198. package/dist/mcp-server/tools/utils/gaql-helpers.js.map +1 -0
  199. package/dist/mcp-server/tools/utils/parent-id-validation.d.ts +10 -0
  200. package/dist/mcp-server/tools/utils/parent-id-validation.d.ts.map +1 -0
  201. package/dist/mcp-server/tools/utils/parent-id-validation.js +58 -0
  202. package/dist/mcp-server/tools/utils/parent-id-validation.js.map +1 -0
  203. package/dist/mcp-server/tools/utils/resolve-session.d.ts +4 -0
  204. package/dist/mcp-server/tools/utils/resolve-session.d.ts.map +1 -0
  205. package/dist/mcp-server/tools/utils/resolve-session.js +6 -0
  206. package/dist/mcp-server/tools/utils/resolve-session.js.map +1 -0
  207. package/dist/mcp-server/transports/streamable-http-transport.d.ts +49 -0
  208. package/dist/mcp-server/transports/streamable-http-transport.d.ts.map +1 -0
  209. package/dist/mcp-server/transports/streamable-http-transport.js +84 -0
  210. package/dist/mcp-server/transports/streamable-http-transport.js.map +1 -0
  211. package/dist/services/gads/gads-http-client.d.ts +13 -0
  212. package/dist/services/gads/gads-http-client.d.ts.map +1 -0
  213. package/dist/services/gads/gads-http-client.js +113 -0
  214. package/dist/services/gads/gads-http-client.js.map +1 -0
  215. package/dist/services/gads/gads-service.d.ts +60 -0
  216. package/dist/services/gads/gads-service.d.ts.map +1 -0
  217. package/dist/services/gads/gads-service.js +363 -0
  218. package/dist/services/gads/gads-service.js.map +1 -0
  219. package/dist/services/gads/types.d.ts +211 -0
  220. package/dist/services/gads/types.d.ts.map +1 -0
  221. package/dist/services/gads/types.js +16 -0
  222. package/dist/services/gads/types.js.map +1 -0
  223. package/dist/services/session-services.d.ts +17 -0
  224. package/dist/services/session-services.d.ts.map +1 -0
  225. package/dist/services/session-services.js +14 -0
  226. package/dist/services/session-services.js.map +1 -0
  227. package/dist/types-global/mcp.d.ts +2 -0
  228. package/dist/types-global/mcp.d.ts.map +1 -0
  229. package/dist/types-global/mcp.js +2 -0
  230. package/dist/types-global/mcp.js.map +1 -0
  231. package/dist/utils/errors/index.d.ts +2 -0
  232. package/dist/utils/errors/index.d.ts.map +1 -0
  233. package/dist/utils/errors/index.js +2 -0
  234. package/dist/utils/errors/index.js.map +1 -0
  235. package/dist/utils/platform.d.ts +3 -0
  236. package/dist/utils/platform.d.ts.map +1 -0
  237. package/dist/utils/platform.js +5 -0
  238. package/dist/utils/platform.js.map +1 -0
  239. package/dist/utils/security/rate-limiter.d.ts +3 -0
  240. package/dist/utils/security/rate-limiter.d.ts.map +1 -0
  241. package/dist/utils/security/rate-limiter.js +5 -0
  242. package/dist/utils/security/rate-limiter.js.map +1 -0
  243. package/dist/utils/telemetry/index.d.ts +2 -0
  244. package/dist/utils/telemetry/index.d.ts.map +1 -0
  245. package/dist/utils/telemetry/index.js +2 -0
  246. package/dist/utils/telemetry/index.js.map +1 -0
  247. package/dist/utils/telemetry/tracing.d.ts +3 -0
  248. package/dist/utils/telemetry/tracing.d.ts.map +1 -0
  249. package/dist/utils/telemetry/tracing.js +4 -0
  250. package/dist/utils/telemetry/tracing.js.map +1 -0
  251. package/package.json +56 -0
@@ -0,0 +1,92 @@
1
+ import { z } from "zod";
2
+ import type { RequestContext, McpTextContent } from "@cesteral/shared";
3
+ import type { SdkContext } from "@cesteral/shared";
4
+ export declare const GetEntityInputSchema: z.ZodEffects<z.ZodObject<{
5
+ entityType: z.ZodEnum<[string, ...string[]]>;
6
+ customerId: z.ZodString;
7
+ entityId: z.ZodString;
8
+ }, "strip", z.ZodTypeAny, {
9
+ customerId: string;
10
+ entityType: string;
11
+ entityId: string;
12
+ }, {
13
+ customerId: string;
14
+ entityType: string;
15
+ entityId: string;
16
+ }>, {
17
+ customerId: string;
18
+ entityType: string;
19
+ entityId: string;
20
+ }, {
21
+ customerId: string;
22
+ entityType: string;
23
+ entityId: string;
24
+ }>;
25
+ export declare const GetEntityOutputSchema: z.ZodObject<{
26
+ entity: z.ZodRecord<z.ZodString, z.ZodAny>;
27
+ timestamp: z.ZodString;
28
+ }, "strip", z.ZodTypeAny, {
29
+ timestamp: string;
30
+ entity: Record<string, any>;
31
+ }, {
32
+ timestamp: string;
33
+ entity: Record<string, any>;
34
+ }>;
35
+ type GetEntityInput = z.infer<typeof GetEntityInputSchema>;
36
+ type GetEntityOutput = z.infer<typeof GetEntityOutputSchema>;
37
+ export declare function getEntityLogic(input: GetEntityInput, context: RequestContext, sdkContext?: SdkContext): Promise<GetEntityOutput>;
38
+ export declare function getEntityResponseFormatter(result: GetEntityOutput): McpTextContent[];
39
+ export declare const getEntityTool: {
40
+ name: string;
41
+ title: string;
42
+ description: string;
43
+ inputSchema: z.ZodEffects<z.ZodObject<{
44
+ entityType: z.ZodEnum<[string, ...string[]]>;
45
+ customerId: z.ZodString;
46
+ entityId: z.ZodString;
47
+ }, "strip", z.ZodTypeAny, {
48
+ customerId: string;
49
+ entityType: string;
50
+ entityId: string;
51
+ }, {
52
+ customerId: string;
53
+ entityType: string;
54
+ entityId: string;
55
+ }>, {
56
+ customerId: string;
57
+ entityType: string;
58
+ entityId: string;
59
+ }, {
60
+ customerId: string;
61
+ entityType: string;
62
+ entityId: string;
63
+ }>;
64
+ outputSchema: z.ZodObject<{
65
+ entity: z.ZodRecord<z.ZodString, z.ZodAny>;
66
+ timestamp: z.ZodString;
67
+ }, "strip", z.ZodTypeAny, {
68
+ timestamp: string;
69
+ entity: Record<string, any>;
70
+ }, {
71
+ timestamp: string;
72
+ entity: Record<string, any>;
73
+ }>;
74
+ annotations: {
75
+ readOnlyHint: boolean;
76
+ openWorldHint: boolean;
77
+ destructiveHint: boolean;
78
+ idempotentHint: boolean;
79
+ };
80
+ inputExamples: {
81
+ label: string;
82
+ input: {
83
+ entityType: string;
84
+ customerId: string;
85
+ entityId: string;
86
+ };
87
+ }[];
88
+ logic: typeof getEntityLogic;
89
+ responseFormatter: typeof getEntityResponseFormatter;
90
+ };
91
+ export {};
92
+ //# sourceMappingURL=get-entity.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-entity.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-entity.tool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAYnD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;EAawB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;EAKI,CAAC;AAEvC,KAAK,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAC3D,KAAK,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE7D,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,cAAc,EACvB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,eAAe,CAAC,CAc1B;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,GAAG,cAAc,EAAE,CAOpF;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCzB,CAAC"}
@@ -0,0 +1,87 @@
1
+ import { z } from "zod";
2
+ import { resolveSessionServices } from "../utils/resolve-session.js";
3
+ import { getEntityTypeEnum } from "../utils/entity-mapping.js";
4
+ import { addParentValidationIssue } from "../utils/parent-id-validation.js";
5
+ const TOOL_NAME = "gads_get_entity";
6
+ const TOOL_TITLE = "Get Google Ads Entity";
7
+ const TOOL_DESCRIPTION = `Get a single Google Ads entity by type and ID using a GAQL query.
8
+
9
+ **Supported entity types:** ${getEntityTypeEnum().join(", ")}
10
+
11
+ Returns all default fields for the entity type. Use \`gads_gaql_search\` for custom field selection.
12
+
13
+ **Note on entity IDs:** For \`ad\` entities, use the ad's simple ID. For \`keyword\` entities, use the criterion ID. GAQL queries filter by the simple ID field, so composite IDs are not needed for reads.`;
14
+ export const GetEntityInputSchema = z
15
+ .object({
16
+ entityType: z.enum(getEntityTypeEnum()).describe("Type of entity to retrieve"),
17
+ customerId: z.string().min(1).describe("Google Ads customer ID (no dashes)"),
18
+ entityId: z.string().min(1).describe("The entity ID to retrieve"),
19
+ })
20
+ .superRefine((input, ctx) => {
21
+ addParentValidationIssue(ctx, input.entityType, input);
22
+ })
23
+ .describe("Parameters for getting a Google Ads entity");
24
+ export const GetEntityOutputSchema = z
25
+ .object({
26
+ entity: z.record(z.any()).describe("Retrieved entity data"),
27
+ timestamp: z.string().datetime(),
28
+ })
29
+ .describe("Entity retrieval result");
30
+ export async function getEntityLogic(input, context, sdkContext) {
31
+ const { gadsService } = resolveSessionServices(sdkContext);
32
+ const entity = await gadsService.getEntity(input.entityType, input.customerId, input.entityId, context);
33
+ return {
34
+ entity: entity,
35
+ timestamp: new Date().toISOString(),
36
+ };
37
+ }
38
+ export function getEntityResponseFormatter(result) {
39
+ return [
40
+ {
41
+ type: "text",
42
+ text: `Entity retrieved\n${JSON.stringify(result.entity, null, 2)}\n\nTimestamp: ${result.timestamp}`,
43
+ },
44
+ ];
45
+ }
46
+ export const getEntityTool = {
47
+ name: TOOL_NAME,
48
+ title: TOOL_TITLE,
49
+ description: TOOL_DESCRIPTION,
50
+ inputSchema: GetEntityInputSchema,
51
+ outputSchema: GetEntityOutputSchema,
52
+ annotations: {
53
+ readOnlyHint: true,
54
+ openWorldHint: false,
55
+ destructiveHint: false,
56
+ idempotentHint: true,
57
+ },
58
+ inputExamples: [
59
+ {
60
+ label: "Get a campaign by ID",
61
+ input: {
62
+ entityType: "campaign",
63
+ customerId: "1234567890",
64
+ entityId: "9876543210",
65
+ },
66
+ },
67
+ {
68
+ label: "Get an ad group by ID",
69
+ input: {
70
+ entityType: "adGroup",
71
+ customerId: "1234567890",
72
+ entityId: "1122334455",
73
+ },
74
+ },
75
+ {
76
+ label: "Get a keyword by criterion ID",
77
+ input: {
78
+ entityType: "keyword",
79
+ customerId: "1234567890",
80
+ entityId: "6677889900",
81
+ },
82
+ },
83
+ ],
84
+ logic: getEntityLogic,
85
+ responseFormatter: getEntityResponseFormatter,
86
+ };
87
+ //# sourceMappingURL=get-entity.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-entity.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-entity.tool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAuB,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAI5E,MAAM,SAAS,GAAG,iBAAiB,CAAC;AACpC,MAAM,UAAU,GAAG,uBAAuB,CAAC;AAC3C,MAAM,gBAAgB,GAAG;;8BAEK,iBAAiB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;;;;4MAIgJ,CAAC;AAE7M,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC9E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC5E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CAClE,CAAC;KACD,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC1B,wBAAwB,CACtB,GAAG,EACH,KAAK,CAAC,UAA4B,EAClC,KAAgC,CACjC,CAAC;AACJ,CAAC,CAAC;KACD,QAAQ,CAAC,4CAA4C,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,QAAQ,CAAC,yBAAyB,CAAC,CAAC;AAKvC,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAqB,EACrB,OAAuB,EACvB,UAAuB;IAEvB,MAAM,EAAE,WAAW,EAAE,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,SAAS,CACxC,KAAK,CAAC,UAA4B,EAClC,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,QAAQ,EACd,OAAO,CACR,CAAC;IAEF,OAAO;QACL,MAAM,EAAE,MAAwC;QAChD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAAuB;IAChE,OAAO;QACL;YACE,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE,qBAAqB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,kBAAkB,MAAM,CAAC,SAAS,EAAE;SACtG;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,UAAU;IACjB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,oBAAoB;IACjC,YAAY,EAAE,qBAAqB;IACnC,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;KACrB;IACD,aAAa,EAAE;QACb;YACE,KAAK,EAAE,sBAAsB;YAC7B,KAAK,EAAE;gBACL,UAAU,EAAE,UAAU;gBACtB,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,YAAY;aACvB;SACF;QACD;YACE,KAAK,EAAE,uBAAuB;YAC9B,KAAK,EAAE;gBACL,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,YAAY;aACvB;SACF;QACD;YACE,KAAK,EAAE,+BAA+B;YACtC,KAAK,EAAE;gBACL,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,YAAY;aACvB;SACF;KACF;IACD,KAAK,EAAE,cAAc;IACrB,iBAAiB,EAAE,0BAA0B;CAC9C,CAAC"}
@@ -0,0 +1,382 @@
1
+ import { z } from "zod";
2
+ import type { RequestContext, McpTextContent } from "@cesteral/shared";
3
+ import type { SdkContext } from "@cesteral/shared";
4
+ export declare const GetInsightsInputSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
5
+ customerId: z.ZodString;
6
+ entityType: z.ZodEnum<["campaign", "adGroup", "ad", "keyword"]>;
7
+ entityId: z.ZodOptional<z.ZodString>;
8
+ dateRange: z.ZodOptional<z.ZodEnum<["TODAY", "YESTERDAY", "LAST_7_DAYS", "LAST_30_DAYS", "THIS_MONTH", "LAST_MONTH", "LAST_90_DAYS"]>>;
9
+ startDate: z.ZodOptional<z.ZodString>;
10
+ endDate: z.ZodOptional<z.ZodString>;
11
+ metrics: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
12
+ includeComputedMetrics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
13
+ limit: z.ZodOptional<z.ZodNumber>;
14
+ } & {
15
+ mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<["summary", "rows"]>>>;
16
+ columns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
17
+ offset: z.ZodOptional<z.ZodNumber>;
18
+ maxRows: z.ZodOptional<z.ZodNumber>;
19
+ aggregateBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
20
+ aggregateMetrics: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["sum", "avg", "count", "min", "max"]>>>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ customerId: string;
23
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
24
+ mode: "summary" | "rows";
25
+ includeComputedMetrics: boolean;
26
+ entityId?: string | undefined;
27
+ columns?: string[] | undefined;
28
+ offset?: number | undefined;
29
+ maxRows?: number | undefined;
30
+ aggregateBy?: string[] | undefined;
31
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
32
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
33
+ startDate?: string | undefined;
34
+ endDate?: string | undefined;
35
+ metrics?: string[] | undefined;
36
+ limit?: number | undefined;
37
+ }, {
38
+ customerId: string;
39
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
40
+ entityId?: string | undefined;
41
+ mode?: "summary" | "rows" | undefined;
42
+ columns?: string[] | undefined;
43
+ offset?: number | undefined;
44
+ maxRows?: number | undefined;
45
+ aggregateBy?: string[] | undefined;
46
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
47
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
48
+ startDate?: string | undefined;
49
+ endDate?: string | undefined;
50
+ metrics?: string[] | undefined;
51
+ includeComputedMetrics?: boolean | undefined;
52
+ limit?: number | undefined;
53
+ }>, {
54
+ customerId: string;
55
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
56
+ mode: "summary" | "rows";
57
+ includeComputedMetrics: boolean;
58
+ entityId?: string | undefined;
59
+ columns?: string[] | undefined;
60
+ offset?: number | undefined;
61
+ maxRows?: number | undefined;
62
+ aggregateBy?: string[] | undefined;
63
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
64
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
65
+ startDate?: string | undefined;
66
+ endDate?: string | undefined;
67
+ metrics?: string[] | undefined;
68
+ limit?: number | undefined;
69
+ }, {
70
+ customerId: string;
71
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
72
+ entityId?: string | undefined;
73
+ mode?: "summary" | "rows" | undefined;
74
+ columns?: string[] | undefined;
75
+ offset?: number | undefined;
76
+ maxRows?: number | undefined;
77
+ aggregateBy?: string[] | undefined;
78
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
79
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
80
+ startDate?: string | undefined;
81
+ endDate?: string | undefined;
82
+ metrics?: string[] | undefined;
83
+ includeComputedMetrics?: boolean | undefined;
84
+ limit?: number | undefined;
85
+ }>, {
86
+ customerId: string;
87
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
88
+ mode: "summary" | "rows";
89
+ includeComputedMetrics: boolean;
90
+ entityId?: string | undefined;
91
+ columns?: string[] | undefined;
92
+ offset?: number | undefined;
93
+ maxRows?: number | undefined;
94
+ aggregateBy?: string[] | undefined;
95
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
96
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
97
+ startDate?: string | undefined;
98
+ endDate?: string | undefined;
99
+ metrics?: string[] | undefined;
100
+ limit?: number | undefined;
101
+ }, {
102
+ customerId: string;
103
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
104
+ entityId?: string | undefined;
105
+ mode?: "summary" | "rows" | undefined;
106
+ columns?: string[] | undefined;
107
+ offset?: number | undefined;
108
+ maxRows?: number | undefined;
109
+ aggregateBy?: string[] | undefined;
110
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
111
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
112
+ startDate?: string | undefined;
113
+ endDate?: string | undefined;
114
+ metrics?: string[] | undefined;
115
+ includeComputedMetrics?: boolean | undefined;
116
+ limit?: number | undefined;
117
+ }>;
118
+ export declare const GetInsightsOutputSchema: z.ZodObject<{
119
+ totalResults: z.ZodNumber;
120
+ dateRange: z.ZodString;
121
+ startDate: z.ZodOptional<z.ZodString>;
122
+ endDate: z.ZodOptional<z.ZodString>;
123
+ timestamp: z.ZodString;
124
+ totalRows: z.ZodNumber;
125
+ returnedRows: z.ZodNumber;
126
+ truncated: z.ZodBoolean;
127
+ nextOffset: z.ZodNullable<z.ZodNumber>;
128
+ headers: z.ZodArray<z.ZodString, "many">;
129
+ selectedColumns: z.ZodArray<z.ZodString, "many">;
130
+ mode: z.ZodEnum<["summary", "rows"]>;
131
+ previewRows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
132
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
133
+ warnings: z.ZodArray<z.ZodString, "many">;
134
+ }, "strip", z.ZodTypeAny, {
135
+ mode: "summary" | "rows";
136
+ timestamp: string;
137
+ totalRows: number;
138
+ returnedRows: number;
139
+ truncated: boolean;
140
+ nextOffset: number | null;
141
+ headers: string[];
142
+ selectedColumns: string[];
143
+ warnings: string[];
144
+ dateRange: string;
145
+ totalResults: number;
146
+ rows?: Record<string, any>[] | undefined;
147
+ previewRows?: Record<string, any>[] | undefined;
148
+ startDate?: string | undefined;
149
+ endDate?: string | undefined;
150
+ }, {
151
+ mode: "summary" | "rows";
152
+ timestamp: string;
153
+ totalRows: number;
154
+ returnedRows: number;
155
+ truncated: boolean;
156
+ nextOffset: number | null;
157
+ headers: string[];
158
+ selectedColumns: string[];
159
+ warnings: string[];
160
+ dateRange: string;
161
+ totalResults: number;
162
+ rows?: Record<string, any>[] | undefined;
163
+ previewRows?: Record<string, any>[] | undefined;
164
+ startDate?: string | undefined;
165
+ endDate?: string | undefined;
166
+ }>;
167
+ type GetInsightsInput = z.infer<typeof GetInsightsInputSchema>;
168
+ type GetInsightsOutput = z.infer<typeof GetInsightsOutputSchema>;
169
+ export declare function getInsightsLogic(input: GetInsightsInput, context: RequestContext, sdkContext?: SdkContext): Promise<GetInsightsOutput>;
170
+ export declare function getInsightsResponseFormatter(result: GetInsightsOutput): McpTextContent[];
171
+ export declare const getInsightsTool: {
172
+ name: string;
173
+ title: string;
174
+ description: string;
175
+ inputSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
176
+ customerId: z.ZodString;
177
+ entityType: z.ZodEnum<["campaign", "adGroup", "ad", "keyword"]>;
178
+ entityId: z.ZodOptional<z.ZodString>;
179
+ dateRange: z.ZodOptional<z.ZodEnum<["TODAY", "YESTERDAY", "LAST_7_DAYS", "LAST_30_DAYS", "THIS_MONTH", "LAST_MONTH", "LAST_90_DAYS"]>>;
180
+ startDate: z.ZodOptional<z.ZodString>;
181
+ endDate: z.ZodOptional<z.ZodString>;
182
+ metrics: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
183
+ includeComputedMetrics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
+ limit: z.ZodOptional<z.ZodNumber>;
185
+ } & {
186
+ mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<["summary", "rows"]>>>;
187
+ columns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
188
+ offset: z.ZodOptional<z.ZodNumber>;
189
+ maxRows: z.ZodOptional<z.ZodNumber>;
190
+ aggregateBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
191
+ aggregateMetrics: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["sum", "avg", "count", "min", "max"]>>>;
192
+ }, "strip", z.ZodTypeAny, {
193
+ customerId: string;
194
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
195
+ mode: "summary" | "rows";
196
+ includeComputedMetrics: boolean;
197
+ entityId?: string | undefined;
198
+ columns?: string[] | undefined;
199
+ offset?: number | undefined;
200
+ maxRows?: number | undefined;
201
+ aggregateBy?: string[] | undefined;
202
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
203
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
204
+ startDate?: string | undefined;
205
+ endDate?: string | undefined;
206
+ metrics?: string[] | undefined;
207
+ limit?: number | undefined;
208
+ }, {
209
+ customerId: string;
210
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
211
+ entityId?: string | undefined;
212
+ mode?: "summary" | "rows" | undefined;
213
+ columns?: string[] | undefined;
214
+ offset?: number | undefined;
215
+ maxRows?: number | undefined;
216
+ aggregateBy?: string[] | undefined;
217
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
218
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
219
+ startDate?: string | undefined;
220
+ endDate?: string | undefined;
221
+ metrics?: string[] | undefined;
222
+ includeComputedMetrics?: boolean | undefined;
223
+ limit?: number | undefined;
224
+ }>, {
225
+ customerId: string;
226
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
227
+ mode: "summary" | "rows";
228
+ includeComputedMetrics: boolean;
229
+ entityId?: string | undefined;
230
+ columns?: string[] | undefined;
231
+ offset?: number | undefined;
232
+ maxRows?: number | undefined;
233
+ aggregateBy?: string[] | undefined;
234
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
235
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
236
+ startDate?: string | undefined;
237
+ endDate?: string | undefined;
238
+ metrics?: string[] | undefined;
239
+ limit?: number | undefined;
240
+ }, {
241
+ customerId: string;
242
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
243
+ entityId?: string | undefined;
244
+ mode?: "summary" | "rows" | undefined;
245
+ columns?: string[] | undefined;
246
+ offset?: number | undefined;
247
+ maxRows?: number | undefined;
248
+ aggregateBy?: string[] | undefined;
249
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
250
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
251
+ startDate?: string | undefined;
252
+ endDate?: string | undefined;
253
+ metrics?: string[] | undefined;
254
+ includeComputedMetrics?: boolean | undefined;
255
+ limit?: number | undefined;
256
+ }>, {
257
+ customerId: string;
258
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
259
+ mode: "summary" | "rows";
260
+ includeComputedMetrics: boolean;
261
+ entityId?: string | undefined;
262
+ columns?: string[] | undefined;
263
+ offset?: number | undefined;
264
+ maxRows?: number | undefined;
265
+ aggregateBy?: string[] | undefined;
266
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
267
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
268
+ startDate?: string | undefined;
269
+ endDate?: string | undefined;
270
+ metrics?: string[] | undefined;
271
+ limit?: number | undefined;
272
+ }, {
273
+ customerId: string;
274
+ entityType: "campaign" | "adGroup" | "ad" | "keyword";
275
+ entityId?: string | undefined;
276
+ mode?: "summary" | "rows" | undefined;
277
+ columns?: string[] | undefined;
278
+ offset?: number | undefined;
279
+ maxRows?: number | undefined;
280
+ aggregateBy?: string[] | undefined;
281
+ aggregateMetrics?: Record<string, "count" | "sum" | "avg" | "min" | "max"> | undefined;
282
+ dateRange?: "TODAY" | "YESTERDAY" | "LAST_7_DAYS" | "LAST_30_DAYS" | "THIS_MONTH" | "LAST_MONTH" | "LAST_90_DAYS" | undefined;
283
+ startDate?: string | undefined;
284
+ endDate?: string | undefined;
285
+ metrics?: string[] | undefined;
286
+ includeComputedMetrics?: boolean | undefined;
287
+ limit?: number | undefined;
288
+ }>;
289
+ outputSchema: z.ZodObject<{
290
+ totalResults: z.ZodNumber;
291
+ dateRange: z.ZodString;
292
+ startDate: z.ZodOptional<z.ZodString>;
293
+ endDate: z.ZodOptional<z.ZodString>;
294
+ timestamp: z.ZodString;
295
+ totalRows: z.ZodNumber;
296
+ returnedRows: z.ZodNumber;
297
+ truncated: z.ZodBoolean;
298
+ nextOffset: z.ZodNullable<z.ZodNumber>;
299
+ headers: z.ZodArray<z.ZodString, "many">;
300
+ selectedColumns: z.ZodArray<z.ZodString, "many">;
301
+ mode: z.ZodEnum<["summary", "rows"]>;
302
+ previewRows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
303
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodAny>, "many">>;
304
+ warnings: z.ZodArray<z.ZodString, "many">;
305
+ }, "strip", z.ZodTypeAny, {
306
+ mode: "summary" | "rows";
307
+ timestamp: string;
308
+ totalRows: number;
309
+ returnedRows: number;
310
+ truncated: boolean;
311
+ nextOffset: number | null;
312
+ headers: string[];
313
+ selectedColumns: string[];
314
+ warnings: string[];
315
+ dateRange: string;
316
+ totalResults: number;
317
+ rows?: Record<string, any>[] | undefined;
318
+ previewRows?: Record<string, any>[] | undefined;
319
+ startDate?: string | undefined;
320
+ endDate?: string | undefined;
321
+ }, {
322
+ mode: "summary" | "rows";
323
+ timestamp: string;
324
+ totalRows: number;
325
+ returnedRows: number;
326
+ truncated: boolean;
327
+ nextOffset: number | null;
328
+ headers: string[];
329
+ selectedColumns: string[];
330
+ warnings: string[];
331
+ dateRange: string;
332
+ totalResults: number;
333
+ rows?: Record<string, any>[] | undefined;
334
+ previewRows?: Record<string, any>[] | undefined;
335
+ startDate?: string | undefined;
336
+ endDate?: string | undefined;
337
+ }>;
338
+ annotations: {
339
+ readOnlyHint: boolean;
340
+ idempotentHint: boolean;
341
+ openWorldHint: boolean;
342
+ destructiveHint: boolean;
343
+ };
344
+ inputExamples: ({
345
+ label: string;
346
+ input: {
347
+ customerId: string;
348
+ entityType: string;
349
+ dateRange: string;
350
+ limit?: undefined;
351
+ startDate?: undefined;
352
+ endDate?: undefined;
353
+ includeComputedMetrics?: undefined;
354
+ };
355
+ } | {
356
+ label: string;
357
+ input: {
358
+ customerId: string;
359
+ entityType: string;
360
+ dateRange: string;
361
+ limit: number;
362
+ startDate?: undefined;
363
+ endDate?: undefined;
364
+ includeComputedMetrics?: undefined;
365
+ };
366
+ } | {
367
+ label: string;
368
+ input: {
369
+ customerId: string;
370
+ entityType: string;
371
+ startDate: string;
372
+ endDate: string;
373
+ includeComputedMetrics: boolean;
374
+ dateRange?: undefined;
375
+ limit?: undefined;
376
+ };
377
+ })[];
378
+ logic: typeof getInsightsLogic;
379
+ responseFormatter: typeof getInsightsResponseFormatter;
380
+ };
381
+ export {};
382
+ //# sourceMappingURL=get-insights.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-insights.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-insights.tool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AA6DnD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8EkC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASU,CAAC;AAE/C,KAAK,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAC/D,KAAK,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAuCjE,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,cAAc,EACvB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,iBAAiB,CAAC,CA0C5B;AAED,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,iBAAiB,GAAG,cAAc,EAAE,CAOxF;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2C3B,CAAC"}