Opik MCP Server
OFFICIAL SERVERQuery, score and annotate Opik traces, datasets, experiments and prompts from an MCP client
Read traces, sessions, datasets and experiments in Arize Phoenix and manage its prompts
Official · Arize AI JavaScript Local · stdio DevOps and monitoringAI and ML
93 popularity score ★ 12k ↓ 1.6k/wk
Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
claude mcp add phoenix -- npx -y @arizeai/phoenix-mcp@latest --baseUrl '<PHOENIX_BASE_URL>' --apiKey '<PHOENIX_API_KEY>'{
"mcpServers": {
"phoenix": {
"command": "npx",
"args": [
"-y",
"@arizeai/phoenix-mcp@latest",
"--baseUrl",
"<PHOENIX_BASE_URL>",
"--apiKey",
"<PHOENIX_API_KEY>"
]
}
}
}{
"mcpServers": {
"phoenix": {
"command": "npx",
"args": [
"-y",
"@arizeai/phoenix-mcp@latest",
"--baseUrl",
"<PHOENIX_BASE_URL>",
"--apiKey",
"<PHOENIX_API_KEY>"
]
}
}
}{
"servers": {
"phoenix": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@arizeai/phoenix-mcp@latest",
"--baseUrl",
"<PHOENIX_BASE_URL>",
"--apiKey",
"<PHOENIX_API_KEY>"
]
}
}
}[mcp_servers.phoenix]
command = "npx"
args = ["-y", "@arizeai/phoenix-mcp@latest", "--baseUrl", "<PHOENIX_BASE_URL>", "--apiKey", "<PHOENIX_API_KEY>"]gemini mcp add --scope user phoenix npx -- -y @arizeai/phoenix-mcp@latest --baseUrl '<PHOENIX_BASE_URL>' --apiKey '<PHOENIX_API_KEY>'PHOENIX_API_KEY |
Optional: Phoenix API key; alternative to the --apiKey option. |
|---|---|
PHOENIX_ENDPOINT |
Optional: Base URL of the Phoenix instance; alternative to --baseUrl. |
PHOENIX_PROJECT |
Optional: Default project for project-scoped tools (alias PHOENIX_PROJECT_NAME). |
PHOENIX_CLIENT_HEADERS |
Optional: Extra request headers as a JSON object. |
PHOENIX_DISCOVER_CONFIG |
Optional: Set to false to stop the server reading a .env.phoenix file. |
Phoenix MCP Server connects an MCP client to an Arize Phoenix instance, the LLM observability and evaluation platform made by Arize AI. Through it an assistant can browse the projects in Phoenix, pull traces and spans with their annotations, follow multi-turn sessions, and look at datasets and the experiments run against them. This is useful when debugging an LLM application: the assistant can inspect what a run actually did instead of being told about it.
It also manages Phoenix's prompt store. Prompts can be listed, read by version or tag, tagged, and created or updated with upsert-prompt, and new examples can be appended to a dataset with add-dataset-examples. Every other tool only reads. A separate phoenix-support tool answers questions about Phoenix and OpenInference by forwarding them to a third-party question-answering service.
The server is a small TypeScript package, @arizeai/phoenix-mcp, run with npx over stdio. It points at whatever Phoenix you use, given a base URL and an API key as command-line options or environment variables; it can also pick these up from a .env.phoenix file found at or above the working directory. The package lives inside the main Arize-ai/phoenix repository, which mostly holds the Phoenix platform itself (under the Elastic License 2.0) plus its Python and JavaScript clients; the MCP package carries its own Apache 2.0 licence.
| Runtime | Node.js |
|---|
Node.js with npx. A running Arize Phoenix instance you can reach (self-hosted locally, in a container or in the cloud) and its base URL, plus a Phoenix API key when the instance has authentication turned on.
Covers the main Phoenix workflows only: it cannot delete anything, run evaluations or start experiments, and annotation configs are read-only. It does not search the Phoenix documentation; its README points to the separate Phoenix Docs MCP server for that. Runs over stdio only; there is no hosted endpoint.
Suits teams that already trace their LLM apps into Phoenix and want an assistant to look into traces, spans, sessions and experiment results, or to iterate on prompts kept in Phoenix. Because it is published by Arize and talks to your own instance, the data stays where Phoenix runs. It is of no use without a Phoenix instance, and people on Arize's managed AX platform rather than Phoenix should look to Arize's own tooling for that product.
list-promptsget-promptget-latest-promptget-prompt-by-identifierget-prompt-versionlist-prompt-versionsget-prompt-version-by-taglist-prompt-version-tagsadd-prompt-version-tagupsert-promptlist-projectsget-projectlist-tracesget-traceget-spansget-span-annotationslist-sessionsget-sessionlist-annotation-configslist-datasetsget-datasetget-dataset-examplesget-dataset-experimentsadd-dataset-exampleslist-experiments-for-datasetget-experiment-by-idphoenix-support