Skip to content

chore(mcp): standardize Dart MCP and add Marionette bindings#822

Open
ibrahimozkn wants to merge 5 commits into
devfrom
chore/setup-dart-mcp-server
Open

chore(mcp): standardize Dart MCP and add Marionette bindings#822
ibrahimozkn wants to merge 5 commits into
devfrom
chore/setup-dart-mcp-server

Conversation

@ibrahimozkn
Copy link
Copy Markdown
Contributor

@ibrahimozkn ibrahimozkn commented Apr 26, 2026

Problem

Dart MCP setup was not fully standardized across agents, and Flutter apps were not wired for Marionette-based debug automation.

Changes

  • Standardized repo/workspace MCP configuration for Dart tooling.
  • Added Marionette MCP server entries to .mcp.json for both mcp clients sections.
  • Added marionette_flutter dependency to app and designer packages.
  • Updated app initialization to use MarionetteBinding.ensureInitialized() in debug mode (with Flutter test guard in app).
  • Updated designer initialization to use MarionetteBinding.ensureInitialized() in debug mode.
  • Included lockfile/localization formatting updates required by dependency and generator state.

Testing

  • gh pr view resolves PR metadata and branch linkage.
  • Branch pushed successfully with latest commits.
  • Run app debug startup and verify Marionette binding initialization path.
  • Run designer debug startup and verify Marionette binding initialization path.
  • No regressions in MCP tooling behavior across agents.

@github-actions github-actions Bot added dependencies Pull requests that update a dependency file app designer_v2 labels Apr 26, 2026
@ibrahimozkn ibrahimozkn changed the title chore(mcp): add repo-level Dart MCP setup chore(mcp): standardize Dart MCP and add Marionette bindings Apr 26, 2026
@github-actions
Copy link
Copy Markdown

Visit the preview URL for this PR (updated for commit ec76013):

(expires Sun, 03 May 2026 17:24:34 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: 2149dad49ed83535217e50d5c18c0c8c90da629b

@mohiuddinshahrukh
Copy link
Copy Markdown
Collaborator

Thanks for the PR. I tested the setup on Windows.

What I checked:

  • dart pub get works.
  • flutter test designer_v2\test passes.
  • flutter build web --debug succeeds for app.
  • flutter build web --debug succeeds for designer_v2.
  • dart mcp-server --help works, so the Dart MCP entry looks fine.
  • dart pub global run marionette_mcp --help failed on a fresh setup until I manually ran dart pub global activate marionette_mcp.

Two suggestions if required:

  1. The Marionette MCP config needs either a documented install step or a repo-managed way to run marionette_mcp.
  2. .vscode/mcp.json is currently a symlink, which showed up as a plain ../.mcp.json file on my Windows checkout, so VS Code would not read it as JSON.

The app/designer builds themselves look good. I think the main thing to fix might be: making the MCP setup reproducible for someone checking out the repo fresh.

Let me know what your thoughts are!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app dependencies Pull requests that update a dependency file designer_v2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants