Hide deprecated Remote MCP endpoints via overlay#78
Conversation
Add cloud-dataplane/overlays/hide-remote-mcp.yaml to remove the deprecated Remote MCP endpoint group (paths under /v1/redpanda-connect/mcp-servers, the "Remote MCP" tag, and MCP-only component schemas) from the published Cloud Data Plane API reference. The reference is generated from the cloudv2 OpenAPI source, so this overlay is an interim docs-only hide until the endpoints are removed at the source. Auto-applied by determine-overlays.sh + bump.yml. DOC-2382 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughAdds a versioned OpenAPI overlay titled “Hide Remote MCP endpoints.” The overlay removes Remote MCP server REST paths, related request and response schemas, the Estimated code review effort: 2 (Simple) | ~5 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
🚨 Breaking Cloud Data Plane API API change detectedStructural change detailsRemoved (9)
Powered by Bump.sh |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@cloud-dataplane/overlays/hide-remote-mcp.yaml`:
- Around line 22-56: Add removal entries in the MCP-only component schema
section for the remaining schemas $.components.schemas.Tool,
$.components.schemas.ConfigurationYAMLSchema, and
$.components.schemas.ComponentType, matching the existing remove directives and
preserving the overlay structure.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: acd9514d-3fcd-4744-9ade-415cd33e165d
📒 Files selected for processing (1)
cloud-dataplane/overlays/hide-remote-mcp.yaml
| # --- MCP-only component schemas (all verified MCP-exclusive) --- | ||
| - target: "$.components.schemas.CreateMCPServerResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.DeleteMCPServerResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.GetMCPServerResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.GetMCPServerServiceConfigSchemaResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.LintMCPConfigRequest" | ||
| remove: true | ||
| - target: "$.components.schemas.LintMCPConfigResponse" | ||
| remove: true | ||
| - target: "$.components.schemas['ListMCPServersRequest.Filter']" | ||
| remove: true | ||
| - target: "$.components.schemas.ListMCPServersResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.MCPServer" | ||
| remove: true | ||
| - target: "$.components.schemas['MCPServer.ServiceAccount']" | ||
| remove: true | ||
| - target: "$.components.schemas['MCPServer.State']" | ||
| remove: true | ||
| - target: "$.components.schemas['MCPServer.Status']" | ||
| remove: true | ||
| - target: "$.components.schemas.MCPServerCreate" | ||
| remove: true | ||
| - target: "$.components.schemas.MCPServerUpdate" | ||
| remove: true | ||
| - target: "$.components.schemas.StartMCPServerResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.StopMCPServerResponse" | ||
| remove: true | ||
| - target: "$.components.schemas.UpdateMCPServerResponse" | ||
| remove: true |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n== overlay ==\n'
cat -n cloud-dataplane/overlays/hide-remote-mcp.yaml
printf '\n== files mentioning MCP schema names ==\n'
rg -n "CreateMCPServerResponse|DeleteMCPServerResponse|GetMCPServerResponse|GetMCPServerServiceConfigSchemaResponse|LintMCPConfigRequest|LintMCPConfigResponse|ListMCPServersRequest.Filter|ListMCPServersResponse|MCPServer|MCPServerCreate|MCPServerUpdate|StartMCPServerResponse|StopMCPServerResponse|UpdateMCPServerResponse|ConfigurationYAMLSchema|ComponentType|Tool" cloud-dataplane -g '!**/*.lock'
printf '\n== nearby definitions in source spec files ==\n'
rg -n -A4 -B4 "ConfigurationYAMLSchema|ComponentType|Tool|MCPServer|LintMCPConfig|GetMCPServerServiceConfigSchemaResponse" cloud-dataplaneRepository: redpanda-data/api-docs
Length of output: 44079
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python3 - <<'PY'
from pathlib import Path
import re
text = Path("cloud-dataplane/cloud-dataplane.yaml").read_text()
names = ["Tool", "ConfigurationYAMLSchema", "ComponentType"]
for name in names:
refs = []
for i, line in enumerate(text.splitlines(), 1):
if f"`#/components/schemas/`{name}" in line:
refs.append((i, line.strip()))
print(f"\n{name}: {len(refs)} refs")
for i, line in refs:
print(f" {i}: {line}")
# crude check for named schema definitions themselves
print("\nDefinitions:")
for name in names:
m = re.search(rf"^\s*{re.escape(name)}:\s*$", text, re.M)
print(f" {name}: {'present' if m else 'missing'}")
PYRepository: redpanda-data/api-docs
Length of output: 650
Remove the remaining MCP-only component schemas.
Tool, ConfigurationYAMLSchema, and ComponentType are still defined under components.schemas, and they’re only used by the MCP schemas removed above. Add them to the overlay too.
Proposed additions
+ - target: "$.components.schemas.ConfigurationYAMLSchema"
+ remove: true
+ - target: "$.components.schemas.ComponentType"
+ remove: true
+ - target: "$.components.schemas.Tool"
+ remove: true📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| # --- MCP-only component schemas (all verified MCP-exclusive) --- | |
| - target: "$.components.schemas.CreateMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.DeleteMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.GetMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.GetMCPServerServiceConfigSchemaResponse" | |
| remove: true | |
| - target: "$.components.schemas.LintMCPConfigRequest" | |
| remove: true | |
| - target: "$.components.schemas.LintMCPConfigResponse" | |
| remove: true | |
| - target: "$.components.schemas['ListMCPServersRequest.Filter']" | |
| remove: true | |
| - target: "$.components.schemas.ListMCPServersResponse" | |
| remove: true | |
| - target: "$.components.schemas.MCPServer" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.ServiceAccount']" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.State']" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.Status']" | |
| remove: true | |
| - target: "$.components.schemas.MCPServerCreate" | |
| remove: true | |
| - target: "$.components.schemas.MCPServerUpdate" | |
| remove: true | |
| - target: "$.components.schemas.StartMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.StopMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.UpdateMCPServerResponse" | |
| remove: true | |
| # --- MCP-only component schemas (all verified MCP-exclusive) --- | |
| - target: "$.components.schemas.CreateMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.DeleteMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.GetMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.GetMCPServerServiceConfigSchemaResponse" | |
| remove: true | |
| - target: "$.components.schemas.LintMCPConfigRequest" | |
| remove: true | |
| - target: "$.components.schemas.LintMCPConfigResponse" | |
| remove: true | |
| - target: "$.components.schemas['ListMCPServersRequest.Filter']" | |
| remove: true | |
| - target: "$.components.schemas.ListMCPServersResponse" | |
| remove: true | |
| - target: "$.components.schemas.MCPServer" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.ServiceAccount']" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.State']" | |
| remove: true | |
| - target: "$.components.schemas['MCPServer.Status']" | |
| remove: true | |
| - target: "$.components.schemas.MCPServerCreate" | |
| remove: true | |
| - target: "$.components.schemas.MCPServerUpdate" | |
| remove: true | |
| - target: "$.components.schemas.StartMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.StopMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.UpdateMCPServerResponse" | |
| remove: true | |
| - target: "$.components.schemas.ConfigurationYAMLSchema" | |
| remove: true | |
| - target: "$.components.schemas.ComponentType" | |
| remove: true | |
| - target: "$.components.schemas.Tool" | |
| remove: true |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@cloud-dataplane/overlays/hide-remote-mcp.yaml` around lines 22 - 56, Add
removal entries in the MCP-only component schema section for the remaining
schemas $.components.schemas.Tool, $.components.schemas.ConfigurationYAMLSchema,
and $.components.schemas.ComponentType, matching the existing remove directives
and preserving the overlay structure.
Feediver1
left a comment
There was a problem hiding this comment.
Final-pass review (docs-team-standards, spec-tooling focus)
Overall: Correct and safe as written — every JSONPath target verified to exist in the source spec with exact key spellings, and the removal set creates no dangling $refs. One completeness gap (CodeRabbit's, verified genuine): three transitively-MCP-only schemas survive the hide.
Jira ticket alignment
DOC-2382 — ✅ implements the ticket's proposed solution exactly: 6 paths, the Remote MCP tag (with the empty-nav-group rationale), 17 schemas, auto-pickup via determine-overlays.sh + bump.yml, interim-until-source-removal framing.
Verification performed
- All 6 path keys and all 17 schema names match the source
cloud-dataplane.yamlexactly — this mattered because a typo'd JSONPath silently no-ops rather than erroring. - Full reference-graph walk: no kept path or schema references anything removed, so the published bundle stays valid.
Suggestions
- Add three more
removeactions:Tool,ConfigurationYAMLSchema,ComponentType. Reference-graph verified:Toolis referenced only byLintMCPConfigRequest/MCPServer/MCPServerCreate/MCPServerUpdate,ConfigurationYAMLSchemaonly byGetMCPServerServiceConfigSchemaResponse, andComponentTypeonly by the other two — all being removed, and no endpoints touch them. After the overlay they're orphans, so MCP tooling types still leak into the published schemas section this ticket wants scrubbed. Removing them is provably safe (zero inbound references remain). This confirms CodeRabbit's Minor finding. - Verify via the Bump diff after merge, per the ticket's own acceptance step — the overlay only takes effect at publish time, so the PR's green checks don't exercise it.
What works well
- The overlay comments state their verification claims ("exact keys confirmed", "all verified MCP-exclusive") — and they check out for the 17 targeted schemas
- Removing the tag definition alongside the paths avoids the empty-nav-group artifact
- The ticket + PR pair documents the interim-vs-source-fix boundary so the overlay doesn't quietly become permanent
🤖 Automated final-pass review via docs-team-standards pr-review. All targets and reference claims verified against cloud-dataplane.yaml on main.
Feediver1
left a comment
There was a problem hiding this comment.
See CodeRabbit suggestions.
Add cloud-dataplane/overlays/hide-remote-mcp.yaml to remove the deprecated Remote MCP endpoint group (paths under /v1/redpanda-connect/mcp-servers, the "Remote MCP" tag, and MCP-only component schemas) from the published Cloud Data Plane API reference. The reference is generated from the cloudv2 OpenAPI source, so this overlay is an interim docs-only hide until the endpoints are removed at the source. Auto-applied by determine-overlays.sh + bump.yml.
Resolves DOC-2382.