Skip to content

Add unpublished KDP 1.2 docs with rewritten MCP pages - #2265

Merged
kubermatic-bot merged 1 commit into
mainfrom
docs/kdp-1.2-mcp
Aug 18, 2026
Merged

Add unpublished KDP 1.2 docs with rewritten MCP pages#2265
kubermatic-bot merged 1 commit into
mainfrom
docs/kdp-1.2-mcp

Conversation

@mstruebing

@mstruebing mstruebing commented Aug 17, 2026

Copy link
Copy Markdown
Member

Creates a v1.2 KDP docs tree, copied from v1.1 and not published, with the MCP documentation rewritten and the AI Agent removed.

Ref: https://github.com/kubermatic/developer-platform-mgmt/issues/273

Why

KDP now hosts the MCP server behind a gateway that authenticates each caller with their own platform account (developer-platform#779), so users connect to an endpoint rather than running the server themselves. The 1.1 page describes the opposite, and in a way that would not work if followed:

1.1 says reality
used "together with a Kubernetes MCP server" not needed — resource CRUD is built in
"a stateful server" stateless; every tool takes an explicit workspace path
"at the cost of deploying the server" the platform hosts it; users add one config entry and log in
no install instructions needs the endpoint URL, client ID and a pinned callback port

Nothing documented the operator side either: the endpoint does not exist until an admin enables the gateway and adds an identity-provider client.

What

MCP

  • platform-users/ai-tooling rewritten: hosted endpoint, ready-to-paste Claude Code and OpenCode configuration, the twelve tools, the workspace-path rule, and what the tools deliberately cannot do (service enablement, Blueprint authoring, logs/exec).
  • setup/mcp-gateway (new, operator-facing): chart values, the public PKCE client and trustedPeers cross-client trust the provider needs, verification steps and failure modes.
  • Both pages warn about the two settings that must not be changed — the callback port is exact-matched by the provider, and pinning OAuth scopes drops the audience that makes kcp accept the token.

AI Agent removed (second commit)

The developer-platform-ai-agent chart is not part of 1.2, so everything documenting it is gone: the setup/ai-agent page and its screenshots, the quickstart section that deployed it (plus the <OPENAI_API_KEY> prerequisite and the two values files it read), the aiAgent feature block in the dashboard values, and the chart's row and upgrade step in the upgrade guide.

The dashboard's own AI assistance is a different component, configured on the dashboard API via api.config.openaiKey, so the UI Builder and Blueprint pages describing it are untouched.

Versioning

v1.2 is registered commented out in data/products.yaml, the same approach used to stage KubeLB 1.3 (e3b6bc06), so it is reachable by direct link but stays out of the version dropdown, sitemap and llms.txt.

Verification

hack/ci/verify-hugo.sh builds clean with no warnings, and codespell passes. Against the built site:

  • v1.2 appears 0 times in sitemap.xml and llms.txt, its pages carry noindex, nofollow, and the version dropdown still offers only v0.9.0 / v1.0 / v1.1.
  • The new pages render at /developer-platform/v1.2/platform-users/ai-tooling/ and /developer-platform/v1.2/setup/mcp-gateway/.
  • After the removal: every relref and readfile target in the tree still resolves, and nothing references the deleted setup/ai-agent page.

Note that hidden versions get no left sidebar (the theme only renders the nav tree for versions listed in products.yaml); it returns when the version is published.

Before publishing

  • Uncomment the v1.2 entry in data/products.yaml (one hunk).
  • Bump the chart pins, still at 1.1.0: setup/quickstart (×3 plus the kcp chart) and setup/upgrade (title and table).

KDP now hosts the MCP server behind a gateway that authenticates each caller
with their own platform account, so users connect to an endpoint instead of
running the server themselves. The 1.1 page describes the opposite: a stateful
server the user deploys, paired with a second Kubernetes MCP server.

Copy 1.1 to 1.2 and rewrite the MCP documentation there:

- AI Tooling: the hosted endpoint and ready-to-paste Claude Code and OpenCode
  configuration, the twelve tools the server exposes, the workspace path every
  call takes, and the operations the tools deliberately leave out. Corrects the
  claims that the server is stateful and needs a second MCP server.
- MCP Gateway: a new setup page for operators, covering the chart values, the
  public PKCE client and cross-client trust the identity provider needs, how to
  verify the endpoint, and the failure modes.

Both pages warn about the two settings that must not be changed: the OAuth
callback port is matched exactly by the provider, and pinning scopes drops the
audience that makes kcp accept the token.

1.2 is registered commented out in products.yaml, following the same approach
used to stage KubeLB 1.3, so the tree is reachable by direct link but stays out
of the version dropdown, sitemap and llms.txt until the release. The chart
version pins are still 1.1.0 and need bumping before publishing.

Signed-off-by: Max Strübing <mxstrbng@gmail.com>
@mstruebing mstruebing self-assigned this Aug 17, 2026
@kubermatic-bot kubermatic-bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. labels Aug 17, 2026
@kubermatic-bot

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@kubermatic-bot kubermatic-bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Aug 17, 2026
@mstruebing
mstruebing marked this pull request as ready for review August 17, 2026 14:23
@kubermatic-bot kubermatic-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Aug 17, 2026
@mstruebing

Copy link
Copy Markdown
Member Author

/retest

@iammerus

Copy link
Copy Markdown
Member

/lgtm
/approve

@kubermatic-bot kubermatic-bot added the lgtm Indicates that a PR is ready to be merged. label Aug 18, 2026
@kubermatic-bot

Copy link
Copy Markdown
Contributor

LGTM label has been added.

DetailsGit tree hash: d3b57bde6b05d99b7c5660f38f982bb3a9fa303a

@kubermatic-bot

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: iammerus

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubermatic-bot kubermatic-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Aug 18, 2026
@kubermatic-bot
kubermatic-bot merged commit 65ee6b1 into main Aug 18, 2026
11 checks passed
@kubermatic-bot
kubermatic-bot deleted the docs/kdp-1.2-mcp branch August 18, 2026 07:12
@mstruebing mstruebing mentioned this pull request Aug 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. lgtm Indicates that a PR is ready to be merged. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants