Skip to main content

HOPX MCP Server

Model Context Protocol (MCP) server for HOPX. Enables AI assistants to execute code in isolated cloud containers.

MCP Name: io.github.hopx-ai/hopx-mcp

License Python MCP

Installation

uvx hopx-mcp

Get your API key at hopx.ai.


Capabilities

  • Execute Python, JavaScript, Bash, and Go in isolated containers
  • Data analysis with pandas, numpy, matplotlib (pre-installed)
  • File operations and system commands
  • Background processes and long-running tasks

Containers auto-destroy after use.


Configuration

Get API Key

Sign up at hopx.ai.

Configure IDE

Add MCP server configuration to your IDE:

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "hopx-sandbox": {
      "command": "uvx",
      "args": ["hopx-mcp"],
      "env": {
        "HOPX_API_KEY": "your-api-key-here"
      }
    }
  }
}

Restart Claude Desktop after configuration.

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "hopx-sandbox": {
      "command": "uvx",
      "args": ["hopx-mcp"],
      "env": {
        "HOPX_API_KEY": "your-api-key-here"
      }
    }
  }
}
VS Code

Add to .vscode/mcp.json:

{
  "mcpServers": {
    "hopx-sandbox": {
      "command": "uvx",
      "args": ["hopx-mcp"],
      "env": {
        "HOPX_API_KEY": "your-api-key-here"
      }
    }
  }
}
Other IDEs

Configuration format varies by IDE. Add these parameters:

  • Command: uvx
  • Args: ["hopx-mcp"]
  • Environment: HOPX_API_KEY=your-api-key-here

Usage

Quick Execution

execute_code_isolated(
    code='print("Hello, World!")',
    language='python',
    timeout=30
)

Returns:

{
    'stdout': 'Hello, World!\n',
    'exit_code': 0,
    'execution_time': 0.123,
    'sandbox_id': '1762778786mxaco6r2'
}

Persistent Sandbox

For multiple operations in the same environment:

# Create sandbox
sandbox = create_sandbox(
    template_id='code-interpreter',
    timeout_seconds=3600
)

sandbox_id = sandbox['id']

# Run operations
execute_code(sandbox_id, 'import pandas as pd')
execute_code(sandbox_id, 'df = pd.read_csv("data.csv")')
file_write(sandbox_id, '/workspace/output.txt', 'results')
content = file_read(sandbox_id, '/workspace/output.txt')

# Cleanup
delete_sandbox(sandbox_id)

Available Tools

Sandbox Management:

  • create_sandbox() - Create sandbox
  • list_sandboxes() - List sandboxes
  • delete_sandbox() - Terminate sandbox

Code Execution:

  • execute_code_isolated() - One-shot execution (recommended)
  • execute_code() - Execute in existing sandbox
  • execute_code_background() - Long-running tasks
  • execute_code_async() - Webhook callbacks for 30+ min tasks

File Operations:

  • file_read(), file_write(), file_list()
  • file_exists(), file_remove(), file_mkdir()

Commands:

  • run_command() - Execute shell commands
  • run_command_background() - Background processes

Environment:

  • env_get(), env_set(), env_clear()

Supported Languages

  • Python 3.11+ - pandas, numpy, matplotlib, scipy, scikit-learn, requests
  • JavaScript/Node.js 20 - Standard libraries
  • Bash - Unix utilities, git, curl, wget
  • Go - Compilation support

Features

  • Sandbox creation: ~200ms
  • Container startup: ~0.1s
  • Auto-cleanup: 600s (configurable)
  • Internet access: Enabled by default
  • Isolation: Complete per execution
  • Authentication: JWT-based

Environment Variables

Required:

HOPX_API_KEY=your-api-key

Optional:

HOPX_BASE_URL=https://api.hopx.dev  # default

Troubleshooting

"401 Unauthorized"

API key not set or invalid.

Solution:

echo $HOPX_API_KEY  # Verify key is set

"Template not found"

Invalid template name.

Solution:

templates = list_templates(limit=20)  # Browse available templates

Slow First Execution

Container initializes in ~3 seconds after creation.

Cause: VM authentication setup Solution: Subsequent operations are immediate


Limitations

  • Synchronous execution: Max 300 seconds
  • Sandbox lifetime: Default 10 minutes (configurable)
  • Template-specific language support

Security

Protected:

  • Local system isolated from container execution
  • Containers isolated from each other
  • Auto-cleanup prevents resource leaks
  • JWT authentication per sandbox

Considerations:

  • Containers have internet access by default
  • Code executed in HOPX cloud
  • Follow your security policies for sensitive data

Support


License

MIT License. See LICENSE for details.

HOPX Terms of Service: hopx.ai/terms


Technical Details

Built with:


Website | Documentation | GitHub

Metadata

Release files for iflow-mcp_hopx-ai-mcp 0.2.1

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

Source distribution (sdist)

Source distribution for iflow-mcp_hopx-ai-mcp 0.2.1
File Size Uploaded
iflow_mcp_hopx_ai_mcp-0.2.1.tar.gz 19.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_hopx-ai-mcp 0.2.1
File Interpreter ABI Platform
iflow_mcp_hopx_ai_mcp-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 37.7 kB

Release files / iflow_mcp_hopx_ai_mcp-0.2.1.tar.gz

Download URL iflow_mcp_hopx_ai_mcp-0.2.1.tar.gz
Size 19.5 kB
Tags Source
SHA-256 checksum
How to use checksums
fb9308408a6eeb7b8c16b54a58fb15d70baf4bc9b68bf6b06fed45212ac494f2
BLAKE2b-256 checksum
How to use checksums
8e57477c7a25e6d90250c41fecc852c252703155df4e28fa717f147ca4337179
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_hopx_ai_mcp-0.2.1-py3-none-any.whl

Download URL iflow_mcp_hopx_ai_mcp-0.2.1-py3-none-any.whl
Size 18.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3be147d5c12ec505d38b34a4d4651b72594e22fd7cee91394023581c4aebaf40
BLAKE2b-256 checksum
How to use checksums
092cad8efd6e3bab44f15c591e4f4809fe368d36f07fb77bda69466ceee5ae8d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

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