Skip to main content

Standalone FastMCP server generated from BRP gateway OpenAPI spec.

Project description

BRP MCP Server

PyPI version

A standalone FastMCP server that exposes Lantern BRP gateway APIs dynamically from a single OpenAPI spec.

This package is designed to be easily used by AI agents (like Cursor and Claude Desktop) via the Model Context Protocol (MCP). It supports local stdio transport and remote sse transport, automatically converting API definitions into actionable AI tools.

Features

  • Dynamic Tools: Fetches the BRP OpenAPI spec on startup and converts endpoints into AI-friendly tools.
  • Secure Authentication: Built-in Auth0 M2M flow and bearer token pass-through to secure API calls to the gateway.
  • Environment Profiles: Pre-configured environments (dev, stage, prod).
  • Visibility Policies: Granular endpoint exposure mapping using OpenAPI extensions or a local JSON policy.
  • Zero-config run: Run instantly via uvx without needing a local python environment setup.

Installation

You can install the package directly from PyPI using your favorite package manager:

pip install brp-mcp

Or run it ephemerally with uv:

uvx brp-mcp

Usage in Cursor / AI Agents

If you want to provide Cursor or Claude with access to the BRP API, you can add brp-mcp to your MCP configuration file (.mcp.json or claude_desktop_config.json).

We highly recommend using uvx to handle automatic installation and execution.

Example Configuration (Remote hosted SSE)

If you are connecting to a centrally hosted server via SSE, use npx with the official proxy:

{
  "mcpServers": {
    "brp_mcp_server": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/proxy",
        "https://dev-app.lanternbrp.com/brp-mcp-server/sse"
      ],
      "env": {
        "BRP_AUTH0_DOMAIN": "YOUR_AUTH0_DOMAIN",
        "BRP_AUTH0_CLIENT_ID": "YOUR_CLIENT_ID",
        "BRP_AUTH0_CLIENT_SECRET": "YOUR_CLIENT_SECRET"
      }
    }
  }
}

Environment Variables

The server relies on environment variables for configuration. Here are the most commonly used ones:

Variable Default Description
BRP_ENV dev Target API environment: dev, stage, prod
BRP_TRANSPORT stdio Transport mode: stdio (for AI agents) or sse (for web clients)
BRP_AUTH0_DOMAIN (empty) Auth0 tenant domain for API authentication
BRP_AUTH0_CLIENT_ID (empty) Auth0 Machine-to-Machine client ID
BRP_AUTH0_CLIENT_SECRET (empty) Auth0 Machine-to-Machine client secret
BRP_API_TOKEN (empty) Optional: Static bearer token fallback if not using Auth0 credentials
BRP_HOST 0.0.0.0 Bind host (used in sse mode)
BRP_PORT 6010 Port (used in sse mode)

Running as a standalone SSE server

If you want to host the server to be consumed by remote clients via Server-Sent Events (SSE):

export BRP_ENV=dev
export BRP_TRANSPORT=sse
export BRP_PORT=6015

uvx brp-mcp

The server will be available at http://localhost:6015/sse.

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

brp_mcp-0.1.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

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

brp_mcp-0.1.0-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: brp_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for brp_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bbdd74a64fd5e2439b82cdc244045453b6887a8ebd279a551c4ae50460f42f69
MD5 651f2bd019842182736c4e2667635be9
BLAKE2b-256 ec62142994a4b52957257b90c91e6196a3a4dcbc588a5045bddde0fe65a6cb92

See more details on using hashes here.

File details

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

File metadata

  • Download URL: brp_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for brp_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 78f1a628f1e65a2730701a2e7d68715e90273be9a5a6ee32a4d2ca52a95d1400
MD5 9d6ce0e762bae82088f136722e8806d3
BLAKE2b-256 cb7f63cc83a8615be1473476f827dea1670a42a4606b3aec8b91a50a196b7e31

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