Skip to content

feat(infrahub-mcp): update to infrahub-mcp v1.2.1 and expose its settings - #110

Open
FragmentedPacket wants to merge 3 commits into
stablefrom
chore/infrahub-mcp-update
Open

FragmentedPacket wants to merge 3 commits into
stablefrom
chore/infrahub-mcp-update

Conversation

@FragmentedPacket

@FragmentedPacket FragmentedPacket commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Moves charts/infrahub-mcp to infrahub-mcp v1.2.1, adds values for the server settings the chart did not set, and re-pins the chart in infrahub and infrahub-enterprise.

infrahub-mcp chart (0.1.0 → 0.2.0)

  • appVersion: v1.1.6 → v1.2.1. The image registry.opsmill.io/opsmill/infrahub-mcp:v1.2.1 exists.
  • New values for the variables that v1.2.1 reads and the chart did not set. The list comes from src/infrahub_mcp/config.py, server.py and the configuration reference:
    • infrahub.username and infrahub.password (INFRAHUB_USERNAME, INFRAHUB_PASSWORD), with the same value / existingSecret pattern as apiToken
    • mcp.host (MCP_HOST)
    • mcp.tokenPassthroughHeader (INFRAHUB_MCP_TOKEN_PASSTHROUGH_HEADER)
    • mcp.authScopesWrite (INFRAHUB_MCP_AUTH_SCOPES_WRITE)
    • mcp.oidc.* (the six INFRAHUB_MCP_OIDC_* variables; the client secret can come from an existing Secret)
    • mcp.schemaExpandPeers (INFRAHUB_MCP_SCHEMA_EXPAND_PEERS)
  • MCP_PORT is now set from service.targetPort. Before, changing targetPort changed the container port but not the port the server listens on.
  • No value was removed. The description of mcp.rateLimit.burst is corrected: 0 means twice rps, not "disabled".
  • Not added, because extraEnv covers them:
    • INFRAHUB_MCP_ENV_FILE: the pod has no .env file.
    • Infrahub SDK variables such as INFRAHUB_TIMEOUT, INFRAHUB_TLS_* and INFRAHUB_PROXY.
  • README.md.gotmpl has a production example: authMode: token-passthrough, readOnly: true, the in-cluster server URL and an ingress on /mcp. It sets no shared API token: in token-passthrough mode the server calls Infrahub with each client's token and never reads INFRAHUB_API_TOKEN (server.py, configuration reference). An unused token in the pod would give every client its access if authMode were set back to none.
  • README.md is regenerated with helm-docs 1.14.2.

Re-pin in infrahub (4.35.0 → 4.36.0) and infrahub-enterprise (4.23.0 → 4.24.0)

  • infrahub pins infrahub-mcp 0.2.0; infrahub-enterprise pins infrahub 4.36.0. This follows the last re-pin, 70d0746 (infrahub-backup 1.4.0).
  • Each chart has a news fragment, and the dependency rows of both READMEs are updated.

CI fails on infrahub and infrahub-enterprise until 0.2.0 is published

helm dependency update cannot find infrahub-mcp 0.2.0 or infrahub 4.36.0 in the registry, so the lint and end-to-end jobs of those two charts fail on this pull request. The pins stay in this pull request on purpose. With their dependencies pointed at the local charts, both charts pass helm lint.

Tests

  • make lint passes for infrahub-mcp, infrahub-backup and infrahub-observability.
  • helm template of the README production example renders the expected env vars, Secret reference and ingress.
  • uv run pytest -v -m mcp tests/e2e did not run locally: the vcluster CLI is not installed on the machine used. The e2e-mcp CI job runs it.

Related pull requests

Merge order: #110, then #111, then opsmill/infrahub-mcp#221.

🤖 Generated with Claude Code

FragmentedPacket and others added 2 commits October 28, 2026 12:36
…ings

- appVersion v1.1.6 -> v1.2.1, version 0.1.0 -> 0.2.0
- Add values for the settings that v1.2.1 reads and the chart did not
  set: INFRAHUB_USERNAME/INFRAHUB_PASSWORD, MCP_HOST,
  INFRAHUB_MCP_TOKEN_PASSTHROUGH_HEADER, INFRAHUB_MCP_AUTH_SCOPES_WRITE,
  INFRAHUB_MCP_OIDC_* and INFRAHUB_MCP_SCHEMA_EXPAND_PEERS.
- Set MCP_PORT from service.targetPort so the server listens on the
  container port the chart declares.
- Correct the mcp.rateLimit.burst description: 0 means twice rps.
- Add a production example to the README: token-passthrough, read-only,
  API token from an existing Secret, ingress on /mcp.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e chart

Carry infrahub-mcp 0.2.0 (image v1.2.1) up the dependency chain:
- infrahub: re-pin infrahub-mcp 0.1.0 -> 0.2.0, version 4.35.0 -> 4.36.0
- infrahub-enterprise: re-pin infrahub 4.35.0 -> 4.36.0, version 4.23.0 -> 4.24.0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…mple

In token-passthrough mode the server calls Infrahub with each client's
token and never reads INFRAHUB_API_TOKEN, so the example no longer
creates a Secret for it or sets infrahub.apiToken.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant