Skip to main content

Fraime MCP Server

MCP server exposing the Fraime API to agentic workflows, built directly on top of the Fraime SDK's FraimeClient — which already is this server's entire data-access layer, so there's no separate repository/service indirection here: model.py holds the MCP tool schema, main.py holds the routing logic and the server itself.

Prerequisites

  • Python 3.11+
  • A running Fraime API instance (see api/README.md)
  • An MCP client to talk to this server (Claude Code, Claude Desktop, or anything else that speaks MCP over stdio)

Install

make install-mcp   # from repo root
# or
make install       # from mcp/

Creates .venv inside mcp/, installs fraime-sdk from the local ../sdk checkout (it isn't published yet — see sdk/PUBLISHING.md), then installs this package.

Run

make run-mcp   # from repo root
# or
make run       # from mcp/

Runs the server over stdio (the standard MCP transport for locally-launched servers) — it won't print anything and will just wait for a client to connect; that's normal, not a hang.

Configuring an MCP client

Point your client at the installed console script. For Claude Code / Claude Desktop style config:

{
  "mcpServers": {
    "fraime": {
      "command": "/absolute/path/to/fraime/mcp/.venv/bin/fraime-mcp",
      "env": {
        "FRAIME_BASE_URL": "http://127.0.0.1:8000",
        "FRAIME_API_KEY": "your-api-key"
      }
    }
  }
}

FRAIME_API_KEY is only needed if the API has AUTH_API_KEY set — see api/README.md.

Tools

generate_video

Generates one video. Every parameter the API's /generate endpoint accepts is exposed, with rich field descriptions so an agent can fill it in without prior knowledge of the schema — shared prompt fields (subject, action, scene, camera, lighting, style, negative_prompt), the video-type-specific extras (dialogue, voice_tone, text_overlay, aspect_ratio, audio_reference, tempo_bpm, text_content, transitions), generation params (duration_s, fps, resolution, seed, num_inference_steps), and the model/performance knobs (model, reference_urls, vram_safety_margin, low_memory_decode, cpu_offload).

Fields that don't apply to the chosen video_type are simply ignored; two fields that are actually required for specific types (audio_reference for music_video, text_content for motion_graphics) return a clear tool error if missing, rather than a confusing failure downstream.

list_video_types

Returns every video_type and which extra fields it uses on top of the shared base — derived directly from the SDK's own typed field classes, so it can't drift out of sync with what generate_video actually accepts. Meant to be called first when an agent isn't sure which fields a given type needs.

Configuration reference

Env var Default What it controls
FRAIME_BASE_URL http://127.0.0.1:8000 Base URL of the Fraime API to call
FRAIME_API_KEY none Sent as Authorization: Bearer <key> if set

Both are read by the underlying FraimeClient — see sdk/README.md for details.

Download files

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

Source Distribution

fraime_mcp-0.1.0.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

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

fraime_mcp-0.1.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file fraime_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: fraime_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for fraime_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cc4989f1a9bd2830d5c7294940de2ba6b929371d45c0440cf46018454277a3ad
MD5 9f6dfdb8bd32f7770c581098324f95ca
BLAKE2b-256 bd34be5eb711c10cafd125d907fc55c3f3377a6e835f0cf14311129cba6ccbca

See more details on using hashes here.

File details

Details for the file fraime_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: fraime_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.15

File hashes

Hashes for fraime_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 43085aa9745ecae4aa5ab5d35a6a3fd25a70501fb6cfca57348e7e7eda6addf7
MD5 e572d383ac06fae1a51cd8bf9a0e1323
BLAKE2b-256 47d6d4868367bdfa52c4b5376239ad575b63633a9fd13ccf6e0f4eb5bd77b550

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page