Arize Phoenix

by arize-ai

5.4k stars
383 downloads
Not rated
GitHub

About

Provides a unified interface to Arize Phoenix's capabilities for managing prompts, exploring datasets, and running experiments across different LLM providers

Details

Author
arize-ai
Repository
Arize-ai/phoenix
GitHub stars
5,393
Downloads
383
License
Other
Categories
Design, Workplace, Developer Tools, AI, Communication, Frontend, Infrastructure

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Arize Phoenix
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @arizeai/phoenix-mcp@latest
    • Argument 3 --baseUrl
    • Argument 4 https://my-phoenix.com
    • Argument 5 --apiKey
    • Argument 6 your-api-key
    Environment
    • PHOENIX_API_KEY your-api-key
    • PHOENIX_ENDPOINT https://my-phoenix.com

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

This package is managed via a pnpm workspace.

// From the /js/ directory
pnpm install
pnpm build

This only needs to be repeated if dependencies change or there is a change to the phoenix-client.

When developing, the server requires the following environment variables:

- PHOENIX_API_KEY: Your Phoenix API key
- PHOENIX_ENDPOINT: The base URL for Phoenix
- PHOENIX_PROJECT: Optional default project for project-scoped tools (alias: PHOENIX_PROJECT_NAME)
- PHOENIX_CLIENT_HEADERS: Optional JSON-encoded request headers

Make sure to set these in a .env file. See .env.example.

At runtime the server also discovers the nearest .env.phoenix file at or
above the working directory. Process environment variables and command-line
options take precedence. If a higher-priority API key is paired with an
endpoint from the file, the server warns once and continues. Set
PHOENIX_DISCOVER_CONFIG=false to disable discovery.

list-prompts

Retrieve a list of all available prompts.

get-prompt

Fetch details of a specific prompt.

get-latest-prompt

Get the most recent prompt available.

get-prompt-by-identifier

Retrieve a prompt using its unique identifier.

get-prompt-version

Fetch a specific version of a prompt.

list-prompt-versions

List all versions available for a specific prompt.

get-prompt-version-by-tag

Get a prompt version by its associated tag.

list-prompt-version-tags

Retrieve all tags associated with a prompt version.

add-prompt-version-tag

Add a new tag to a specific version of a prompt.

upsert-prompt

Create or update a prompt.

list-projects

Retrieve a list of all projects.

get-project

Fetch details of a specific project.

list-traces

Retrieve a list of all traces.

get-trace

Fetch details of a specific trace.

get-spans

Retrieve spans associated with a specific trace.

get-span-annotations

Fetch annotations related to a specific span.

list-sessions

Retrieve a list of all sessions.

get-session

Fetch details of a specific session.

list-annotation-configs

Retrieve a list of all annotation configurations.

list-datasets

Retrieve a list of all datasets.

get-dataset

Fetch details of a specific dataset.

get-dataset-examples

Retrieve examples from a specific dataset.

get-dataset-experiments

Fetch experiments associated with a specific dataset.

add-dataset-examples

Add new examples to a specific dataset.

list-experiments-for-dataset

Retrieve a list of experiments for a specific dataset.

get-experiment-by-id

Fetch details of a specific experiment using its ID.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "arize phoenix": {
            "env": {
                "PHOENIX_API_KEY": "your-api-key",
                "PHOENIX_ENDPOINT": "https://my-phoenix.com"
            },
            "args": [
                "-y",
                "@arizeai/phoenix-mcp@latest",
                "--baseUrl",
                "https://my-phoenix.com",
                "--apiKey",
                "your-api-key"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": {
        "PHOENIX_API_KEY": "your-api-key",
        "PHOENIX_ENDPOINT": "https://my-phoenix.com"
    },
    "args": [
        "-y",
        "@arizeai/phoenix-mcp@latest",
        "--baseUrl",
        "https://my-phoenix.com",
        "--apiKey",
        "your-api-key"
    ],
    "command": "npx"
}

Macos

{
    "env": {
        "PHOENIX_API_KEY": "your-api-key",
        "PHOENIX_ENDPOINT": "https://my-phoenix.com"
    },
    "args": [
        "-y",
        "@arizeai/phoenix-mcp@latest",
        "--baseUrl",
        "https://my-phoenix.com",
        "--apiKey",
        "your-api-key"
    ],
    "command": "npx"
}

Windows

{
    "env": {
        "PHOENIX_API_KEY": "your-api-key",
        "PHOENIX_ENDPOINT": "https://my-phoenix.com"
    },
    "args": [
        "/c",
        "npx",
        "-y",
        "@arizeai/phoenix-mcp@latest",
        "--baseUrl",
        "https://my-phoenix.com",
        "--apiKey",
        "your-api-key"
    ],
    "command": "cmd"
}
<h1 align="center" style="border-bottom: none"> <div> <a href="https://phoenix.arize.com/?utm_medium=github&utm_content=header_img&utm_campaign=phoenix-mcp"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/Arize-ai/phoenix-assets/refs/heads/main/logos/Phoenix/phoenix.svg"> <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/Arize-ai/phoenix-assets/refs/heads/main/logos/Phoenix/phoenix-white.svg"> <img alt="Arize Phoenix logo" src="https://raw.githubusercontent.com/Arize-ai/phoenix-assets/refs/heads/main/logos/Phoenix/phoenix.svg" width="100" /> </picture> </a> <br> Arize Phoenix MCP Server </div> </h1> <p align="center"> <a href="https://www.npmjs.com/package/@arizeai/phoenix-mcp"> <img src="https://img.shields.io/npm/v/%40arizeai%2Fphoenix-mcp" alt="NPM Version"> </a> <a href="https://github.com/Arize-ai/phoenix/blob/main/js/packages/phoenix-mcp/LICENSE"> <img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License"> </a> <img src="https://badge.mcpx.dev?status=on" title="MCP Enabled"/> <a href="https://cursor.com/install-mcp?name=phoenix&config=eyJjb21tYW5kIjoibnB4IC15IEBhcml6ZWFpL3Bob2VuaXgtbWNwQGxhdGVzdCAtLWJhc2VVcmwgaHR0cDovL2xvY2FsaG9zdDo2MDA2IC0tYXBpS2V5IHlvdXItYXBpLWtleSJ9"> <img src="https://cursor.com/deeplink/mcp-install-dark.svg" alt="Add Arize Phoenix MCP server to Cursor" height=20 /> </a> <img referrerpolicy="no-referrer-when-downgrade" src="https://static.scarf.sh/a.png?x-pxid=8e8e8b34-7900-43fa-a38f-1f070bd48c64&page=js/packages/phoenix-mcp/README.md" /> </p> Phoenix MCP Server is an implementation of the Model Context Protocol for the Arize Phoenix platform. It provides a unified interface to Phoenix's capabilities. You can use Phoenix MCP Server for: - **Projects Management**: List and explore projects that organize your observability data - **Traces, Spans & Annotations**: Retrieve traces, spans, and annotation configs for analysis and debugging - **Sessions**: Explore conversation flows and session-level annotations - **Prompts Management**: Create, list, update, and iterate on prompts - **Datasets**: Explore datasets and synthesize new examples - **Experiments**: Pull experiment results and visualize them with the help of an LLM Don't see a use-case covered? `@arizeai/phoenix-mcp` is [open-source](https://github.com/Arize-ai/phoenix)! Issues and PRs welcome. ## Installation This MCP server can be used with `npx` and can be directly integrated with clients like Claude Desktop, Cursor, and more. ```json { "mcpServers": { "phoenix": { "command": "npx", "args": [ "-y", "@arizeai/phoenix-mcp@latest", "--baseUrl", "https://my-phoenix.com", "--apiKey", "your-api-key" ] } } } ``` ## Development ## Install This package is managed via a pnpm workspace. ```sh // From the /js/ directory pnpm install pnpm build ``` This only needs to be repeated if dependencies change or there is a change to the phoenix-client. ### Building To build the project: ```sh pnpm build ``` ### Development Mode To run in development mode: ```bash pnpm dev ``` ### Debugging You can build and run the MCP inspector using the following: ```bash pnpm inspect ``` ## Environment Variables When developing, the server requires the following environment variables: - `PHOENIX_API_KEY`: Your Phoenix API key - `PHOENIX_ENDPOINT`: The base URL for Phoenix - `PHOENIX_PROJECT`: Optional default project for project-scoped tools (alias: `PHOENIX_PROJECT_NAME`) - `PHOENIX_CLIENT_HEADERS`: Optional JSON-encoded request headers Make sure to set these in a `.env` file. See `.env.example`. At runtime the server also discovers the nearest `.env.phoenix` file at or above the working directory. Process environment variables and command-line options take precedence. If a higher-priority API key is paired with an endpoint from the file, the server warns once and continues. Set `PHOENIX_DISCOVER_CONFIG=false` to disable discovery. ## Tool Coverage The MCP server covers the main operational Phoenix workflows: **Prompts** — `list-prompts`, `get-prompt`, `get-latest-prompt`, `get-prompt-by-identifier`, `get-prompt-version`, `list-prompt-versions`, `get-prompt-version-by-tag`, `list-prompt-version-tags`, `add-prompt-version-tag`, `upsert-prompt` **Projects** — `list-projects`, `get-project` **Traces** — `list-traces`, `get-trace` **Spans** — `get-spans`, `get-span-annotations` **Sessions** — `list-sessions`, `get-session` **Annotation Configs** — `list-annotation-configs` **Datasets** — `list-datasets`, `get-dataset`, `get-dataset-examples`, `get-dataset-experiments`, `add-dataset-examples` **Experiments** — `list-experiments-for-dataset`, `get-experiment-by-id` For Phoenix documentation search, use the separate Phoenix Docs MCP server instead of this package. ## Community Join our community to connect with thousands of AI builders: - 🌍 Join our [Slack community](https://join.slack.com/t/arize-ai/shared_invite/zt-3r07iavnk-ammtATWSlF0pSrd1DsMW7g). - 📚 Read the [Phoenix documentation](https://arize.com/docs/phoenix). - 💡 Ask questions and provide feedback in the _#phoenix-support_ channel. - 🌟 Leave a star on our [GitHub](https://github.com/Arize-ai/phoenix). - 🐞 Report bugs with [GitHub Issues](https://github.com/Arize-ai/phoenix/issues). - 𝕏 Follow us on [𝕏](https://twitter.com/ArizePhoenix). - 💼 Follow us on [LinkedIn](https://www.linkedin.com/showcase/113218220). - 🗺️ Check out our [roadmap](https://github.com/orgs/Arize-ai/projects/45) to see where we're heading next. ## License Apache 2.0
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.