Skip to content

mcp: back-sync the native server and CLI; run mcp-rs tests in CI; deprecate the Python server#154

Merged
suchintan merged 3 commits into
mainfrom
suchintan/mcp-native-sync-ci
Jul 24, 2026
Merged

mcp: back-sync the native server and CLI; run mcp-rs tests in CI; deprecate the Python server#154
suchintan merged 3 commits into
mainfrom
suchintan/mcp-native-sync-ci

Conversation

@suchintan

Copy link
Copy Markdown
Member

Summary

Completes the native-MCP promotion (#153) on the public side:

  • Back-sync map (.github/sync.yml): adds mcp-rs/ and cli/ so external contributions to the native server and CLI flow back to the development repo. Both directories exist on main (required before adding a deleteOrphaned mapping).
  • CI (.github/workflows/test.yml): adds the "Run standalone native MCP tests" step (cargo test --manifest-path mcp-rs/Cargo.toml --locked) after the Chromium install, matching the development repo's workflow.
  • Deprecation notices on mcp/README.md and mcp/AGENT_SETUP.md pointing to mcp-rs/ — the Python server stays until the native tool set reaches full parity.

Workflow + sync-map edits applied with explicit maintainer approval.

Smoke test

  • Both YAML files parse (PyYAML); sync map contains exactly one cli/ and one mcp-rs/ entry with deleteOrphaned: true; the workflow's step list contains "Run standalone native MCP tests" in position after "Install Chromium".
  • The mcp-rs suite runs in this PR's CI (first public run of the native server tests).

🤖 Generated with Claude Code

suchintan and others added 2 commits July 24, 2026 02:32
…k the Python server deprecated

The native MCP server (mcp-rs/) and the native CLI (cli/) now appear in this
repository's sync map, so external contributions to either flow back to the
development repo like the rest of the shared tree; both directories already
exist on main, which deleteOrphaned requires. CI gains the standalone
native MCP test step after the Chromium install, matching the development
repo. The legacy Python server's README and agent-setup guide now carry a
deprecation notice pointing at mcp-rs, which stays in place until the native
tool set reaches full parity.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The first public run of the native MCP suite failed its moving-target
actionability test on ubuntu-latest: the stability detector saw identical
position samples from a lagging compositor and clicked before the
animation ended. The suite holds green on the development repo's runner
class, so the job now uses the same one rather than gating public PRs on
renderer timing the runner cannot sustain.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions github-actions Bot deleted a comment from claude Bot Jul 24, 2026
Main gained the deflaked hidden-page scroll test whose earlier form was
failing this branch's CI, along with the native CLI verb repoint.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions github-actions Bot deleted a comment from claude Bot Jul 24, 2026
@claude

claude Bot commented Jul 24, 2026

Copy link
Copy Markdown

Summary

Small, low-risk PR: adds cli/ and mcp-rs/ to the back-sync map, wires mcp-rs tests into CI, and adds honest deprecation notices to the Python MCP docs. Verified against the checked-out tree: both cli/ and mcp-rs/ already exist on main with their own [workspace] declarations and committed Cargo.lock files (so --locked works), the blacksmith-2vcpu-ubuntu-2404 runner label is already used elsewhere in this repo (sync-rustwright-cloud.yml, benchmark*.yml), and the new CI step is correctly placed after Chromium install since mcp-rs/tests/stdio_e2e.rs launches a real browser. No code paths, FFI boundaries, or CDP logic touched.

🟡 Suggestions (1)
  • The runner change (ubuntu-latestblacksmith-2vcpu-ubuntu-2404) affects the entire test job, not just the new mcp-rs step. Worth double-checking that the existing cargo/pytest steps in this job are also known-good on the 2vcpu Blacksmith runner (memory/CPU headroom for maturin develop --release + the pytest subset), since the PR description frames the runner swap purely as being for mcp-rs stability.
📝 Minor / Style (2)
  • cli/ is added to sync.yml but no corresponding "Run standalone native CLI tests" step is added to test.yml, even though CONTRIBUTING.md documents cargo test --manifest-path cli/Cargo.toml. If that's intentionally deferred (e.g. cli's real-browser tests are --ignored-gated), consider saying so in the PR description to avoid it looking like a gap.
  • No CHANGELOG.md entry, but this looks acceptable since the substantive user-facing change (native MCP promotion / Python server deprecation) is already recorded under [Unreleased] from mcp: promote the native server to the public tree; deprecate the Python server #153 — this PR just adds the doc pointers and CI enforcement.

No critical issues found. LGTM.

@suchintan
suchintan merged commit 4631a1b into main Jul 24, 2026
13 checks passed
@suchintan
suchintan deleted the suchintan/mcp-native-sync-ci branch July 24, 2026 07:00
suchintan added a commit that referenced this pull request Jul 24, 2026
## Summary

Completes the back-sync map: `bindings/`, `go/`, `java/`, `csharp/`,
`ruby/`, and `php/` now sync from this repo to the development repo, so
external contributions to the language bindings flow back like the rest
of the shared tree (the same gap #154 closed for `cli/` and `mcp-rs/`).
All six directories exist on main — the precondition for
`deleteOrphaned` mappings.

Sync-map edit applied with explicit maintainer approval.

## Smoke test

PyYAML parse: 36 entries, all six new sources present exactly once, no
duplicates across the map.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Fable 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