Standalone FastMCP server generated from BRP gateway OpenAPI spec.
Project description
BRP MCP Server
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
uvxwithout 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": "uvx",
"args": [
"--upgrade",
"brp-mcp"
],
"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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file brp_mcp-0.1.10.tar.gz.
File metadata
- Download URL: brp_mcp-0.1.10.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
91d8fbee0064fc4914062eb1c36787cd8df7ad940d40477b2fa51a021aa5d68b
|
|
| MD5 |
c2e123a4cc5b0d3f62c69770264e6a16
|
|
| BLAKE2b-256 |
7f2d5fc3422561a04deb1a32f752eac43049f831d05535e4a82342c79c3a49fa
|
File details
Details for the file brp_mcp-0.1.10-py3-none-any.whl.
File metadata
- Download URL: brp_mcp-0.1.10-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c1f37119c4b7f5d34c9ae1dbadf1c1f7cdcd298403dba1cfa90cce1655d80af
|
|
| MD5 |
2f92ba16d103d7dce826e1a9317a5434
|
|
| BLAKE2b-256 |
bb6f794199e317a1c4ef0cc3bd667d8625354dfb493ae475bb15462664868c12
|