Okareo MCP server for AI model evaluation
Project description
Okareo MCP Server
The Okareo MCP server exposes Okareo's evaluation capabilities as MCP tools, allowing AI coding assistants to create and manage scenarios, register models, run evaluations, and execute multi-turn simulations directly from your editor.
For detailed documentation, see the Okareo MCP docs.
Prerequisites
- An Okareo API key from app.okareo.com
- A copilot that supports MCP servers (Claude Code, Cursor, or VS Code)
- Python 3.10–3.12 (for local install modes)
Step 1: Set Your API Key
export OKAREO_API_KEY="your-api-key"
Add this to your ~/.zshrc or ~/.bash_profile for persistence.
Step 2: Configure Your Copilot
Claude Code
Add to .mcp.json:
{
"mcpServers": {
"okareo": {
"command": "uvx",
"args": ["okareo-mcp"],
"env": {
"OKAREO_API_KEY": "${OKAREO_API_KEY}"
}
}
}
}
No pre-install needed — uvx handles it automatically.
Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"okareo": {
"command": "uvx",
"args": ["okareo-mcp"]
}
}
}
Cursor inherits OKAREO_API_KEY from your shell environment.
Alternative: pip install
If you don't have uv installed:
pip install okareo-mcp
Then use "command": "okareo-mcp" instead of "command": "uvx" with "args": ["okareo-mcp"].
Configuration Reference
| Variable | Default | Description |
|---|---|---|
OKAREO_API_KEY |
(required) | Your Okareo API key |
OKAREO_BASE_URL |
https://api.okareo.com |
Override for on-prem Okareo backend |
TRANSPORT |
stdio |
Transport: stdio (local) or sse (Docker) |
PORT |
8000 |
Port for SSE transport |
Available Tools
Scenarios
| Tool | Description |
|---|---|
save_scenario |
Save a named scenario from rows of input/result data (idempotent) |
list_scenarios |
List all scenarios in the project with names, IDs, and row counts |
get_scenario |
Retrieve a scenario's metadata and all data rows by name or ID |
create_scenario_version |
Create a new version of an existing scenario with updated data |
preview_delete_scenario |
Preview what will be deleted before removing a scenario |
delete_scenario |
Permanently delete a scenario and all related test data |
Generation Models
| Tool | Description |
|---|---|
list_available_llms |
Browse available LLMs from the Okareo registry |
register_generation_model |
Register a generation model for testing by selecting an LLM from the registry |
list_generation_models |
List all registered generation models in the project |
get_generation_model |
Read detailed information about a registered generation model |
update_generation_model |
Change the LLM a registered generation model points to |
delete_generation_model |
Remove a registered generation model and all its related test data |
Tests & Evaluations
| Tool | Description |
|---|---|
list_checks |
List available quality checks (built-in and custom) for evaluating model outputs |
run_test |
Run a quality test that evaluates a model against a scenario using specified checks |
list_test_runs |
List past test runs with optional filters (model, scenario, simulation-only) |
get_test_run_results |
Load detailed per-row results of a test run or simulation by ID or name |
Simulations (Multi-Turn)
| Tool | Description |
|---|---|
create_or_update_target |
Create or update a Target — generation model, custom endpoint, or voice (OpenAI, Deepgram, Twilio) |
get_target |
Retrieve a Target's configuration by name (all types) |
list_targets |
List all simulation targets (voice and custom_endpoint) in the project |
delete_target |
Remove a simulation target and all its related test data |
create_or_update_driver |
Define a simulated user persona that will interact with your target |
get_driver |
Retrieve a Driver's full configuration including the persona prompt |
list_drivers |
List all Driver personas in the project |
run_simulation |
Run a multi-turn conversation evaluation (or rerun a previous one with overrides) |
list_simulations |
List past simulation runs with optional filters (target, scenario, limit) |
Documentation & Templates
| Tool | Description |
|---|---|
get_docs |
Query the Okareo documentation system for conceptual or user-legible explanations |
get_templates |
Retrieve prompt templates for common Okareo patterns (works offline) |
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
okareo-mcp: command not found |
Not installed or not in PATH | Run pip install -e . (dev) or use uvx okareo-mcp (user) |
| Server exits with API key error | OKAREO_API_KEY not set |
Export it: export OKAREO_API_KEY="..." |
pip install fails on Python 3.13+ |
Okareo SDK requires Python <3.13 | Use Python 3.10–3.12 |
| Copilot can't connect (Docker) | Wrong URL | Ensure URL ends with /sse and port matches |
| Cursor doesn't pick up API key | Cursor launched from Dock, not terminal | Launch Cursor from terminal: cursor . |
Project details
Release history Release notifications | RSS feed
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 okareo_mcp-0.0.31.tar.gz.
File metadata
- Download URL: okareo_mcp-0.0.31.tar.gz
- Upload date:
- Size: 48.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d57321cc634e6cd651a5b3639e50e42bf399f381845dfb8963c5d27790edceb8
|
|
| MD5 |
afdac36336a5817728944e4d66a6708a
|
|
| BLAKE2b-256 |
f09a5518c4bb70bb4d6bfc32bca47aa1def22e9e2c0b9fe60574be601d8fb1be
|
File details
Details for the file okareo_mcp-0.0.31-py3-none-any.whl.
File metadata
- Download URL: okareo_mcp-0.0.31-py3-none-any.whl
- Upload date:
- Size: 62.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b13f29ba7ba56b21577554d6f030edf20173f963c57eb3d5d00a311f087e8f93
|
|
| MD5 |
0f7d93373d84bf853689923802d504e8
|
|
| BLAKE2b-256 |
1a90ef816417315fe83dbb647237751e3a6c133e18d80158eaf1ef013a341fbe
|