Yutori MCP
MCP tools and workflow skills for building agents that operate computers as well as browse, research, and monitor the web with Yutori.
You can use it with Claude Code, Codex, Cursor, VS Code, ChatGPT, OpenClaw, and other MCP hosts.
Features
Capabilities:
- Computer use — Operate apps on your Mac (macOS 15+)
- Browsing — Automate websites with an AI navigator
- Research — Run one-time deep web research tasks
- Scouting — Monitor the web continuously for anything you care about at a desired frequency
Workflow skills (for clients that support slash commands):
/yutori-computer-use— Local Mac desktop automation/yutori-browse— Browser automation/yutori-research— Deep web research (async, 5–10 min)/yutori-scout— Set up continuous web monitoring/yutori-competitor-watch— Competitor monitoring template/yutori-api-monitor— API/changelog monitoring template
Installation
Requirements
If you don't already have uv installed, install it (it includes uvx):
curl -LsSf https://astral.sh/uv/install.sh | sh
Or with Homebrew:
brew install uv
Python 3.10 or higher is required (uv manages this automatically for most installs).
For the quickstart below, Node.js is also required (for npx).
AI agent install (recommended)
Paste this into Claude Code, Codex, Cursor, Windsurf, or another coding agent:
Use https://yutori.com/api/llms.txt and set up Yutori for me.
Manual quick install
-
Run in terminal:
uvx yutori-mcp login
This will open Yutori Platform in your browser and save your API key locally.
Or, manually add your API key
Go to (https://platform.yutori.com) and add your key to the config file:
mkdir -p ~/.yutori cat > ~/.yutori/config.json << 'EOF' {"api_key": "yt-your-api-key"} EOF
-
Install MCP using add-mcp (requires Node.js):
npx add-mcp "uvx yutori-mcp"Pick the clients you want to configure.
-
Install workflow skills using skills.sh (requires Node.js):
npx skills add yutori-ai/yutori-mcp -gAdds slash-command shortcuts like
/yutori-scout,/yutori-research, and more.-ginstalls them at user scope. Omit-gif you want a project-local install instead.To list or remove skills later:
npx skills ls -g npx skills remove -g yutori-login
-
Restart the tool you are using.
Manual per-client install
Claude Code
-
Plugin (Recommended) - Includes MCP tools + workflow skills
Type these commands in Claude Code's input (not in a terminal):
/plugin marketplace add yutori-ai/yutori-mcp /plugin install yutori@yutori-pluginsThis installs both the MCP tools and workflow skills:
Skill Description /yutori-computer-useLocal Mac desktop automation /yutori-browseBrowser automation tasks /yutori-researchDeep web research workflow (async, 5-10 min) /yutori-scoutSet up continuous web monitoring with comprehensive queries /yutori-competitor-watchQuick competitor monitoring template /yutori-api-monitorAPI/changelog monitoring template Already have the MCP server installed? Remove it first to avoid duplicate configurations:
claude mcp remove yutori -s user # if installed at user scope claude mcp remove yutori -s local # if installed at local/project scope
To uninstall the plugin later:
/plugin uninstall yutori@yutori-plugins -s user -
MCP Only (if you prefer not to use the plugin)
claude mcp add --scope user yutori -- uvx yutori-mcp
The server reads your API key from
~/.yutori/config.json(set up viauvx yutori-mcp login).
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"yutori": {
"command": "uvx",
"args": ["yutori-mcp"]
}
}
}
The server reads your API key from ~/.yutori/config.json.
For setup details, see the Claude Desktop MCP install guide.
Cursor
Click the button to install:
Or install manually:
Go to Cursor Settings → MCP → Add new MCP Server, then add:
{
"mcpServers": {
"yutori": {
"command": "uvx",
"args": ["yutori-mcp"]
}
}
}
The server reads your API key from ~/.yutori/config.json.
See the Cursor MCP guide for setup details.
VS Code
Click the button to install:
Or install manually:
code --add-mcp '{"name":"yutori","command":"uvx","args":["yutori-mcp"]}'
The server reads your API key from ~/.yutori/config.json.
ChatGPT
Open ChatGPT Desktop and go to Settings -> Connectors -> MCP Servers -> Add server.
{
"mcpServers": {
"yutori": {
"command": "uvx",
"args": ["yutori-mcp"]
}
}
}
The server reads your API key from ~/.yutori/config.json.
For setup details, see the OpenAI MCP guide.
Codex
-
MCP Server:
codex mcp add yutori -- uvx yutori-mcp
Or add to
~/.codex/config.toml:[mcp_servers.yutori] command = "uvx" args = ["yutori-mcp"]
The server reads your API key from
~/.yutori/config.json. -
Skills (optional, for workflow guidance):
Install skills using
$skill-installerinside Codex:$skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-computer-use $skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-browse $skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-research $skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-scout $skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-competitor-watch $skill-installer install https://github.com/yutori-ai/yutori-mcp/tree/main/.agents/skills/yutori-api-monitorOr manually copy skills to your user directory (use
-Lso symlinks are dereferenced and real files are copied):git clone https://github.com/yutori-ai/yutori-mcp /tmp/yutori-mcp cp -rL /tmp/yutori-mcp/.agents/skills/* ~/.agents/skills/
To uninstall manually copied skills, delete the matching directories from
~/.agents/skills/. When updating this way, remove old Yutori skill directories first, sincecp -rLwill not delete renamed or removed skills.Restart Codex after installing skills.
Skill Command Description Computer Use $yutori-computer-useLocal Mac desktop automation Browse $yutori-browseBrowser automation with AI navigator Research $yutori-researchDeep web research (async, 5-10 min) Scout $yutori-scoutSet up continuous web monitoring Competitor Watch $yutori-competitor-watchQuick competitor monitoring template API Monitor $yutori-api-monitorAPI/changelog monitoring template See the Codex Skills docs for more on skills.
OpenClaw
Follow the Quickstart above:
- Install skills and MCP for OpenClaw (and optionally other tools) via skills.sh:
npx skills add yutori-ai/yutori-mcp
When prompted, choose which Yutori skills to install and select OpenClaw as the tool.
Gemini CLI
Add to ~/.gemini/settings.json. If you already have mcp or mcpServers, merge these keys into your existing config:
{
"mcp": {
"allowed": ["yutori"]
},
"mcpServers": {
"yutori": {
"command": "uvx",
"args": ["yutori-mcp"]
}
}
}
The server reads your API key from ~/.yutori/config.json.
Add "yutori" to mcp.allowed if you already list other MCPs there. For more details, see the Gemini CLI MCP settings guide.
Run with pip
Install the package to run the MCP server (e.g. for custom or self-hosted setups):
pip install yutori-mcp
macOS computer use
Optional, macOS 15+ only. Computer use operates the visible desktop, or a single app window in the background while you keep working, so it needs a local driver and system permissions on top of the install above:
uvx yutori-mcp computer-use setup # installs CuaDriver.app, requests Screen Recording + Accessibility
setup finishes by running the readiness checks and reports anything still missing. Re-run
those checks any time with uvx yutori-mcp computer-use doctor.
Prompting a task from the terminal
The task is one quoted positional argument — plain English, in the imperative, as if you were handing the Mac to someone else:
uvx yutori-mcp computer-use run "<what to do, and what to report back>"
Everything else is optional. The three that matter most:
# Name the app you want driven, so the run starts in the right place
uvx yutori-mcp computer-use run "Compute 17 * 23 and report the result." --app Calculator
# Start a browser task on a specific page (--start-url requires --app)
uvx yutori-mcp computer-use run "List every person on the team page and save them to ~/Desktop/team.txt." \
--app Safari --start-url https://yutori.com/company
# Drive one window in the background and keep working (--mode background requires --app)
uvx yutori-mcp computer-use run "Add a note titled Standup with today's three agenda items." \
--app Notes --mode background
Write the prompt so the run has a finish line:
- Say what "done" looks like. "…and report the list" or "…and save it to
~/Desktop/team.txt" gives the model something to stop at; "look at the team page" does not. - Name the app and the starting page with
--app/--start-urlinstead of describing them in the prompt. The runner opens them before the model's first screenshot, which saves turns and avoids the model guessing at which window to use. - Spell out the constraints you care about — which account to use, which folder to write to, what to do when something is ambiguous ("if the page asks to log in, stop and say so").
- Keep it one task. One run holds a machine-wide lock; chain separate runs rather than packing five errands into one prompt.
- Don't put secrets in the prompt. Have the model use an already-signed-in app or an entry in Keychain; typed text shows up (scrubbed and truncated) in the action log.
| Flag | Default | What it does |
|---|---|---|
--app NAME |
none | App to target; opened and readied before the first screenshot |
--start-url URL |
none | Page to open in --app first. Requires --app |
--minutes N |
30 |
Absolute deadline, 1–60. The run stops here regardless of progress |
--max-steps N |
60 |
Model turns before stopping; one turn can take several actions |
--mode background |
foreground |
Drives only --app's window, without taking focus. Requires --app |
--allow-foreground-fallback |
off | Background only: retry a missed action with the window briefly fronted |
--env dev |
production | Runs against platform.dev.yutori.com. Goes before the subcommand: yutori-mcp --env dev computer-use run "…" |
Foreground (the default) drives the whole visible desktop — don't touch the Mac while it
runs. Background drives one app's window and captures only that window, so you can keep
working; leave that window alone. Some apps accept background clicks but not typed keys
(Calculator, for one), and the run reports the refusal rather than typing blind — add
--allow-foreground-fallback for typing-heavy background tasks.
uvx yutori-mcp computer-use stop ends the active run from another terminal (background runs
have no on-screen Stop button). uvx yutori-mcp computer-use smoke is an end-to-end check: it
types into Calculator to confirm the permissions took effect, then has the agent compute 9 * 9.
While a task runs, run prints each action as the agent takes it — including the individual
clicks, keystrokes, and scrolls inside each computer_batch — and closes with the model's
answer in a labeled FINAL OUTPUT block. Output is colorized when stdout is a terminal; set
NO_COLOR=1 to turn that off, or FORCE_COLOR=1 to keep it through a pipe.
The harness in this repository is minimal: one task at a time (a machine-wide lock), either on the visible desktop or targeting one app window in the background, with no multiplexing. For scalable sandbox runs, see n2 on Daytona.
Tools
See TOOLS.md for the full tool reference — computer use, Browsing, Research, and Scout tools with parameters, examples, and response formats.
Development
Setup
git clone https://github.com/yutori-ai/yutori-mcp
cd yutori-mcp
pip install -e ".[dev]"
Testing
pytest
Running locally
yutori-mcp login # authenticate (one-time)
yutori-mcp # run the server (or: python -m yutori_mcp.server)
Computer-use runtime
computer-use doctor verifies the pinned yutori SDK install against the published wheel.
SDK contributors testing an editable checkout can override that with
YUTORI_MCP_ALLOW_EDITABLE_SDK=1.
Debugging with MCP Inspector
npx @modelcontextprotocol/inspector yutori-mcp
API Documentation
For full API documentation, visit docs.yutori.com.
License
Apache 2.0
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file yutori_mcp-0.5.12.tar.gz.
File metadata
- Download URL: yutori_mcp-0.5.12.tar.gz
- Upload date:
- Size: 6.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b058bcd7704b7fa44ce878a569c5f752f8e0aae8b28a46397a99d0a060580160
|
|
| MD5 |
86d83f28238722603cd593932863ddda
|
|
| BLAKE2b-256 |
3e3943931fa360a25481983f22a068f4c5e69182507b9360a6381a7e898bb8cc
|
File details
Details for the file yutori_mcp-0.5.12-py3-none-any.whl.
File metadata
- Download URL: yutori_mcp-0.5.12-py3-none-any.whl
- Upload date:
- Size: 89.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.12.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fb87474c2e18d82ce16c7cce1e5dabd84371bd5dff496479c033c9cff4b8710
|
|
| MD5 |
d79467a3c7500bf6602a92537f941008
|
|
| BLAKE2b-256 |
bb39d158133be56a4ceb7239aed3f4a64112e7bd724db0d61559df43b45b237a
|