Add cluster-internal MCP servers for the LocalAI agent pool
Gitea, Grafana, Nextcloud and Discourse MCP servers as ClusterIP-only Deployments in namespace mcp, read-only, acting as LDAP user localai. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
#SPDX-License-Identifier: MIT-0
|
||||
---
|
||||
mcp_servers:
|
||||
- name: gitea
|
||||
image: "{{ mcp_gitea_image }}"
|
||||
command: [/app/gitea-mcp]
|
||||
args: [-t, http, -p, "8000", -read-only, -H, "{{ mcp_gitea_host }}", -tools, "{{ mcp_gitea_tools }}"]
|
||||
envFrom: [{secretRef: {name: mcp-gitea}}]
|
||||
memory: 128Mi
|
||||
|
||||
- name: grafana
|
||||
image: "{{ mcp_grafana_image }}"
|
||||
command: [/app/mcp-grafana]
|
||||
args:
|
||||
- -t
|
||||
- streamable-http
|
||||
- --address
|
||||
- 0.0.0.0:8000
|
||||
- --allowed-hosts
|
||||
- "grafana.{{ mcp_namespace }}.svc.cluster.local:8000,grafana.{{ mcp_namespace }}.svc:8000,grafana.{{ mcp_namespace }}:8000"
|
||||
- --disable-write
|
||||
- --enabled-tools
|
||||
- "{{ mcp_grafana_enabled_tools }}"
|
||||
- --log-level
|
||||
- error
|
||||
envFrom: [{secretRef: {name: mcp-grafana}}]
|
||||
memory: 128Mi
|
||||
|
||||
- name: nextcloud
|
||||
image: "{{ mcp_nextcloud_image }}"
|
||||
args: "{{ ['--port', '8000', '--transport', 'streamable-http', '--no-oauth', '--log-level', 'warning'] + (mcp_nextcloud_apps | map('regex_replace', '^', '--enable-app=') | list) }}"
|
||||
envFrom: [{secretRef: {name: mcp-nextcloud}}]
|
||||
env:
|
||||
- {name: HOME, value: /tmp}
|
||||
memory: 512Mi
|
||||
|
||||
- name: discourse
|
||||
image: "{{ mcp_discourse_node_image }}"
|
||||
command: [sh, -c]
|
||||
args:
|
||||
- >-
|
||||
npm install -g --prefix /tmp/npm --no-fund --no-audit
|
||||
@discourse/mcp@{{ mcp_discourse_mcp_version }} supergateway@{{ mcp_supergateway_version }}
|
||||
&& exec /tmp/npm/bin/supergateway
|
||||
--stdio "/tmp/npm/bin/discourse-mcp --profile /secrets/discourse-profile.json --site https://discourse.eom.dev"
|
||||
--outputTransport streamableHttp --stateful --sessionTimeout 3600000
|
||||
--port 8000 --streamableHttpPath /mcp --healthEndpoint /healthz --logLevel none
|
||||
env:
|
||||
- {name: HOME, value: /tmp}
|
||||
- {name: npm_config_cache, value: /tmp/npm-cache}
|
||||
mounts:
|
||||
- {name: profile, mountPath: /secrets, readOnly: true}
|
||||
volumes:
|
||||
- {name: profile, secret: {secretName: mcp-discourse}}
|
||||
memory: 384Mi
|
||||
Reference in New Issue
Block a user