Skip to main content

interloper-mcp

A Model Context Protocol server exposing read-only interloper platform access to AI agents: catalog definitions, collection listings, lineage, run/backfill monitoring, and analytics.

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 (not yet wired)

The container target would follow the existing dockerfile pattern:

FROM base AS build-mcp
COPY packages ./packages
RUN docker/uv-sync.sh interloper-core interloper-assets interloper-db interloper-toolkit interloper-mcp

FROM runtime AS mcp
COPY --from=build-mcp /interloper/.venv /interloper/.venv
USER app
EXPOSE 3001
CMD ["interloper-mcp"]

plus a mcp role in the Makefile/publish workflow, a Helm/Flux workload (apps/interloper/mcp/ with an HTTPRoute for mcp.interloper.app — wildcard DNS + TLS already cover it), and its own GSA/IAM DB user in terraform if it should not share the app's identity.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

interloper_mcp-0.59.0.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

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

interloper_mcp-0.59.0-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file interloper_mcp-0.59.0.tar.gz.

File metadata

  • Download URL: interloper_mcp-0.59.0.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","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}

File hashes

Hashes for interloper_mcp-0.59.0.tar.gz
Algorithm Hash digest
SHA256 6a267c9f579a094dcd4b2c6b0689febb25041820a9d51b8b76c1e932dd502b11
MD5 5f1dae4d3058fb05ce8abeb33a473b13
BLAKE2b-256 7ac48f866f37d51b112af7bd4abe8b9bfc94b1dfd6806b1dbec201943a8dc59c

See more details on using hashes here.

File details

Details for the file interloper_mcp-0.59.0-py3-none-any.whl.

File metadata

  • Download URL: interloper_mcp-0.59.0-py3-none-any.whl
  • Upload date:
  • Size: 9.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","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}

File hashes

Hashes for interloper_mcp-0.59.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72711528d6c56f4419621227a8da51955302010f1fa86486116945461061fd55
MD5 989eeab8c1c2c428ddacc192842af1ef
BLAKE2b-256 946f9348c14f4068fbf7d8ba62c98e92eb5a1ab7a8c10fef6c7447283b847f18

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 Sentry Error logging StatusPage Status page