SDODS
Guides

MCP

SDODS as an MCP server for Claude Code, Cursor and VS Code, and the MCP servers it consumes.

What you'll learn

How to connect an MCP client to SDODS over stdio or HTTP, which tool families exist, how scopes gate them, and how a project declares external MCP servers for its agents.

Topology

Browser driving goes through SDODS rather than beside it: the browser_* tools are the Playwright MCP tools bound to a project and environment. One server to install.

Connect

claude mcp add sdods -- npx -y @sdods/cli mcp --project demo-shop --env staging

sdods mcp install claude|codex|copilot|cursor|vscode|windsurf|gemini writes these for you. Every other client — Gemini CLI, Windsurf, Zed, JetBrains, Claude Desktop and more — and the Claude Code plugin are in Connect AI coding tools.

Settings → MCP clients: endpoint, tool list, install snippets and a connection test
Settings → MCP clients in the web UI: the endpoint, the tool catalogue and copy-ready client snippets.

Tool families

PrefixTools
project_ / workspace_project_list, project_get_config, project_list_envs, project_doctor, project_validate_config, workspace_tree
analyze_analyze_project, analyze_routes, analyze_locators, analyze_coverage, analyze_best_practices, analyze_change_impact, analyze_failure, analyze_suggest_scenarios
feature_ / step_feature_list, feature_read, feature_parse, feature_write (proposal), feature_lint, step_list, step_find
run_ / matrix_ / process_run_tests, run_tests_async, run_get, run_get_scenario, run_list, run_last_failed, matrix_expand, process_list
data_data_list_datasets, data_preview, data_pool_status
heal_heal_events, heal_locator_stats
proposal_proposal_list, proposal_get; with --caps agents also proposal_accept, proposal_reject
schedule_schedule_list, schedule_next
issue_only with --caps issues: issue_create, issue_link, issue_sync
browser_the bundled Playwright MCP tools, bound to a project and environment

There are no agent_*, insights_*, record_* or auth_* tools: agents, insights, recording and auth capture are CLI commands (sdods agent, sdods insights, sdods record, sdods auth).

Write tools produce proposals; they never touch your working tree. Every tool carries annotations, a Zod input schema and a link to its reference page.

Scopes

Over HTTP the bearer token's scopes decide which tools appear: viewer tokens see read tools, editor tokens add run and proposal tools, admin tokens everything. Over stdio you are the local admin.

Servers a project consumes

sdods.project.yaml
mcp:
  servers:
    github:
      transport: stdio
      command: npx
      args: [-y, '@modelcontextprotocol/server-github']
      envFrom: { GITHUB_PERSONAL_ACCESS_TOKEN: GITHUB_TOKEN }
      allowedTools: [search_issues, create_issue]

Values under envFrom and headersFrom are variable names; literals are rejected.

Every adapter can now reach these servers, not only the Claude and CLI ones. A chat-completions adapter — openai-compatible or ollama — connects each server as an MCP client and presents its tools as ordinary functions named mcp__<server>__<tool>, the same convention Claude Code uses. A server that fails to start is reported and skipped rather than taking the job with it.

The roles whose work is looking at the application (planner, generator, healer) also get Playwright's own MCP server attached automatically, so “write a test for this page” means the same thing on a local model as it does on a hosted one.

Tool count is the limit, not the transport. SDODS exposes 33–35 tools to a role and the browser_* family adds up to 48 more; a 7–8B local model starts describing tool calls in prose instead of making them somewhere past that. Narrow allowedTools, or use a larger model for the roles that drive a browser — see Local models.

Next steps

Using an AI coding agent? Install SDODS:

Install the SDODS plugin in Claude Code: skills, subagents, commands and the MCP server.

  1. /plugin marketplace add https://sdods.com/skills.git
  2. /plugin install sdods@sdods
Learn more about using SDODS with AI tools

On this page