snow-flow 1.1.76 → 1.1.78

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 (234) hide show
  1. package/.claude-flow/queen/queen-memory.db +0 -0
  2. package/CLAUDE.md +34 -5
  3. package/README.md +256 -384
  4. package/dist/agents/base-agent.d.ts +92 -0
  5. package/dist/agents/base-agent.d.ts.map +1 -0
  6. package/dist/agents/base-agent.js +228 -0
  7. package/dist/agents/base-agent.js.map +1 -0
  8. package/dist/agents/coordinator.d.ts +200 -0
  9. package/dist/agents/coordinator.d.ts.map +1 -0
  10. package/dist/agents/coordinator.js +775 -0
  11. package/dist/agents/coordinator.js.map +1 -0
  12. package/dist/agents/flow-builder-agent.d.ts +18 -0
  13. package/dist/agents/flow-builder-agent.d.ts.map +1 -0
  14. package/dist/agents/flow-builder-agent.js +536 -0
  15. package/dist/agents/flow-builder-agent.js.map +1 -0
  16. package/dist/agents/index.d.ts +18 -0
  17. package/dist/agents/index.d.ts.map +1 -0
  18. package/dist/agents/index.js +61 -0
  19. package/dist/agents/index.js.map +1 -0
  20. package/dist/agents/queen-agent-example.d.ts +23 -0
  21. package/dist/agents/queen-agent-example.d.ts.map +1 -0
  22. package/dist/agents/queen-agent-example.js +241 -0
  23. package/dist/agents/queen-agent-example.js.map +1 -0
  24. package/dist/agents/queen-agent.d.ts +180 -0
  25. package/dist/agents/queen-agent.d.ts.map +1 -0
  26. package/dist/agents/queen-agent.js +909 -0
  27. package/dist/agents/queen-agent.js.map +1 -0
  28. package/dist/agents/queen-agent.test.d.ts +6 -0
  29. package/dist/agents/queen-agent.test.d.ts.map +1 -0
  30. package/dist/agents/queen-agent.test.js.map +1 -0
  31. package/dist/agents/script-writer-agent.d.ts +22 -0
  32. package/dist/agents/script-writer-agent.d.ts.map +1 -0
  33. package/dist/agents/script-writer-agent.js +695 -0
  34. package/dist/agents/script-writer-agent.js.map +1 -0
  35. package/dist/agents/security-agent.d.ts +23 -0
  36. package/dist/agents/security-agent.d.ts.map +1 -0
  37. package/dist/agents/security-agent.js +619 -0
  38. package/dist/agents/security-agent.js.map +1 -0
  39. package/dist/agents/test-agent.d.ts +26 -0
  40. package/dist/agents/test-agent.d.ts.map +1 -0
  41. package/dist/agents/test-agent.js +735 -0
  42. package/dist/agents/test-agent.js.map +1 -0
  43. package/dist/agents/test-agents.d.ts +7 -0
  44. package/dist/agents/test-agents.d.ts.map +1 -0
  45. package/dist/agents/test-agents.js +65 -0
  46. package/dist/agents/test-agents.js.map +1 -0
  47. package/dist/agents/widget-creator-agent.d.ts +18 -0
  48. package/dist/agents/widget-creator-agent.d.ts.map +1 -0
  49. package/dist/agents/widget-creator-agent.js +440 -0
  50. package/dist/agents/widget-creator-agent.js.map +1 -0
  51. package/dist/cli/snow-flow-cli-integration.d.ts +30 -0
  52. package/dist/cli/snow-flow-cli-integration.d.ts.map +1 -0
  53. package/dist/cli/snow-flow-cli-integration.js +385 -0
  54. package/dist/cli/snow-flow-cli-integration.js.map +1 -0
  55. package/dist/cli.js +466 -150
  56. package/dist/cli.js.map +1 -1
  57. package/dist/config/snow-flow-config.d.ts +1454 -0
  58. package/dist/config/snow-flow-config.d.ts.map +1 -0
  59. package/dist/config/snow-flow-config.js +403 -0
  60. package/dist/config/snow-flow-config.js.map +1 -0
  61. package/dist/health/system-health.d.ts +123 -0
  62. package/dist/health/system-health.d.ts.map +1 -0
  63. package/dist/health/system-health.js +580 -0
  64. package/dist/health/system-health.js.map +1 -0
  65. package/dist/index.d.ts +12 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +19 -3
  68. package/dist/index.js.map +1 -1
  69. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts +58 -0
  70. package/dist/mcp/servicenow-deployment-mcp-refactored.d.ts.map +1 -0
  71. package/dist/mcp/servicenow-deployment-mcp-refactored.js +651 -0
  72. package/dist/mcp/servicenow-deployment-mcp-refactored.js.map +1 -0
  73. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts +43 -0
  74. package/dist/mcp/servicenow-intelligent-mcp-refactored.d.ts.map +1 -0
  75. package/dist/mcp/servicenow-intelligent-mcp-refactored.js +576 -0
  76. package/dist/mcp/servicenow-intelligent-mcp-refactored.js.map +1 -0
  77. package/dist/mcp/servicenow-intelligent-mcp.d.ts +102 -1
  78. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -1
  79. package/dist/mcp/servicenow-intelligent-mcp.js +2 -0
  80. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
  81. package/dist/mcp/shared/agent-context-provider.d.ts +77 -0
  82. package/dist/mcp/shared/agent-context-provider.d.ts.map +1 -0
  83. package/dist/mcp/shared/agent-context-provider.js +292 -0
  84. package/dist/mcp/shared/agent-context-provider.js.map +1 -0
  85. package/dist/mcp/shared/base-mcp-server.d.ts +97 -0
  86. package/dist/mcp/shared/base-mcp-server.d.ts.map +1 -0
  87. package/dist/mcp/shared/base-mcp-server.js +216 -0
  88. package/dist/mcp/shared/base-mcp-server.js.map +1 -0
  89. package/dist/mcp/shared/mcp-memory-manager.d.ts +87 -0
  90. package/dist/mcp/shared/mcp-memory-manager.d.ts.map +1 -0
  91. package/dist/mcp/shared/mcp-memory-manager.js +423 -0
  92. package/dist/mcp/shared/mcp-memory-manager.js.map +1 -0
  93. package/dist/memory/index.d.ts +9 -0
  94. package/dist/memory/index.d.ts.map +1 -0
  95. package/dist/memory/index.js +20 -0
  96. package/dist/memory/index.js.map +1 -0
  97. package/dist/memory/mcp-integration-example.d.ts +6 -0
  98. package/dist/memory/mcp-integration-example.d.ts.map +1 -0
  99. package/dist/memory/mcp-integration-example.js +282 -0
  100. package/dist/memory/mcp-integration-example.js.map +1 -0
  101. package/dist/memory/memory-client.d.ts +184 -0
  102. package/dist/memory/memory-client.d.ts.map +1 -0
  103. package/dist/memory/memory-client.js +325 -0
  104. package/dist/memory/memory-client.js.map +1 -0
  105. package/dist/memory/memory-operations.d.ts +170 -0
  106. package/dist/memory/memory-operations.d.ts.map +1 -0
  107. package/dist/memory/memory-operations.js +639 -0
  108. package/dist/memory/memory-operations.js.map +1 -0
  109. package/dist/memory/memory-system.d.ts +118 -0
  110. package/dist/memory/memory-system.d.ts.map +1 -0
  111. package/dist/memory/memory-system.js +477 -0
  112. package/dist/memory/memory-system.js.map +1 -0
  113. package/dist/memory/memory-test.d.ts +6 -0
  114. package/dist/memory/memory-test.d.ts.map +1 -0
  115. package/dist/memory/memory-test.js +162 -0
  116. package/dist/memory/memory-test.js.map +1 -0
  117. package/dist/memory/swarm-memory.d.ts +135 -0
  118. package/dist/memory/swarm-memory.d.ts.map +1 -0
  119. package/dist/memory/swarm-memory.js +378 -0
  120. package/dist/memory/swarm-memory.js.map +1 -0
  121. package/dist/monitoring/performance-tracker.d.ts +157 -0
  122. package/dist/monitoring/performance-tracker.d.ts.map +1 -0
  123. package/dist/monitoring/performance-tracker.js +571 -0
  124. package/dist/monitoring/performance-tracker.js.map +1 -0
  125. package/dist/queen/agent-factory.d.ts +3 -0
  126. package/dist/queen/agent-factory.d.ts.map +1 -1
  127. package/dist/queen/agent-factory.js +52 -0
  128. package/dist/queen/agent-factory.js.map +1 -1
  129. package/dist/queen/queen-memory.d.ts +8 -2
  130. package/dist/queen/queen-memory.d.ts.map +1 -1
  131. package/dist/queen/queen-memory.js +46 -4
  132. package/dist/queen/queen-memory.js.map +1 -1
  133. package/dist/snow-flow-system.d.ts +132 -0
  134. package/dist/snow-flow-system.d.ts.map +1 -0
  135. package/dist/snow-flow-system.js +396 -0
  136. package/dist/snow-flow-system.js.map +1 -0
  137. package/dist/types/todo.types.d.ts +61 -0
  138. package/dist/types/todo.types.d.ts.map +1 -0
  139. package/dist/types/todo.types.js +7 -0
  140. package/dist/types/todo.types.js.map +1 -0
  141. package/dist/utils/error-recovery.d.ts +101 -0
  142. package/dist/utils/error-recovery.d.ts.map +1 -0
  143. package/dist/utils/error-recovery.js +548 -0
  144. package/dist/utils/error-recovery.js.map +1 -0
  145. package/dist/version.d.ts +1 -1
  146. package/dist/version.js +1 -1
  147. package/package.json +7 -2
  148. package/deploy.sh +0 -366
  149. package/docker/base/Dockerfile.base +0 -45
  150. package/docker/generate-services.js +0 -244
  151. package/docker/nginx/Dockerfile +0 -71
  152. package/docker/nginx/consul-template.hcl +0 -64
  153. package/docker/nginx/healthcheck.sh +0 -178
  154. package/docker/nginx/nginx.conf +0 -210
  155. package/docker/nginx/supervisord.conf +0 -57
  156. package/docker/nginx/templates/upstreams.conf.tpl +0 -48
  157. package/docker/services/automation-mcp/Dockerfile +0 -32
  158. package/docker/services/automation-mcp/config/service.json +0 -28
  159. package/docker/services/automation-mcp/entrypoint.js +0 -51
  160. package/docker/services/deployment-mcp/Dockerfile +0 -32
  161. package/docker/services/deployment-mcp/entrypoint.js +0 -51
  162. package/docker/services/flow-composer-mcp/Dockerfile +0 -32
  163. package/docker/services/flow-composer-mcp/config/service.json +0 -28
  164. package/docker/services/flow-composer-mcp/entrypoint.js +0 -51
  165. package/docker/services/graph-memory-mcp/Dockerfile +0 -32
  166. package/docker/services/graph-memory-mcp/config/service.json +0 -28
  167. package/docker/services/graph-memory-mcp/entrypoint.js +0 -51
  168. package/docker/services/integration-mcp/Dockerfile +0 -32
  169. package/docker/services/integration-mcp/config/service.json +0 -28
  170. package/docker/services/integration-mcp/entrypoint.js +0 -51
  171. package/docker/services/intelligent-mcp/Dockerfile +0 -32
  172. package/docker/services/intelligent-mcp/config/service.json +0 -28
  173. package/docker/services/intelligent-mcp/entrypoint.js +0 -51
  174. package/docker/services/operations-mcp/Dockerfile +0 -32
  175. package/docker/services/operations-mcp/config/service.json +0 -28
  176. package/docker/services/operations-mcp/entrypoint.js +0 -51
  177. package/docker/services/platform-development-mcp/Dockerfile +0 -32
  178. package/docker/services/platform-development-mcp/config/service.json +0 -28
  179. package/docker/services/platform-development-mcp/entrypoint.js +0 -51
  180. package/docker/services/reporting-analytics-mcp/Dockerfile +0 -32
  181. package/docker/services/reporting-analytics-mcp/config/service.json +0 -28
  182. package/docker/services/reporting-analytics-mcp/entrypoint.js +0 -51
  183. package/docker/services/security-compliance-mcp/Dockerfile +0 -32
  184. package/docker/services/security-compliance-mcp/config/service.json +0 -28
  185. package/docker/services/security-compliance-mcp/entrypoint.js +0 -51
  186. package/docker/services/update-set-mcp/Dockerfile +0 -32
  187. package/docker/services/update-set-mcp/config/service.json +0 -28
  188. package/docker/services/update-set-mcp/entrypoint.js +0 -51
  189. package/docker-compose.override.yml +0 -132
  190. package/docker-compose.prod.yml +0 -340
  191. package/docker-compose.yml +0 -579
  192. package/k8s/automation-mcp.yaml +0 -232
  193. package/k8s/configmap.yaml +0 -237
  194. package/k8s/deployment-mcp.yaml +0 -232
  195. package/k8s/flow-composer-mcp.yaml +0 -232
  196. package/k8s/generate-k8s-manifests.js +0 -453
  197. package/k8s/graph-memory-mcp.yaml +0 -232
  198. package/k8s/infrastructure.yaml +0 -456
  199. package/k8s/ingress.yaml +0 -361
  200. package/k8s/integration-mcp.yaml +0 -232
  201. package/k8s/intelligent-mcp.yaml +0 -232
  202. package/k8s/kustomization.yaml +0 -111
  203. package/k8s/mcp-services.yaml +0 -2552
  204. package/k8s/monitoring.yaml +0 -515
  205. package/k8s/namespace.yaml +0 -80
  206. package/k8s/operations-mcp.yaml +0 -232
  207. package/k8s/platform-development-mcp.yaml +0 -232
  208. package/k8s/rbac.yaml +0 -140
  209. package/k8s/reporting-analytics-mcp.yaml +0 -232
  210. package/k8s/security-compliance-mcp.yaml +0 -232
  211. package/k8s/update-set-mcp.yaml +0 -232
  212. package/test-clean-install/.claude/config.json +0 -12
  213. package/test-clean-install/.env.example +0 -49
  214. package/test-clean-install/CLAUDE.md +0 -26
  215. package/test-clean-install/README.md +0 -23
  216. package/test-global-install/.claude/config.json +0 -12
  217. package/test-global-install/CLAUDE.md +0 -26
  218. package/test-global-install/README.md +0 -23
  219. package/test-global-install/test-global-install/.claude/config.json +0 -12
  220. package/test-global-install/test-global-install/CLAUDE.md +0 -26
  221. package/test-global-install/test-global-install/README.md +0 -23
  222. package/test-global-install/test-global-install/test-global-install/.claude/config.json +0 -12
  223. package/test-global-install/test-global-install/test-global-install/.env.example +0 -49
  224. package/test-global-install/test-global-install/test-global-install/CLAUDE.md +0 -26
  225. package/test-global-install/test-global-install/test-global-install/README.md +0 -23
  226. package/test-init-debug/.claude/config.json +0 -12
  227. package/test-init-debug/CLAUDE.md +0 -693
  228. package/test-init-debug/README.md +0 -392
  229. package/test-init-real/.claude/config.json +0 -12
  230. package/test-init-real/.claude/mcp-config.json +0 -128
  231. package/test-init-real/.claude/settings.json +0 -37
  232. package/test-init-real/CLAUDE.md +0 -693
  233. package/test-init-real/README.md +0 -392
  234. package/test-init-real/activate-mcp.sh +0 -15
@@ -1,232 +0,0 @@
1
- # ServiceNow Operations MCP Deployment
2
- apiVersion: apps/v1
3
- kind: Deployment
4
- metadata:
5
- name: operations-mcp
6
- namespace: servicenow-mcp
7
- labels:
8
- app.kubernetes.io/name: operations-mcp
9
- app.kubernetes.io/instance: operations-mcp
10
- app.kubernetes.io/version: "1.0.0"
11
- app.kubernetes.io/component: mcp-service
12
- app.kubernetes.io/part-of: servicenow-mcp
13
- app.kubernetes.io/managed-by: kubectl
14
- spec:
15
- replicas: 3
16
- strategy:
17
- type: RollingUpdate
18
- rollingUpdate:
19
- maxSurge: 1
20
- maxUnavailable: 0
21
- selector:
22
- matchLabels:
23
- app.kubernetes.io/name: operations-mcp
24
- app.kubernetes.io/instance: operations-mcp
25
- template:
26
- metadata:
27
- labels:
28
- app.kubernetes.io/name: operations-mcp
29
- app.kubernetes.io/instance: operations-mcp
30
- app.kubernetes.io/version: "1.0.0"
31
- app.kubernetes.io/component: mcp-service
32
- annotations:
33
- prometheus.io/scrape: "true"
34
- prometheus.io/port: "3006"
35
- prometheus.io/path: "/metrics"
36
- spec:
37
- serviceAccountName: mcp-service-account
38
- securityContext:
39
- runAsNonRoot: true
40
- runAsUser: 1001
41
- runAsGroup: 1001
42
- fsGroup: 1001
43
- containers:
44
- - name: operations-mcp
45
- image: servicenow-mcp/operations-mcp:latest
46
- imagePullPolicy: IfNotPresent
47
- ports:
48
- - name: http
49
- containerPort: 3006
50
- protocol: TCP
51
- env:
52
- - name: SERVICE_NAME
53
- value: "operations-mcp"
54
- - name: SERVER_PORT
55
- value: "3006"
56
- - name: SERVICE_IP
57
- valueFrom:
58
- fieldRef:
59
- fieldPath: status.podIP
60
- - name: HOSTNAME
61
- valueFrom:
62
- fieldRef:
63
- fieldPath: metadata.name
64
- envFrom:
65
- - configMapRef:
66
- name: mcp-config
67
- - secretRef:
68
- name: servicenow-credentials
69
- - secretRef:
70
- name: neo4j-credentials
71
- livenessProbe:
72
- httpGet:
73
- path: /health
74
- port: http
75
- initialDelaySeconds: 30
76
- periodSeconds: 30
77
- timeoutSeconds: 10
78
- failureThreshold: 3
79
- successThreshold: 1
80
- readinessProbe:
81
- httpGet:
82
- path: /ready
83
- port: http
84
- initialDelaySeconds: 15
85
- periodSeconds: 10
86
- timeoutSeconds: 5
87
- failureThreshold: 3
88
- successThreshold: 1
89
- resources:
90
- requests:
91
- memory: "256Mi"
92
- cpu: "250m"
93
- limits:
94
- memory: "512Mi"
95
- cpu: "500m"
96
- securityContext:
97
- allowPrivilegeEscalation: false
98
- readOnlyRootFilesystem: true
99
- capabilities:
100
- drop:
101
- - ALL
102
- volumeMounts:
103
- - name: tmp
104
- mountPath: /tmp
105
- - name: logs
106
- mountPath: /app/logs
107
- volumes:
108
- - name: tmp
109
- emptyDir: {}
110
- - name: logs
111
- emptyDir: {}
112
- affinity:
113
- podAntiAffinity:
114
- preferredDuringSchedulingIgnoredDuringExecution:
115
- - weight: 100
116
- podAffinityTerm:
117
- labelSelector:
118
- matchExpressions:
119
- - key: app.kubernetes.io/name
120
- operator: In
121
- values:
122
- - operations-mcp
123
- topologyKey: kubernetes.io/hostname
124
- terminationGracePeriodSeconds: 30
125
- ---
126
- # ServiceNow Operations MCP Service
127
- apiVersion: v1
128
- kind: Service
129
- metadata:
130
- name: operations-mcp
131
- namespace: servicenow-mcp
132
- labels:
133
- app.kubernetes.io/name: operations-mcp
134
- app.kubernetes.io/instance: operations-mcp
135
- app.kubernetes.io/version: "1.0.0"
136
- app.kubernetes.io/component: mcp-service
137
- app.kubernetes.io/part-of: servicenow-mcp
138
- annotations:
139
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
140
- spec:
141
- type: ClusterIP
142
- ports:
143
- - port: 3006
144
- targetPort: http
145
- protocol: TCP
146
- name: http
147
- selector:
148
- app.kubernetes.io/name: operations-mcp
149
- app.kubernetes.io/instance: operations-mcp
150
- ---
151
- # ServiceNow Operations MCP Horizontal Pod Autoscaler
152
- apiVersion: autoscaling/v2
153
- kind: HorizontalPodAutoscaler
154
- metadata:
155
- name: operations-mcp-hpa
156
- namespace: servicenow-mcp
157
- labels:
158
- app.kubernetes.io/name: operations-mcp
159
- app.kubernetes.io/instance: operations-mcp
160
- app.kubernetes.io/component: autoscaler
161
- spec:
162
- scaleTargetRef:
163
- apiVersion: apps/v1
164
- kind: Deployment
165
- name: operations-mcp
166
- minReplicas: 3
167
- maxReplicas: 9
168
- metrics:
169
- - type: Resource
170
- resource:
171
- name: cpu
172
- target:
173
- type: Utilization
174
- averageUtilization: 70
175
- - type: Resource
176
- resource:
177
- name: memory
178
- target:
179
- type: Utilization
180
- averageUtilization: 80
181
- behavior:
182
- scaleUp:
183
- stabilizationWindowSeconds: 60
184
- policies:
185
- - type: Percent
186
- value: 50
187
- periodSeconds: 60
188
- scaleDown:
189
- stabilizationWindowSeconds: 300
190
- policies:
191
- - type: Percent
192
- value: 25
193
- periodSeconds: 60
194
- ---
195
- # ServiceNow Operations MCP ServiceMonitor for Prometheus
196
- apiVersion: monitoring.coreos.com/v1
197
- kind: ServiceMonitor
198
- metadata:
199
- name: operations-mcp
200
- namespace: servicenow-mcp
201
- labels:
202
- app.kubernetes.io/name: operations-mcp
203
- app.kubernetes.io/instance: operations-mcp
204
- app.kubernetes.io/component: monitoring
205
- spec:
206
- selector:
207
- matchLabels:
208
- app.kubernetes.io/name: operations-mcp
209
- app.kubernetes.io/instance: operations-mcp
210
- endpoints:
211
- - port: http
212
- interval: 30s
213
- path: /metrics
214
- scrapeTimeout: 10s
215
- ---
216
- # ServiceNow Operations MCP Pod Disruption Budget
217
- apiVersion: policy/v1
218
- kind: PodDisruptionBudget
219
- metadata:
220
- name: operations-mcp-pdb
221
- namespace: servicenow-mcp
222
- labels:
223
- app.kubernetes.io/name: operations-mcp
224
- app.kubernetes.io/instance: operations-mcp
225
- app.kubernetes.io/component: availability
226
- spec:
227
- minAvailable: 1
228
- selector:
229
- matchLabels:
230
- app.kubernetes.io/name: operations-mcp
231
- app.kubernetes.io/instance: operations-mcp
232
- ---
@@ -1,232 +0,0 @@
1
- # ServiceNow Platform Development MCP Deployment
2
- apiVersion: apps/v1
3
- kind: Deployment
4
- metadata:
5
- name: platform-development-mcp
6
- namespace: servicenow-mcp
7
- labels:
8
- app.kubernetes.io/name: platform-development-mcp
9
- app.kubernetes.io/instance: platform-development-mcp
10
- app.kubernetes.io/version: "1.0.0"
11
- app.kubernetes.io/component: mcp-service
12
- app.kubernetes.io/part-of: servicenow-mcp
13
- app.kubernetes.io/managed-by: kubectl
14
- spec:
15
- replicas: 2
16
- strategy:
17
- type: RollingUpdate
18
- rollingUpdate:
19
- maxSurge: 1
20
- maxUnavailable: 0
21
- selector:
22
- matchLabels:
23
- app.kubernetes.io/name: platform-development-mcp
24
- app.kubernetes.io/instance: platform-development-mcp
25
- template:
26
- metadata:
27
- labels:
28
- app.kubernetes.io/name: platform-development-mcp
29
- app.kubernetes.io/instance: platform-development-mcp
30
- app.kubernetes.io/version: "1.0.0"
31
- app.kubernetes.io/component: mcp-service
32
- annotations:
33
- prometheus.io/scrape: "true"
34
- prometheus.io/port: "3007"
35
- prometheus.io/path: "/metrics"
36
- spec:
37
- serviceAccountName: mcp-service-account
38
- securityContext:
39
- runAsNonRoot: true
40
- runAsUser: 1001
41
- runAsGroup: 1001
42
- fsGroup: 1001
43
- containers:
44
- - name: platform-development-mcp
45
- image: servicenow-mcp/platform-development-mcp:latest
46
- imagePullPolicy: IfNotPresent
47
- ports:
48
- - name: http
49
- containerPort: 3007
50
- protocol: TCP
51
- env:
52
- - name: SERVICE_NAME
53
- value: "platform-development-mcp"
54
- - name: SERVER_PORT
55
- value: "3007"
56
- - name: SERVICE_IP
57
- valueFrom:
58
- fieldRef:
59
- fieldPath: status.podIP
60
- - name: HOSTNAME
61
- valueFrom:
62
- fieldRef:
63
- fieldPath: metadata.name
64
- envFrom:
65
- - configMapRef:
66
- name: mcp-config
67
- - secretRef:
68
- name: servicenow-credentials
69
- - secretRef:
70
- name: neo4j-credentials
71
- livenessProbe:
72
- httpGet:
73
- path: /health
74
- port: http
75
- initialDelaySeconds: 30
76
- periodSeconds: 30
77
- timeoutSeconds: 10
78
- failureThreshold: 3
79
- successThreshold: 1
80
- readinessProbe:
81
- httpGet:
82
- path: /ready
83
- port: http
84
- initialDelaySeconds: 15
85
- periodSeconds: 10
86
- timeoutSeconds: 5
87
- failureThreshold: 3
88
- successThreshold: 1
89
- resources:
90
- requests:
91
- memory: "256Mi"
92
- cpu: "250m"
93
- limits:
94
- memory: "512Mi"
95
- cpu: "500m"
96
- securityContext:
97
- allowPrivilegeEscalation: false
98
- readOnlyRootFilesystem: true
99
- capabilities:
100
- drop:
101
- - ALL
102
- volumeMounts:
103
- - name: tmp
104
- mountPath: /tmp
105
- - name: logs
106
- mountPath: /app/logs
107
- volumes:
108
- - name: tmp
109
- emptyDir: {}
110
- - name: logs
111
- emptyDir: {}
112
- affinity:
113
- podAntiAffinity:
114
- preferredDuringSchedulingIgnoredDuringExecution:
115
- - weight: 100
116
- podAffinityTerm:
117
- labelSelector:
118
- matchExpressions:
119
- - key: app.kubernetes.io/name
120
- operator: In
121
- values:
122
- - platform-development-mcp
123
- topologyKey: kubernetes.io/hostname
124
- terminationGracePeriodSeconds: 30
125
- ---
126
- # ServiceNow Platform Development MCP Service
127
- apiVersion: v1
128
- kind: Service
129
- metadata:
130
- name: platform-development-mcp
131
- namespace: servicenow-mcp
132
- labels:
133
- app.kubernetes.io/name: platform-development-mcp
134
- app.kubernetes.io/instance: platform-development-mcp
135
- app.kubernetes.io/version: "1.0.0"
136
- app.kubernetes.io/component: mcp-service
137
- app.kubernetes.io/part-of: servicenow-mcp
138
- annotations:
139
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
140
- spec:
141
- type: ClusterIP
142
- ports:
143
- - port: 3007
144
- targetPort: http
145
- protocol: TCP
146
- name: http
147
- selector:
148
- app.kubernetes.io/name: platform-development-mcp
149
- app.kubernetes.io/instance: platform-development-mcp
150
- ---
151
- # ServiceNow Platform Development MCP Horizontal Pod Autoscaler
152
- apiVersion: autoscaling/v2
153
- kind: HorizontalPodAutoscaler
154
- metadata:
155
- name: platform-development-mcp-hpa
156
- namespace: servicenow-mcp
157
- labels:
158
- app.kubernetes.io/name: platform-development-mcp
159
- app.kubernetes.io/instance: platform-development-mcp
160
- app.kubernetes.io/component: autoscaler
161
- spec:
162
- scaleTargetRef:
163
- apiVersion: apps/v1
164
- kind: Deployment
165
- name: platform-development-mcp
166
- minReplicas: 2
167
- maxReplicas: 6
168
- metrics:
169
- - type: Resource
170
- resource:
171
- name: cpu
172
- target:
173
- type: Utilization
174
- averageUtilization: 70
175
- - type: Resource
176
- resource:
177
- name: memory
178
- target:
179
- type: Utilization
180
- averageUtilization: 80
181
- behavior:
182
- scaleUp:
183
- stabilizationWindowSeconds: 60
184
- policies:
185
- - type: Percent
186
- value: 50
187
- periodSeconds: 60
188
- scaleDown:
189
- stabilizationWindowSeconds: 300
190
- policies:
191
- - type: Percent
192
- value: 25
193
- periodSeconds: 60
194
- ---
195
- # ServiceNow Platform Development MCP ServiceMonitor for Prometheus
196
- apiVersion: monitoring.coreos.com/v1
197
- kind: ServiceMonitor
198
- metadata:
199
- name: platform-development-mcp
200
- namespace: servicenow-mcp
201
- labels:
202
- app.kubernetes.io/name: platform-development-mcp
203
- app.kubernetes.io/instance: platform-development-mcp
204
- app.kubernetes.io/component: monitoring
205
- spec:
206
- selector:
207
- matchLabels:
208
- app.kubernetes.io/name: platform-development-mcp
209
- app.kubernetes.io/instance: platform-development-mcp
210
- endpoints:
211
- - port: http
212
- interval: 30s
213
- path: /metrics
214
- scrapeTimeout: 10s
215
- ---
216
- # ServiceNow Platform Development MCP Pod Disruption Budget
217
- apiVersion: policy/v1
218
- kind: PodDisruptionBudget
219
- metadata:
220
- name: platform-development-mcp-pdb
221
- namespace: servicenow-mcp
222
- labels:
223
- app.kubernetes.io/name: platform-development-mcp
224
- app.kubernetes.io/instance: platform-development-mcp
225
- app.kubernetes.io/component: availability
226
- spec:
227
- minAvailable: 1
228
- selector:
229
- matchLabels:
230
- app.kubernetes.io/name: platform-development-mcp
231
- app.kubernetes.io/instance: platform-development-mcp
232
- ---
package/k8s/rbac.yaml DELETED
@@ -1,140 +0,0 @@
1
- # RBAC configuration for ServiceNow MCP services
2
- apiVersion: v1
3
- kind: ServiceAccount
4
- metadata:
5
- name: mcp-service-account
6
- namespace: servicenow-mcp
7
- labels:
8
- app.kubernetes.io/name: servicenow-mcp
9
- app.kubernetes.io/component: security
10
- automountServiceAccountToken: true
11
- ---
12
- # Role for MCP services
13
- apiVersion: rbac.authorization.k8s.io/v1
14
- kind: Role
15
- metadata:
16
- namespace: servicenow-mcp
17
- name: mcp-service-role
18
- labels:
19
- app.kubernetes.io/name: servicenow-mcp
20
- app.kubernetes.io/component: security
21
- rules:
22
- # Allow reading configmaps and secrets
23
- - apiGroups: [""]
24
- resources: ["configmaps", "secrets"]
25
- verbs: ["get", "list", "watch"]
26
- # Allow reading services for service discovery
27
- - apiGroups: [""]
28
- resources: ["services", "endpoints"]
29
- verbs: ["get", "list", "watch"]
30
- # Allow reading pods for health checks
31
- - apiGroups: [""]
32
- resources: ["pods"]
33
- verbs: ["get", "list", "watch"]
34
- # Allow creating events for logging
35
- - apiGroups: [""]
36
- resources: ["events"]
37
- verbs: ["create", "patch"]
38
- ---
39
- # RoleBinding for MCP services
40
- apiVersion: rbac.authorization.k8s.io/v1
41
- kind: RoleBinding
42
- metadata:
43
- name: mcp-service-binding
44
- namespace: servicenow-mcp
45
- labels:
46
- app.kubernetes.io/name: servicenow-mcp
47
- app.kubernetes.io/component: security
48
- subjects:
49
- - kind: ServiceAccount
50
- name: mcp-service-account
51
- namespace: servicenow-mcp
52
- roleRef:
53
- kind: Role
54
- name: mcp-service-role
55
- apiGroup: rbac.authorization.k8s.io
56
- ---
57
- # ClusterRole for cross-namespace service discovery (if needed)
58
- apiVersion: rbac.authorization.k8s.io/v1
59
- kind: ClusterRole
60
- metadata:
61
- name: mcp-service-discovery-role
62
- labels:
63
- app.kubernetes.io/name: servicenow-mcp
64
- app.kubernetes.io/component: security
65
- rules:
66
- # Allow reading services across namespaces for service discovery
67
- - apiGroups: [""]
68
- resources: ["services"]
69
- verbs: ["get", "list", "watch"]
70
- # Allow reading nodes for topology awareness
71
- - apiGroups: [""]
72
- resources: ["nodes"]
73
- verbs: ["get", "list", "watch"]
74
- ---
75
- # ClusterRoleBinding for service discovery
76
- apiVersion: rbac.authorization.k8s.io/v1
77
- kind: ClusterRoleBinding
78
- metadata:
79
- name: mcp-service-discovery-binding
80
- labels:
81
- app.kubernetes.io/name: servicenow-mcp
82
- app.kubernetes.io/component: security
83
- subjects:
84
- - kind: ServiceAccount
85
- name: mcp-service-account
86
- namespace: servicenow-mcp
87
- roleRef:
88
- kind: ClusterRole
89
- name: mcp-service-discovery-role
90
- apiGroup: rbac.authorization.k8s.io
91
- ---
92
- # ServiceAccount for monitoring
93
- apiVersion: v1
94
- kind: ServiceAccount
95
- metadata:
96
- name: mcp-monitoring-account
97
- namespace: servicenow-mcp
98
- labels:
99
- app.kubernetes.io/name: servicenow-mcp
100
- app.kubernetes.io/component: monitoring
101
- ---
102
- # ClusterRole for monitoring
103
- apiVersion: rbac.authorization.k8s.io/v1
104
- kind: ClusterRole
105
- metadata:
106
- name: mcp-monitoring-role
107
- labels:
108
- app.kubernetes.io/name: servicenow-mcp
109
- app.kubernetes.io/component: monitoring
110
- rules:
111
- # Prometheus needs to scrape metrics
112
- - apiGroups: [""]
113
- resources: ["services", "endpoints", "pods"]
114
- verbs: ["get", "list", "watch"]
115
- - apiGroups: [""]
116
- resources: ["nodes", "nodes/proxy", "services", "endpoints", "pods"]
117
- verbs: ["get", "list", "watch"]
118
- - apiGroups: ["extensions"]
119
- resources: ["ingresses"]
120
- verbs: ["get", "list", "watch"]
121
- - apiGroups: ["networking.k8s.io"]
122
- resources: ["ingresses"]
123
- verbs: ["get", "list", "watch"]
124
- ---
125
- # ClusterRoleBinding for monitoring
126
- apiVersion: rbac.authorization.k8s.io/v1
127
- kind: ClusterRoleBinding
128
- metadata:
129
- name: mcp-monitoring-binding
130
- labels:
131
- app.kubernetes.io/name: servicenow-mcp
132
- app.kubernetes.io/component: monitoring
133
- subjects:
134
- - kind: ServiceAccount
135
- name: mcp-monitoring-account
136
- namespace: servicenow-mcp
137
- roleRef:
138
- kind: ClusterRole
139
- name: mcp-monitoring-role
140
- apiGroup: rbac.authorization.k8s.io