Token导航 LogoToken导航TokenDH.com
Jumpboot MCP logo
运维云端stdio官方级别未说明来源级核验

Jumpboot MCP

MCP Server

Jumpboot MCP Server是一个用于动态创建、管理Python环境并执行代码的服务器,支持环境隔离、包安装和持久化工作区管理。

工具数

26

提示词数

0

GitHub Stars

0

资源数

0
代码执行GoClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

richinsley

提供方

richinsley

最后核验

2026/5/17 20:20

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -p 8080:8080 jumpboot-mcp

详细介绍

Jumpboot MCP服务器

MCP(模型上下文协议)服务器,用于封装 跳靴 Go库,使AI助手能够动态创建和管理Python环境、安装包和执行Python代码。

特性

  • 环境管理:创建隔离的Python环境(完全独立于系统Python)
  • 软件包安装:通过pip或conda或requirements.txt文件安装软件包
  • 代码执行:运行Python代码片段或脚本文件
  • REPL会话:维护具有保留状态的持久Python REPL会话
  • 工作空间管理:用于写入文件、克隆存储库和执行脚本的持久代码文件夹
  • 长时间运行的流程:生成GUI应用程序、服务器、游戏和其他持久Python进程
  • 环境可移植性:冷冻和恢复环境以实现可重复性
  • 服务器联合:通过mDNS发现并代理远程jumpboot mcp服务器

目录

安装

先决条件

  • 转到1.21+
  • Git

从源代码构建

git clone https://github.com/richinsley/jumpboot-mcp.git
cd jumpboot-mcp
go build -o jumpboot-mcp .

快速开始

本地使用(stdio)

在本地为Claude Desktop或Claude Code运行服务器:

./jumpboot-mcp

HTTP服务器

作为HTTP服务器运行以进行远程访问或容器:

./jumpboot-mcp -transport http -addr :8080

联合设置

运行一个在网络上声明自己的HTTP服务器:

# On a GPU server
./jumpboot-mcp -transport http -addr :8080 -note "GPU server for ML"

然后运行一个本地stdio实例,该实例可以发现并代理它:

# On your local machine - discovers gpu-server automatically
./jumpboot-mcp

运输选项

标志默认值描述
-transportstdio运输类型: stdiohttp
-addr:8080HTTP服务器地址
-endpoint/mcpHTTP端点路径
-statelessfalse在无状态模式下运行(无会话跟踪)
-tls-certTLS证书文件(启用HTTPS)
-tls-keyTLS密钥文件(启用HTTPS)

服务器联合(mDNS)

Jumpboot mcp支持通过mDNS(Bonjour/Avahi)自动发现服务。这实现了一个强大的联盟模型,其中:

  1. HTTP服务器 在本地网络上宣布自己
  2. Stdio客户端 发现HTTP服务器并代理其工具
  3. 克劳德 查看所有带有前缀名称的工具(本地+远程)

mDNS标志

标志默认值描述
-note""人类可读的服务器描述(例如,“用于机器学习的GPU服务器”)
-instance-namehostname唯一mDNS实例名称(用作工具前缀)
-mdns-announcetrue启用mDNS公告(仅限HTTP模式)
-mdns-discovertrue启用mDNS发现(仅限stdio模式)
-discover-timeout5s创业时等待多久才能发现

联邦是如何运作的

┌─────────────────┐     mDNS Discovery      ┌─────────────────────┐
│  Claude Desktop │ ◄──────────────────────►│  HTTP Server A      │
│  or Claude Code │                         │  (gpu-server)       │
│                 │     HTTP/MCP Protocol   │  -note "GPU for ML" │
│  ┌───────────┐  │ ◄─────────────────────► │                     │
│  │ stdio     │  │                         └─────────────────────┘
│  │ jumpboot  │  │
│  │ -mcp      │  │     mDNS Discovery      ┌─────────────────────┐
│  │           │  │ ◄──────────────────────►│  HTTP Server B      │
│  │ (local +  │  │                         │  (pi-cluster)       │
│  │  proxied  │  │     HTTP/MCP Protocol   │  -note "Raspberry"  │
│  │  tools)   │  │ ◄─────────────────────► │                     │
│  └───────────┘  │                         └─────────────────────┘
└─────────────────┘

Tools visible to Claude:
  - create_environment        (local)
  - run_code                  (local)
  - gpu-server:create_environment   (proxied)
  - gpu-server:run_code             (proxied)
  - pi-cluster:create_environment   (proxied)
  - pi-cluster:run_code             (proxied)

工具命名约定

远程工具的前缀是服务器的实例名称:

原始工具代理工具名称
create_environmentgpu-server:create_environment
run_codegpu-server:run_code
install_packagesgpu-server:install_packages

服务器注释增强了工具描述:

  • 原件: "Create a new Python environment"
  • 代理: "[GPU server for ML] Create a new Python environment"

联合设置示例

示例1:GPU服务器+本地计算机

在GPU服务器(配备CUDA的机器)上:

./jumpboot-mcp \
  -transport http \
  -addr :8080 \
  -instance-name gpu-server \
  -note "GPU server with CUDA for ML workloads"

在您的本地计算机上:

# Just run normally - it discovers gpu-server automatically
./jumpboot-mcp

# Output:
# Discovered 1 remote jumpboot-mcp service(s):
#   - gpu-server at http://192.168.1.100:8080/mcp (GPU server with CUDA for ML workloads)
#     Connected successfully
# Registered 26 proxied tools from remote servers

现在克劳德可以使用本地工具和 gpu-server:* 工具。

示例2:多个专用服务器

服务器1-机器学习工作负载:

./jumpboot-mcp -transport http -addr :8080 \
  -instance-name ml-server \
  -note "ML server with PyTorch/TensorFlow"

服务器2-数据处理:

./jumpboot-mcp -transport http -addr :8080 \
  -instance-name data-server \
  -note "Data server with Pandas/Spark"

服务器3-网络抓取:

./jumpboot-mcp -transport http -addr :8080 \
  -instance-name scraper \
  -note "Scraping server with Selenium/Playwright"

本地stdio客户端:

./jumpboot-mcp
# Discovers all three servers, registers:
#   - Local tools (26)
#   - ml-server:* tools (26)
#   - data-server:* tools (26)
#   - scraper:* tools (26)
# Total: 104 tools available to Claude

示例3:禁用发现/公告

不带mDNS的HTTP服务器(仅手动配置):

./jumpboot-mcp -transport http -addr :8080 -mdns-announce=false

没有发现的Stdio客户端(仅限本地工具):

./jumpboot-mcp -mdns-discover=false

验证mDNS公告

在macOS上:

dns-sd -B _jumpboot-mcp._tcp

在Linux上(使用avahi):

avahi-browse -r _jumpboot-mcp._tcp

Docker部署

塑造形象

docker build -t jumpboot-mcp .

基本HTTP服务器

docker run -p 8080:8080 jumpboot-mcp

使用持久存储(推荐)

docker run -p 8080:8080 \
  -v jumpboot-data:/root/.jumpboot-mcp \
  jumpboot-mcp

该卷在容器重新启动时保留缓存的micromamba库和环境。

mDNS公告

要使mDNS在Docker中工作,请使用主机网络:

docker run --network host \
  -v jumpboot-data:/root/.jumpboot-mcp \
  jumpboot-mcp \
  -transport http -addr :8080 \
  -instance-name docker-server \
  -note "Docker container with Python environments"
注: --network host mDNS多播工作需要。在macOS Docker Desktop上,主机网络有局限性-考虑直接运行二进制文件。

使用HTTPS

docker run -p 8443:8443 \
  -v jumpboot-data:/root/.jumpboot-mcp \
  -v /path/to/certs:/certs:ro \
  jumpboot-mcp \
  -transport http -addr :8443 \
  -tls-cert /certs/cert.pem \
  -tls-key /certs/key.pem

Docker Compose

基本HTTP服务器

version: '3.8'
services:
  jumpboot-mcp:
    build: .
    ports:
      - "8080:8080"
    volumes:
      - jumpboot-data:/root/.jumpboot-mcp
    restart: unless-stopped

volumes:
  jumpboot-data:

使用mDNS(主机网络)

version: '3.8'
services:
  jumpboot-mcp:
    build: .
    network_mode: host
    volumes:
      - jumpboot-data:/root/.jumpboot-mcp
    command:
      - "-transport"
      - "http"
      - "-addr"
      - ":8080"
      - "-instance-name"
      - "docker-jumpboot"
      - "-note"
      - "Docker Python environment server"
    restart: unless-stopped

volumes:
  jumpboot-data:

多个服务器

version: '3.8'
services:
  ml-server:
    build: .
    network_mode: host
    volumes:
      - ml-data:/root/.jumpboot-mcp
    command: ["-transport", "http", "-addr", ":8080", "-instance-name", "ml-server", "-note", "ML workloads"]

  data-server:
    build: .
    network_mode: host
    volumes:
      - data-data:/root/.jumpboot-mcp
    command: ["-transport", "http", "-addr", ":8081", "-instance-name", "data-server", "-note", "Data processing"]

volumes:
  ml-data:
  data-data:

Claude桌面配置

Claude Desktop使用stdio传输。在以下位置配置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/claude/claude_desktop_config.json

仅限本地(无联邦)

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp",
      "args": ["-mdns-discover=false"]
    }
  }
}

与联邦(推荐)

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp",
      "args": []
    }
  }
}

这将:

  1. 在stdio模式下启动本地jumpboot mcp
  2. 通过mDNS发现网络上的任何HTTP跳转mcp服务器
  3. 具有前缀名称的代理远程工具(例如。, gpu-server:run_code)

自定义发现超时

如果您的网络发现速度较慢:

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp",
      "args": ["-discover-timeout", "10s"]
    }
  }
}

多个显式服务器(无mDNS)

如果您无法使用mDNS,请直接配置多个服务器:

{
  "mcpServers": {
    "jumpboot-local": {
      "command": "/path/to/jumpboot-mcp",
      "args": ["-mdns-discover=false"]
    }
  }
}
注: Claude Desktop不直接支持HTTP传输。对于没有mDNS的HTTP服务器,使用联邦方法,使用本地stdio实例来发现它们。

Claude代码配置

Claude Code支持stdio和HTTP传输。

通过CLI配置

添加本地stdio服务器:

claude mcp add jumpboot /path/to/jumpboot-mcp

使用联盟添加本地stdio:

claude mcp add jumpboot /path/to/jumpboot-mcp
# Federation happens automatically via mDNS

直接添加远程HTTP服务器:

claude mcp add jumpboot-gpu --transport http http://gpu-server:8080/mcp

通过.mcp.json配置

创建 .mcp.json 在项目根目录或主目录中:

当地与联邦(推荐)

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp"
    }
  }
}

仅限本地(未发现)

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp",
      "args": ["-mdns-discover=false"]
    }
  }
}

直接HTTP连接(无联合)

{
  "mcpServers": {
    "jumpboot-remote": {
      "type": "url",
      "url": "http://gpu-server:8080/mcp"
    }
  }
}

多个直接连接

{
  "mcpServers": {
    "jumpboot-local": {
      "command": "/path/to/jumpboot-mcp",
      "args": ["-mdns-discover=false"]
    },
    "jumpboot-gpu": {
      "type": "url",
      "url": "http://gpu-server:8080/mcp"
    },
    "jumpboot-data": {
      "type": "url",
      "url": "http://data-server:8080/mcp"
    }
  }
}
注: 对于直接HTTP连接,工具名称没有前缀。如果要自动添加前缀,请使用联邦(stdio和mDNS)。

混合设置:联邦+直接

{
  "mcpServers": {
    "jumpboot": {
      "command": "/path/to/jumpboot-mcp"
    },
    "jumpboot-cloud": {
      "type": "url",
      "url": "https://cloud-server.example.com:8443/mcp"
    }
  }
}

这为您提供了:

  • stdio实例中的本地工具
  • 通过mDNS自动发现局域网服务器(前缀名称)
  • 直接连接到云服务器(无前缀名称)

MCP工具参考

环境管理(5个工具)

工具说明
create_environment创建一个新的Python环境
list_environments列出所有托管环境
destroy_environment删除环境和工作区
freeze_environment将环境导出为JSON
restore_environment从冻结的JSON重新创建

包管理(3个工具)

工具说明
install_packages安装软件包(pip或conda)
install_requirements从requirements.txt安装
list_packages列出已安装的软件包

代码执行(2个工具)

工具说明
run_code执行Python代码片段
run_script执行Python脚本文件

REPL会话(4个工具)

工具说明
repl_create创建持久REPL
repl_execute运行代码(状态保留)
repl_list列出活动会话
repl_destroy结束会话

工作空间管理(8个工具)

工具说明
workspace_create创建代码文件夹
workspace_write_file将文件写入工作区
workspace_read_file从工作区读取文件
workspace_list_files列出工作区文件
workspace_delete_file删除文件
workspace_run_script从工作区运行脚本
workspace_git_clone克隆git存储库
workspace_destroy删除工作区

过程管理(4个工具)

工具说明
spawn_process启动后台进程
list_processes列出生成的进程
process_output获取进程stdout/stderr
kill_process终止进程

用法示例

基本工作流程

1. create_environment(name="myenv", python_version="3.11") → env_id
2. install_packages(env_id="...", packages=["numpy", "pandas"])
3. run_code(env_id="...", code="import numpy; print(numpy.__version__)")

使用远程服务器

1. gpu-server:create_environment(name="ml-env", python_version="3.11") → env_id
2. gpu-server:install_packages(env_id="...", packages=["torch", "transformers"])
3. gpu-server:run_code(env_id="...", code="import torch; print(torch.cuda.is_available())")

REPL会话

1. repl_create(env_id="...", session_name="analysis") → session_id
2. repl_execute(session_id="...", code="x = 42")
3. repl_execute(session_id="...", code="print(x)")  # prints 42

长时间运行的进程

1. workspace_write_file(env_id="...", filename="server.py", content="...")
2. spawn_process(env_id="...", script_path="server.py", capture_output=true)
3. process_output(process_id="...", tail_lines=50)
4. kill_process(process_id="...")

响应格式

所有工具都返回JSON:

{"success": true, "data": {...}, "error": null}

或者出错:

{"success": false, "data": null, "error": "descriptive error message"}

数据存储

所有数据都存储在 ~/.jumpboot-mcp/envs/:

~/.jumpboot-mcp/envs/
├── bases/                    # Cached micromamba bases
│   ├── base_3.11/
│   └── base_3.12/
└── {env-uuid}/              # User environments (venvs)
    ├── bin/
    ├── lib/
    └── workspace/           # Persistent workspace

依赖项

  • -Python环境管理
  • -MCP协议实现
  • -mDNS服务发现

许可证

麻省理工学院

目录标签

目录标签

代码执行GoClaudePython环境管理本地部署REPL会话工作区管理服务器联邦

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

26

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP