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.110.1
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.110.1.tar.gz | 6.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| interloper_mcp-0.110.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 16.1 kB
Release files / interloper_mcp-0.110.1.tar.gz
| Download URL | interloper_mcp-0.110.1.tar.gz |
|---|---|
| Size | 6.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d3b2b2843405a5af3cf72b721d56f967a9bafd2e58328fc2f3cd5a0503f4e0bf
|
|
BLAKE2b-256 checksum How to use checksums |
0d451d015341a67b82388a7994c5797810066c7def3806033c04ef4965a8ad0f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","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.110.1-py3-none-any.whl
| Download URL | interloper_mcp-0.110.1-py3-none-any.whl |
|---|---|
| Size | 9.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb262fa6ef8cff5426695360f39e0d61c98cdeb09fc4cd9d995a4c85c9d737b3
|
|
BLAKE2b-256 checksum How to use checksums |
9bcca0a30eca245ae45f6166fa4a2df02d73016491531faf978167e286249f69
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","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}
|