
OpenAdapt Agent MCP Server: Setup for Claude, Cursor and Other Apps
Lets Claude or another agent fill in an app that has no API, then checks that the record really saved.
OpenAdapt Agent lets your assistant hand a task to a recorded workflow that enters data in an app and reads the record back to confirm it saved. The default install runs a practice sandbox with made-up patients, so you can try it without touching real data. To serve your own workflows you record them first and switch on a production mode. It runs on the computer that can already open the app, not in the cloud.
Good for
- Teams whose staff retype agent results into an EMR or payer portal
- Developers building agents that must prove a save worked
- People who want to try the sandbox before connecting a real app
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install OpenAdapt Agent MCP
Claude Code
- 1
Copy this prompt.
Add the OpenAdapt Agent MCP server to Claude Code. Run this command: claude mcp add openadapt -- uvx --python 3.12 openadapt-agent serve Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires uv, Python 3.10 to 3.12.
Read-only mode: Without `--mode production`, your own workflows can be listed but not run. The sandbox only changes a practice app.
This starts the practice sandbox. To serve your own recorded workflows, add --mode production --bundles ./bundles after serve; without --mode production the assistant can list workflows but not run them. The documented command pins Python 3.12 because the package does not support 3.13. The README documents Claude Code, Claude Desktop and Cursor; other apps use the same command in their own config format.
From the project README. Source.
Tools
Lists the recorded workflows the assistant may run
Returns each workflow's name, purpose, what counts as done, and the inputs it needs. The built-in sandbox has one practice workflow.
Try: “What workflows can you run?”
Read ·
list_workflowsRuns a recorded workflow in an app and checks that the entry saved
Fills in an app using a recorded workflow, confirms the right record is open before typing, and reads the record back after saving. It returns one of four outcomes: done and checked, stopped before saving, check the record, or didn't run.
Try: “Add the note "recheck blood pressure in 2 weeks" to the first referral.”
Runs code ·
run_workflowChecks the latest result of an earlier run
Looks up a run by its id and returns its latest outcome, including a person's decision on a run that stopped.
Try: “Check on run demo-0001.”
Read ·
get_runStarts a tracked job with rules and a list of items
Opens a job that holds your intent, the rules to follow and the items to process. The rules are locked once the job opens.
Try: “Open a job to enter these 12 referrals.”
Write ·
open_jobShows a short summary of a job
Returns the current rules, counts by status, items not yet verified, waiting questions and what changed since the last read.
Try: “Where are we on the referral job?”
Read ·
get_jobAdds items to a job
Adds up to 100 items per call, 500 per job.
Try: “Add these 20 referrals to the job.”
Write ·
add_itemsNotes a fact and where it came from
Stores a fact with its source: the user (trusted), the app, or a document (never trusted).
Try: “Note that the clinic confirmed the date by phone.”
Write ·
record_evidenceAsks a person a yes-or-no question
Puts a question to a person and can wait up to 600 seconds for the answer.
Try: “Ask whether I should retry the failed referral.”
Read ·
ask_userReads a person's answer to a question
Returns waiting, yes, no, expired or refused for an earlier question.
Try: “Did anyone answer my question yet?”
Read ·
get_answerAsks a person to change or add a rule
Requests a rule change. The old rule stays in force until a person approves it.
Try: “Ask to allow entries over 5,000.”
Write ·
change_constraintCloses a job and says which items are verified
Closes the job and reports whether every item was verified, with the list the assistant may report as done.
Try: “Close the job and tell me what was verified.”
Write ·
close_job
Read from the source code
Permissions
medium risk · 5 things to watch
Medium risk
In the default sandbox it only changes a practice app, but with your own workflows it can save records in real systems. Try it on a test copy first.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
With your own workflows it writes into real apps
The default sandbox only touches a made-up test clinic. Once you serve your own workflows in production mode, a run types into and saves records in the real app, so start on a test or staging copy. github.com
Run folders keep patient-style data
The runs folder holds a report with the values entered and before-and-after screenshots. Other accounts on the computer could read the screenshots in the README's sandbox test, so limit access to that folder. github.com
Screenshots can leave the computer if grounding is on
Model grounding sends a screenshot to an AI model when a control cannot be found. It is off by default. github.com
It acts as whoever started it
The server has no sign-in and runs as your OS account. Do not expose it over a network or tunnel. github.com
Saves wait for approval by default
In production a run stops before each save until a person approves it, unless approval gating is turned off. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Without the production flag the server lists workflows but cannot run your own; the sandbox runs only a practice workflow. |
|---|---|
| Sign-in and keys | No sign-in. Run records are stored under ~/.openadapt/runs by default. |
Questions
Is OpenAdapt Agent official?
Yes. It is published by the OpenAdapt project from its own repository, and it is the tool for OpenAdapt's own workflow engine.
Do I need an account or API key?
No. The server has no sign-in and the sandbox needs no account. An optional key is only needed to open encrypted workflow bundles.
Is the default install safe to try?
Yes. The default sandbox has one workflow that adds a note to a test clinic app with made-up patients.
Can it write to a real app?
Only once you serve your own workflows in production mode. By default each save then waits for a person to approve it.
Does it send screenshots anywhere?
Not by default. Screenshots can go to an AI model only if you turn on model grounding.
Does it run in the cloud?
No. It talks over stdio and has no network listener, so it runs on the computer that can open the app.
Which Python version do I need?
Python 3.10 to 3.12. The documented command pins Python 3.12 through uv.
How do I add it to Claude Code?
Use the Claude Code tab in the install box above.
Information
updated Nov 2, 2026
- Publisher
- Official
- Package
openadapt-agent- Registry
- PyPI
- Transport
- stdio
- Auth
- None
- Version
- 2.2.1
- License
- MIT
- Last commit
- Oct 31, 2026
- Open issues
- 40
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 2Hide
- github.com · github.com
- github.com · github.com