Skip to main content

Workflow-oriented MCP server for the Freeplay API

Project description

Freeplay MCP Server

An MCP (Model Context Protocol) server that enables AI agents to interact with Freeplay, the ops platform for AI engineering teams.

Use it to analyze production logs, identify quality issues, iterate on prompts and agents using real data, and run experiments to validate changes before deploying.

⚠️ EXPERIMENTAL

This MCP server is an experimental release and will change. Use at your own risk and keep an eye on what your agents are doing.

Current limitations:

  • Does not support deployment operations or destructive deletion actions — use the Freeplay UI
  • Uses your regular Freeplay API key (not specially scoped to limit access for agents)

Security warning: Because this uses your full API key, an agent could extract the key and formulate its own API calls outside the scope of the tools included with this MCP server, including destructive actions against your Freeplay account.

Additionally, all MCP servers share a security context within the host, enabling data exfiltration, prompt injection across tools, and cross-server data access.

Only use this with agents and MCP servers you fully trust.


Installation

Claude Code (with uv)

  1. Clone this repository locally.
    git clone git@github.com:freeplayai/freeplay-mcp.git
    
  2. cd freeplay-mcp
    uv sync # install dependencies
    
  3. Add the Freeplay MCP server to your Claude Code. From the freeplay-mcp directory.
    claude mcp add --transport stdio freeplay-mcp-v1 -- uv run main.py
    
  4. Configure .env and:
    source .env
    
  5. Start Claude code and run /mcp to check installation.

Claude Code (with Docker)

  1. Clone this repository locally.

    git clone git@github.com:freeplayai/freeplay-mcp.git
    cd freeplay-mcp
    
  2. Build the Docker image.

    docker build -t freeplay-mcp .
    

    For production deployments, consider using a hardened base image such as Chainguard or Distroless.

  3. Set your environment variables (in .env, then source it).

    export FREEPLAY_API_KEY="your-api-key"
    export FREEPLAY_BASE_URL="https://app.freeplay.ai"
    
  4. Add the Freeplay MCP server to Claude Code.

    claude mcp add --transport stdio freeplay-mcp-v1 -- docker run -i --rm -e FREEPLAY_API_KEY=$FREEPLAY_API_KEY -e FREEPLAY_BASE_URL=$FREEPLAY_BASE_URL freeplay-mcp
    
  5. Start Claude Code and run /mcp to check installation.

Authentication

  • API key passed via environment variable FREEPLAY_API_KEY
  • All requests use Bearer token authentication
  • Base URL configurable via FREEPLAY_BASE_URL (default: https://app.freeplay.ai)

Development

# Install dev dependencies
uv sync --dev

# Lint (with auto-fix)
uv run ruff check --fix src/

# Type check
uv run basedpyright src/

Claude Desktop Configuration

Using uv

{
  "mcpServers": {
    "freeplay": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/freeplay-mcp",
        "run",
        "python",
        "-m",
        "freeplay_mcp.server"
      ],
      "env": {
        "FREEPLAY_API_KEY": "your-api-key"
      }
    }
  }
}

Using Docker

{
  "mcpServers": {
    "freeplay": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e", "FREEPLAY_API_KEY",
        "-e", "FREEPLAY_BASE_URL",
        "freeplay-mcp"
      ],
      "env": {
        "FREEPLAY_API_KEY": "your-api-key",
        "FREEPLAY_BASE_URL": "https://app.freeplay.ai"
      }
    }
  }
}

Support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

freeplay_mcp-0.0.3a1.tar.gz (279.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

freeplay_mcp-0.0.3a1-py3-none-any.whl (688.1 kB view details)

Uploaded Python 3

File details

Details for the file freeplay_mcp-0.0.3a1.tar.gz.

File metadata

  • Download URL: freeplay_mcp-0.0.3a1.tar.gz
  • Upload date:
  • Size: 279.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for freeplay_mcp-0.0.3a1.tar.gz
Algorithm Hash digest
SHA256 6ed08999ba2e6ce8076262696ef08f67d3fcf9f305b38b28788d944b9517a24a
MD5 b056c139da2ea83e1dca8caa6454dda4
BLAKE2b-256 273d0ddb81d84a067b55e3912721454c1d2ef40aa65f28975635e41c5818d7af

See more details on using hashes here.

File details

Details for the file freeplay_mcp-0.0.3a1-py3-none-any.whl.

File metadata

  • Download URL: freeplay_mcp-0.0.3a1-py3-none-any.whl
  • Upload date:
  • Size: 688.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","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

Hashes for freeplay_mcp-0.0.3a1-py3-none-any.whl
Algorithm Hash digest
SHA256 f39bcad4e5a306f3863950f7d6481c1f654a9e4589b4d35dd41fb55d26ebb584
MD5 3740b463b55d99fe33fde61f63160e92
BLAKE2b-256 0adfaa73934e93e8803172e1621bf160d0e80c10f089c477969bb44cdab0ab98

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page