Skip to content

✨ Add MCP App groundwork with Claude/Codex parity - #98

Merged
Vivekyy merged 3 commits into
mainfrom
Vivekyy/lay-mcp-ui-groundwork
Jul 30, 2026
Merged

✨ Add MCP App groundwork with Claude/Codex parity#98
Vivekyy merged 3 commits into
mainfrom
Vivekyy/lay-mcp-ui-groundwork

Conversation

@Vivekyy

@Vivekyy Vivekyy commented Jul 30, 2026

Copy link
Copy Markdown
Collaborator

Adds a bundled stdio MCP server and single-file MCP App UI, wired through Codex’s direct .mcp.json and Claude’s compatible .claude-mcp.json while keeping equivalent launch behavior.

Extends build/package metadata, TypeScript DOM support, and npm contents so both hosts receive the server and UI artifacts.

Adds runtime, UI, packaging, coverage, and malformed-content tests, and updates the shared check skill to enforce Claude/Codex parity.

Refreshes CodeAlmanac package and contributor guidance; validated with typecheck, 51 tests, build, 90% diff coverage, Claude plugin validation, and npm pack dry-run.


Open in Stage

Greptile Summary

Adds a bundled stdio MCP server and single-file MCP App with equivalent Claude and Codex launch paths.

  • Registers the open_rudder tool and its associated HTML app resource.
  • Adds provider manifests, package artifacts, build configuration, and dependencies.
  • Adds server, UI, provider-parity, and packaging tests.
  • Updates contributor checks and architecture documentation for MCP App support.

Confidence Score: 5/5

The PR appears safe to merge, with no concrete changed-code defect identified.

The server, resource, UI bridge, build pipeline, package allowlist, and provider-specific launch configurations are internally consistent and covered across both Claude and Codex paths.

Important Files Changed

Filename Overview
src/mcp/server.ts Registers the read-only Rudder launch tool and its MCP App resource with matching structured output.
src/mcp/run-server.ts Resolves the plugin root, loads package metadata and generated app HTML, and connects the MCP server to stdio or an injected transport.
ui/rudder-app.ts Connects to the MCP Apps bridge and safely renders valid, absent, malformed, and unavailable-host states.
scripts/build-mcp-app.mjs Bundles the browser entrypoint and embeds it into a generated single-file HTML resource.
package.json Adds MCP dependencies, packaged configuration files, generated artifacts, UI coverage, and the expanded build pipeline.
test/mcp-server.test.ts Covers tool and resource behavior plus packaged stdio startup through both provider environment paths.
test/plugin-package.test.ts Enforces Claude/Codex configuration parity and inclusion of the MCP server and app artifacts.
test/ui.test.ts Covers structured result rendering and UI fallback/error states.

Sequence Diagram

sequenceDiagram
    participant Host as Claude/Codex
    participant Launcher as MCP configuration
    participant Server as Rudder MCP server
    participant App as Rudder MCP App
    Host->>Launcher: Discover rudder server
    Launcher->>Server: Start bundled stdio server
    Host->>Server: Call open_rudder
    Server-->>Host: Structured launch result + resource URI
    Host->>Server: Read ui://rudder/workspace.html
    Server-->>Host: Single-file HTML resource
    Host->>App: Render app and deliver tool result
Loading

Reviews (1): Last reviewed commit: "✨ Add MCP App groundwork with provider p..." | Re-trigger Greptile

Vivekyy and others added 3 commits July 30, 2026 15:18
Co-authored-by: Codex Agent <codex@openai.com>
Co-authored-by: Codex Agent <codex@openai.com>
@github-actions

Copy link
Copy Markdown

📦 No plugin release on merge

The plugin package, tag, and GitHub Release already exist for 0.1.4.
Bump package.json to release a new plugin version.

@ghost

ghost commented Jul 30, 2026

Copy link
Copy Markdown

@Vivekyy
Vivekyy merged commit d3f5c60 into main Jul 30, 2026
4 checks passed
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