Skip to main content

STDIO MCP proxy server for Dataloop platform.

Project description

Dataloop MCP Proxy Server

This is the main proxy for the Dataloop Micro MCPs, installable as a Python package.

Installation

pip install git+<repository-url>

Usage

You can run the proxy server via CLI:

# Basic usage (loads all system apps matching dataloop-mcp*)
dtlpymcp start

# With custom sources file (loads only sources from the file)
dtlpymcp start --sources-file /path/to/sources.json

# With custom sources file AND system apps (loads both)
dtlpymcp start --sources-file /path/to/sources.json --include-system-apps

# With custom initialization timeout (default: 30 seconds)
dtlpymcp start --init-timeout 60.0

# With custom log level
dtlpymcp start --log-level DEBUG

Command Line Options

  • --sources-file, -s: Path to a JSON file with MCP sources to load. When provided without --include-system-apps, only sources from the file are loaded.
  • --include-system-apps, -i: When used with --sources-file, also loads system apps matching dataloop-mcp*. This allows you to merge custom sources with default system apps.
  • --init-timeout, -t: Timeout in seconds for Dataloop context initialization (default: 30.0)
  • --log-level, -l: Logging level - DEBUG, INFO, WARNING, ERROR, or CRITICAL (default: INFO)

Or using Python module syntax:

python -m dtlpymcp start

Local Development

  • Requires Python 3.10+
  • Install dependencies with pip install -e .
  • Run tests with pytest

Architecture

The server uses a modular architecture with utilities for safe async initialization:

  • dtlpymcp/proxy.py - Main server implementation using FastMCP
  • dtlpymcp/utils/server_utils.py - Safe async initialization utilities
  • dtlpymcp/utils/dtlpy_context.py - Dataloop context management

Cursor MCP Integration

To add this MCP to Cursor, add the following to your configuration:

Docker Example

{
  "mcpServers": {
    "dataloop-ai-mcp": {
      "command": "docker run -i --rm -e DATALOOP_API_KEY docker.io/dataloopai/mcp:latest",
      "env": {
        "DATALOOP_API_KEY": "API KEY"
      }
    }
  }
}

Local CLI Example

{
  "mcpServers": {
    "dataloop-ai-mcp": {
      "command": "uvx",
      "args": ["dtlpymcp", "start"],
      "env": {
        "DATALOOP_ENV": "prod",
        "DATALOOP_API_KEY": "API KEY"
      }
    }
  }
}

Replace API KEY with your actual Dataloop API key.

Project details


Download files

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

Source Distribution

dtlpymcp-0.1.16.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

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

dtlpymcp-0.1.16-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file dtlpymcp-0.1.16.tar.gz.

File metadata

  • Download URL: dtlpymcp-0.1.16.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for dtlpymcp-0.1.16.tar.gz
Algorithm Hash digest
SHA256 6c46b71ea883fa8e3b1c873fc23c5c84b334cf2241ac491c62fcdf6b50a5b5c9
MD5 80ce97f22c54df86a92976d8f3b8ecdc
BLAKE2b-256 344cc3dc0f56f812aea0b87b33ff0341230fc7bd63103160d2ead1d9911fb234

See more details on using hashes here.

File details

Details for the file dtlpymcp-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: dtlpymcp-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.0

File hashes

Hashes for dtlpymcp-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 c08cfdccad7ede65a267ee255f122ac49838fa01fd0f96cf552954069968cc2f
MD5 a25fcc3a9b93abd1bf368565e35a5d47
BLAKE2b-256 afca51538c003fe1626fe761a5688da4112d9004bd3473494e853ad654b4a493

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