Conversation
* feat(context-mesh): update landing page * remove unanswered question * Netlify retrigger commit * fix: statement tag * fix: broken link * Update app/_landing_pages/context-mesh.yaml Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com> --------- Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
✅ Deploy Preview for kongdeveloper ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
cloudjumpercat
left a comment
There was a problem hiding this comment.
Left some suggestions! Here's a list of sort of the overview of them:
- You should add the Context Mesh product to our top nav (/app/_data/top_navigation.yml) and the homepage (app/_data/homepage.yml).
- I left a bunch of comments on the landing page about content that I think was missing.
- The how to didn't work for me, which I've noted in a few spots. I also think if we can, the UI steps there should be API steps instead.
- I recommend reworking the table on the landing page (I've left a suggestion for it).
There was a problem hiding this comment.
I'm doing this review as if these are all the docs that will be added for the Context Mesh release (I checked the milestone and it looks like the only other docs that will be added are to the Catalog landing page and maybe an install page?).
I think several things are missing. You could make a Context Mesh reference page, or they could go here on the landing page. For the sake of timing, the landing page would work okay.
- Operator seems to be the only tool that's supported (as in your CP must be Operator configured). Why? We also need to call this out as a limitation. Is this limitation temporary?
- If you can configure Context Mesh via the Konnect API, we need a section on here with tabs that contains API and UI steps for how to configure it (similar to https://developer.konghq.com/dedicated-cloud-gateways/managed-cache/#configure-a-managed-cache) in a general way. This is just to cover if someone wants to use a tool that we don't have a how to for, they know what all their options are and general steps to configure if they ask Claude or Kapa etc.
- Basic mode vs advanced mode: what are the defaults for basic? How do I decide which to use? What does advanced do?
- We need to explain why someone would use this over AIGW MCP servers or the soon to release Portal MCP server.
- We say that "Context Mesh exposes REST APIs and existing MCP servers to AI agents as a single Code Mode MCP server. It is the mediation layer between agents and your APIs. Agent traffic to those APIs passes through the same path as the rest of your API traffic, so the policies and observability you already apply continue to apply." but how does this look since you can't scope a plugin to an MCP server? How are we governing Context Mesh MCP servers with a Kong Gateway?
- We also need to update https://developer.konghq.com/mcp/ with info about Context Mesh (lower priority)
There was a problem hiding this comment.
You could make a Context Mesh reference page
There's one in progress, but the PRDs are outdated and no source of truth exists to properly describe the product. We agreed with the team on the landing page and the quickstart guide to avoid shipping the product with no docs at all.
Operator seems to be the only tool that's supported (as in your CP must be Operator configured). Why?
My best guess is that the MCP deploys using a custom resources layer, which a decK CP doesn't contain?
Is this limitation temporary?
No, it seems it will be permanent.
Basic mode vs advanced mode: what are the defaults for basic? How do I decide which to use? What does advanced do?
Nothing in the specs or the PRDs answers that
We need to explain why someone would use this over AIGW MCP servers or the soon to release Portal MCP server.
Context Mesh is supposed to blend into the AI GW MCP server, as Context Interfaces (the name Context Mesh is supposed to disappear).
how does this look since you can't scope a plugin to an MCP server? How are we governing Context Mesh MCP servers with a Kong Gateway?
MCP servers becomes a Gateway service, so you can technically apply plugins to it (the word "policies" needs to be changed, the correct word so far is "plugin"). You can treat it like any other route or service (for now).
Co-authored-by: Diana <75819066+cloudjumpercat@users.noreply.github.com>
1d0d3ee to
473bc3f
Compare
cloudjumpercat
left a comment
There was a problem hiding this comment.
Okay, left a few changes based on your responses. I didn't test the how to fully end to end again because I'm waiting on if the API will be supported, so just let me know as soon as you know.
The biggest thing, I've added a chunk of content to the landing page based on your answers to my questions, but I want to post my comment on there here: "No idea if this will render correctly, but based on your replies to my questions, this is what I was thinking to incorporate that into this page instead of a separate reference. Please edit any text, I just threw this together as a rough draft. Also, please check with Danny about basic/advanced mode copy. I got that by feeding Claude the context mesh repo, then it found this was actually in the operator repo, so this is purely Claude's understanding from the code."
| - text: Scorecards | ||
| icon: /assets/icons/monochrome/document.svg | ||
| url: /catalog/scorecards/ |
There was a problem hiding this comment.
| - text: Context Mesh | |
| url: /context-mesh/ | |
| icon: /assets/images/context-mesh/context-mesh.svg |
Let's put this here instead (also selfishly I'm removing Scorecards since they're part of the old Catalog now)
| - text: Context Mesh | ||
| url: /context-mesh/ | ||
| icon: /assets/images/context-mesh/context-mesh.svg |
There was a problem hiding this comment.
| - text: Context Mesh | |
| url: /context-mesh/ | |
| icon: /assets/images/context-mesh/context-mesh.svg |
recommended moving to a different location in an earlier comment
| - title: "{{site.context_mesh}} Overview" | ||
| url: /context-mesh/ | ||
| - title: Get started with {{site.context_mesh}} | ||
| url: /context-mesh/get-started/ |
There was a problem hiding this comment.
| - title: "{{site.context_mesh}} Overview" | |
| url: /context-mesh/ | |
| - title: Get started with {{site.context_mesh}} | |
| url: /context-mesh/get-started/ | |
| - path: /context-mesh/ | |
| - path: /context-mesh/get-started/ |
my bad, this is what should autorender the title and description
|
|
||
| If you're adding one or many APIs to your Code Mode MCP server, you can either upload a OpenAPI Specification (OAS) v3.0 file for each API or add them directly from APIs that you already have in [Catalog](/catalog). | ||
|
|
||
| - header: |
There was a problem hiding this comment.
| - header: | |
| - columns: | |
| - blocks: | |
| - type: structured_text | |
| config: | |
| header: | |
| text: "Deploying a {{site.context_mesh}} MCP server" | |
| blocks: | |
| - type: text | |
| text: | | |
| To deploy a {{site.context_mesh}} MCP server, you must configure the source APIs and MCP server and then create the {{site.context_mesh}} MCP server. | |
| When you create the MCP server, you have the option to deploy it to your {{site.base_gateway}} in basic or advanced mode: | |
| * **Basic mode**: {{site.konnect_short_name}} fully manages the deployment for you. When you create an MCP server and map it to a control plane, {{ site.operator_product_name }} automatically spins up everything needed to actually run it: the pod (Deployment), a Gateway Service to reach it, a Secret for its auth token, autoscaling (HPA), and the {{site.base_gateway}} config (Service/Route to route traffic to it, plus the standard plugins). | |
| * **Advanced mode**: {{site.konnect_short_name}} gives you the reference (the MCP server record exists in {{site.konnect_short_name}} and is mapped to the control plane), but doesn't create any of the Kubernetes resources for you. You're expected to write and manage your own {{ site.operator_product_name }} custom resources manually. This is ideal for use cases where you need custom resource limits, a different replica count, node affinity, or other deployment tuning basic mode doesn't expose. | |
| When you deploy a {{site.context_mesh}} MCP server on a {{site.base_gateway}} with {{ site.operator_product_name }}, {{site.base_gateway}} creates a Gateway Service entity for your MCP server. | |
| The name of the MCP server Gateway Service will be something like `mcpserver-98dd0356`. | |
| By deploying a Gateway Service for your MCP server, this allows you to apply plugins and other governing strategies to your {{site.context_mesh}} MCP server. | |
| - columns: | |
| - blocks: | |
| - type: structured_text | |
| config: | |
| header: | |
| text: "{{site.context_mesh}} limitations" | |
| blocks: | |
| - type: text | |
| text: | | |
| {{site.context_mesh}} MCP servers can only be linked to and proxied with {{site.base_gateway}} control planes that were provisioned with [{{site.operator_product_name}}](/operator/). | |
| - header: |
No idea if this will render correctly, but based on your replies to my questions, this is what I was thinking to incorporate that into this page instead of a separate reference. Please edit any text, I just threw this together as a rough draft. Also, please check with Danny about basic/advanced mode copy. I got that by feeding Claude the context mesh repo, then it found this was actually in the operator repo, so this is purely Claude's understanding from the code.
Description
This PR updates the context mesh docs to include only a landing page and a get started guide.
Preview Links
Test instructions
.tech:export KONNECT_CONTROL_PLANE_URL=us.api.konghq.techAPI
Checklist
descriptionentry in frontmatter.