Skip to main content

Automatically discover and document web application APIs

Project description

Spectral

Install · Why Spectral · How it works · Documentation

Browse any website or mobile app normally. Spectral observes what you do, figures out the meaning behind each API call, and builds MCP tools that let AI agents use the same app.

Spectral demo — analyze traffic, then Claude uses the API

Why Spectral

Most apps — web, mobile, desktop — sit on top of undocumented HTTP APIs. Spectral records the traffic while you browse, uses an LLM to understand what each call does, and generates MCP tools that any AI agent can call.

  • Works everywhere. Websites, mobile apps (Android), desktop apps, CLI tools — if it speaks HTTPS, Spectral can capture it.

  • Understands what you do, not just what the network sends. Spectral correlates your clicks and navigation with API calls to figure out the business meaning of each endpoint — not just its shape.

  • Tools that fix themselves. When a generated tool fails at runtime, the MCP server feeds the error back to an LLM and patches the tool automatically.

  • LLM at build time, not at runtime. The LLM is only used during analysis and self-repair. Once your tools work, every call is a direct HTTP request — fast, cheap, and deterministic.

  • Faster than browser automation. No headless browser, no fragile selectors, no waiting for pages to render. Spectral tools call the API directly, which is orders of magnitude faster and more reliable than controlling a browser with an agent.

  • Also generates API specs. Beyond MCP tools, Spectral can produce OpenAPI 3.1 specs from REST traffic and GraphQL SDL schemas from GraphQL traces — useful for documentation, code generation, or feeding other tools.

Install

pip install spectral-mcp

or with uv:

uv tool install spectral-mcp

Alternatively, install from source with the one-liner:

curl -LsSf https://raw.githubusercontent.com/romain-gilliotte/spectral/main/install.sh | bash

You also need an Anthropic API key — Spectral will prompt for it on first analysis.

See the documentation for setup guides, capture instructions, and CLI reference.

How it works

  1. Capture — Chrome extension (web) or MITM proxy records traffic while you use the app
  2. Analyze — An LLM correlates your actions with API calls, infers endpoint patterns, and business meaning
  3. Authenticate — The CLI detects the auth flow and generates a login script. Run it once; the MCP server refreshes automatically
  4. Use — Start the MCP server. AI agents call the API directly

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

spectral_mcp-0.1.1.tar.gz (98.0 kB view details)

Uploaded Source

Built Distribution

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

spectral_mcp-0.1.1-py3-none-any.whl (139.3 kB view details)

Uploaded Python 3

File details

Details for the file spectral_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: spectral_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 98.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for spectral_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 faf7f51f57c5beeb29ae8a246abcfca517464045096b1cba49808b692a7f41b6
MD5 9437a6fba13b0bccfed88a29dc476fa4
BLAKE2b-256 5cf1c4495f0e8d254f6e979d0446917a228186cc125eff7b536f140f6597ce02

See more details on using hashes here.

Provenance

The following attestation bundles were made for spectral_mcp-0.1.1.tar.gz:

Publisher: release.yml on romain-gilliotte/spectral

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file spectral_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: spectral_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 139.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for spectral_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d09c05f7bbd650d327c1754616dd9316927b9ac98969d395b4e045914e54d8b7
MD5 b63c7efa4acb049d1e603c72de51bf1d
BLAKE2b-256 6e5e855c5aae58b8653e97a60f630b3def47f40a8a97e61ba3e4cc224192086d

See more details on using hashes here.

Provenance

The following attestation bundles were made for spectral_mcp-0.1.1-py3-none-any.whl:

Publisher: release.yml on romain-gilliotte/spectral

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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