interloper-mcp
A Model Context Protocol server exposing the interloper platform to AI agents: catalog definitions, the collection, lineage, run/backfill monitoring, analytics and, for tokens holding the editor role, the writes (edits, creates, triggers, retries, cancels).
Authentication uses personal access tokens (PATs) minted via the
interloper API (POST /api/tokens, session-authenticated). Tokens are
org-scoped and carry the holder's live role; revocation and membership
removal apply immediately.
Running
Streamable HTTP (default; binds INTERLOPER_MCP_HOST:INTERLOPER_MCP_PORT,
endpoint /mcp):
interloper-mcp
Clients authenticate every request with Authorization: Bearer ilp_....
stdio (single-user, authenticates once at startup):
INTERLOPER_MCP_TOKEN=ilp_... interloper-mcp --transport stdio
For local development without a token, INTERLOPER_MCP_ORG_ID=<uuid> scopes
the stdio server to one organisation directly.
Connecting clients
MCP Inspector:
npx @modelcontextprotocol/inspector
# Transport: Streamable HTTP, URL: http://localhost:3001/mcp
# Header: Authorization: Bearer ilp_...
Claude Code:
claude mcp add --transport http interloper http://localhost:3001/mcp \
--header "Authorization: Bearer ilp_..."
Settings
| Env var | Default | Purpose |
|---|---|---|
INTERLOPER_MCP_HOST |
0.0.0.0 |
HTTP bind host |
INTERLOPER_MCP_PORT |
3001 |
HTTP bind port |
INTERLOPER_MCP_EXTERNAL_URL |
— | Public base URL (e.g. https://mcp.interloper.app), used in OAuth protected-resource metadata |
INTERLOPER_MCP_TOKEN |
— | stdio only: PAT to authenticate as |
INTERLOPER_MCP_ORG_ID |
— | stdio only: dev fallback, direct org scope |
Database and catalog configuration is the standard interloper set
(INTERLOPER_POSTGRES_*, INTERLOPER_CATALOG, ...).
Deployment
The mcp dockerfile target ships as interloper-mcp:<version> alongside the
other role images (Makefile ROLES + the publish workflow). The Helm chart
deploys it with mcp.enabled=true — the workload shares the release's
Postgres/catalog configuration, sets INTERLOPER_MCP_EXTERNAL_URL from
mcp.externalUrl, and the chart's HTTPRoute forwards /mcp and
/.well-known/oauth-protected-resource on the app hostnames to it. What
remains for the operator is supplying the environment values and, if it should
not share the app's identity, a database identity of its own.
Metadata
Release files for interloper-mcp 0.98.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| interloper_mcp-0.98.0.tar.gz | 6.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| interloper_mcp-0.98.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.9 kB
Release files / interloper_mcp-0.98.0.tar.gz
| Download URL | interloper_mcp-0.98.0.tar.gz |
|---|---|
| Size | 6.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e08e0cfaddf58693042c320885529212f718d459d49dfde2b32606248c6b071
|
|
BLAKE2b-256 checksum How to use checksums |
99f792c00bee4add20c37e4bae5e768610e46f18dcbe1fc443075f8aff5acae8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.22 {"installer":{"name":"uv","version":"0.12.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / interloper_mcp-0.98.0-py3-none-any.whl
| Download URL | interloper_mcp-0.98.0-py3-none-any.whl |
|---|---|
| Size | 9.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f4dc7bf463435be7153d551b89a0ba5100e76e50526a56cb0ebae33d0edc910f
|
|
BLAKE2b-256 checksum How to use checksums |
996b4aef6e50a77ec4c7626b8451e7bd4e0657becceb4fc4740fd47bc4fdd466
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.22 {"installer":{"name":"uv","version":"0.12.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|