Skip to main content

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).

A client authenticates with a bearer token of one of two kinds: an OAuth access token, which a client such as claude.ai obtains on its own from the authorization server the interloper API runs (discovery, dynamic registration, the user's consent in the app), or a personal access token (PAT) the user creates in the app's settings. Either acts as its user in every organisation they belong to, with their live role in each; revocation and membership removal apply immediately. The server publishes its protected-resource metadata at /.well-known/oauth-protected-resource/mcp, naming the authorization server, so an OAuth client needs only the endpoint URL. See Connecting MCP clients.

Every tool takes an organisation argument, the id of the organisation the call acts in. It may be left out when the user belongs to exactly one; otherwise the call returns an error listing the user's organisations, which list_organisations also lists, with the role in each. A super-admin acts as admin in any organisation they name.

Running

Streamable HTTP (default; binds INTERLOPER_MCP_HOST:INTERLOPER_MCP_PORT, endpoint /mcp):

interloper-mcp

Clients authenticate every request with Authorization: Bearer <token>.

stdio (single-user, authenticates once at startup; the token is required, so local development uses a PAT created in the dev instance):

INTERLOPER_MCP_TOKEN=ilp_... interloper-mcp --transport stdio

Connecting clients

claude.ai, Claude Code and any client that supports OAuth: add the MCP endpoint as a remote server and approve the consent page the client opens.

claude mcp add --transport http interloper https://app.example.com/mcp

With a personal access token instead, 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 (unset) Public URL of the MCP endpoint, the OAuth resource clients sign in to; unset means /mcp on INTERLOPER_SERVER_EXTERNAL_URL. The API reads it too
INTERLOPER_MCP_TOKEN (unset) stdio only: PAT to authenticate as (required)

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, gives every pod INTERLOPER_MCP_EXTERNAL_URL when mcp.externalUrl is set, 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.123.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for interloper-mcp 0.123.0
File Size Uploaded Provenance Actions
interloper_mcp-0.123.0.tar.gz 9.5 kB Without provenance Details for interloper_mcp-0.123.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for interloper-mcp 0.123.0
File Interpreter ABI Platform Actions
interloper_mcp-0.123.0-py3-none-any.whl Python 3 none any Details for interloper_mcp-0.123.0-py3-none-any.whl

Total release size: 20.9 kB

Release files / interloper_mcp-0.123.0.tar.gz

Download URL interloper_mcp-0.123.0.tar.gz
Size 9.5 kB
Tags Source
SHA-256 checksum
How to use checksums
460b87c2f57b02cc1ac8d6ffd1413657777809c21c1fd4a7cdb9ca11956914c3
BLAKE2b-256 checksum
How to use checksums
e980efe72b92df166bc95618d65f986ad87050b4f79c0e966808804c4597fdcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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.123.0-py3-none-any.whl

Download URL interloper_mcp-0.123.0-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
18a49ab56d0f20f6a350f9cb9366ee15baf8570405dc7f703aed9eef28b7bcda
BLAKE2b-256 checksum
How to use checksums
2ff347fc0cd5faccca6811320221106567ba18ddd0ca097d293c7e619cd9752f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","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}

Security for interloper-mcp 0.123.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.123.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page