Skip to main content

Spectr MCP server — turn a screen recording or App Store URL into a production-ready spec.md, from inside Claude Code / Cursor / any MCP client.

Project description

spectr-mcp

MCP server that exposes Spectr's spec-generation pipeline as a tool any MCP client can call. Hand it an App Store URL or a local MP4 of an app, get back a production-ready spec.md precise enough to build a clone from.

See an app. Ship an app.

What it does

One tool, generate_spec(source, ...):

  • source — an App Store URL (e.g. https://apps.apple.com/us/app/doordash/id719972451) or an absolute path to a local MP4 screen recording.
  • Returns a structured 7-section markdown spec covering app overview, navigation, screens, components, design system (with exact hex/px/weight values), implementation notes, and a Claude Code prompt the developer can paste.
  • Targets Expo SDK 54 / React Native / iPhone 15 baseline.

Typical run: 2–5 min for App Store URLs, 5–10 min for MP4 recordings.

Two ways to install

Hosted (recommended) — Claude web app connector

Open Claude → Settings → Connectors → Add a custom connector → paste:

https://mcp.spectr.to

No key, no install, no env vars. The hosted MCP runs on Spectr's Anthropic key; you just paste the URL and start asking Claude to generate specs.

Local (developer install) — stdio via Claude Code

If you have Claude Code installed and logged in (claude login), you can also run the MCP locally as a stdio subprocess. Uses your existing Claude Pro/Max subscription — no API key needed.

Claude Code

claude mcp add spectr -- uvx --from git+https://github.com/Meliwat/spectr spectr-mcp

Or for local development against this repo:

claude mcp add spectr -- uvx --from /path/to/spectr spectr-mcp

Other clients (Cursor, Codex, custom MCP hosts)

Any client that supports MCP stdio servers can launch the local version:

uvx --from git+https://github.com/Meliwat/spectr spectr-mcp

If you don't have the claude CLI installed and authenticated, the MCP needs an ANTHROPIC_API_KEY instead — set it in the launching process's environment.

Or use the hosted version at https://mcp.spectr.to if your client supports remote MCP connectors over HTTP.

Self-hosting the HTTP server

The same package runs the streamable-http transport for hosted deployments:

spectr-mcp --http --port 8000
# Or with env var
SPECTR_MCP_HTTP=1 PORT=8000 spectr-mcp

Set ANTHROPIC_API_KEY in the process env. See ../mcp_server/README.md for the Dockerfile + Railway deployment recipe used to host mcp.spectr.to.

Requirements

  • Python ≥ 3.10 (installed automatically by uvx).
  • One of:
    • The claude CLI (free path — uses your existing Claude Pro / Max subscription). Install from claude.com/product/claude-code, run claude login once, you're done.
    • ANTHROPIC_API_KEY in env (token-billed path — set it when you want to pay Anthropic directly by token).
  • ffmpeg — only required when passing an MP4 path; not needed for App Store URLs.

The MCP auto-selects: API key wins if both are present (faster than CLI subprocess).

Usage from inside Claude Code

> Generate a spec from https://apps.apple.com/us/app/doordash/id719972451 and write it to ./doordash-spec.md

Claude Code will pick the tool, call it, and write the file. The tool returns a short confirmation summary so your context window stays small.

For MP4 input:

> Generate a spec from /Users/me/Desktop/recording.mp4 for the app "Linear"

The reference_app parameter is required for MP4 input (the tool has no way to detect the app name otherwise).

Cost

With Claude Code subscription (CLI path): specs are billed against your Claude Pro / Max plan's normal usage allowance. No per-spec charge from Spectr or Anthropic beyond your existing subscription.

With ANTHROPIC_API_KEY (SDK path): you pay Anthropic by token. Rough numbers per spec at the default max_frames=20:

  • Vision (20 frames × 2 passes via Haiku): ~$0.10–0.20
  • Spec generation (7 sections via Sonnet, with prompt caching): ~$0.50–1.00
  • Total: typically $0.60–1.20 per spec

Raising max_frames past 20 increases vision cost roughly linearly. max_frames=48 (the old default) runs about $1.40–2.00 per spec.

The hosted version at spectr.to (coming back soon) charges $19 per spec and includes the pipeline, hosting, storage, retries, and the realtime progress UI.

License

MIT

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

spectr_mcp-0.1.0.tar.gz (50.7 kB view details)

Uploaded Source

Built Distribution

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

spectr_mcp-0.1.0-py3-none-any.whl (57.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: spectr_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 50.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for spectr_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 447f57db997a6401ec8ad45888490811701f8e4d39d107e32b187e562ec6a531
MD5 d79c7567dc93d2e7a2af1cf08987cc1e
BLAKE2b-256 fb37ea3ccecf6ce475638d8c58c7f7b62dfa5de92d7b5e762fded6429b0842f1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spectr_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 57.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for spectr_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 277e7f261858903a3996566bee35bfed6f51a40ca2c364ed5c2b2159afc2b251
MD5 b1958a3eab687783faaa2c32513c0904
BLAKE2b-256 7a5666544f44a449f8ffc4d434b1a7dfdfb071ae46df99fae5657e587bcf9322

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