Skip to main content
Glama
yukkit

e2b-mcp-server

by yukkit

E2B MCP Server Preview Light E2B MCP Server Preview Dark

E2B MCP Server

npm version License Build Status

Production-grade Model Context Protocol servers that enable AI assistants to execute code securely in isolated E2B sandboxes. Bring powerful code interpretation capabilities to Claude Desktop, Cline, and other MCP-compatible clients.

DemoJavaScript DocsPython DocsE2B Platform

Overview

This repository contains production-ready MCP server implementations in both JavaScript/TypeScript and Python. Each server provides a complete toolkit for AI models to interact with secure, isolated code execution environments.

What you can do:

  • Execute Python code in Jupyter-style notebooks

  • Run shell commands in isolated environments

  • Manage files (read, write, list) within sandboxes

  • Expose services running in sandboxes via public URLs

  • Manage multiple concurrent sandboxes with automatic cleanup

  • Monitor sandbox usage with comprehensive logging

Key features:

  • 10 Production Tools: Complete sandbox interaction toolkit

  • Resource Management: Automatic lifecycle management with configurable limits

  • Type Safety: Full validation with Zod (JS) and Pydantic (Python)

  • Robust Error Handling: Clear diagnostics and graceful degradation

  • Production Logging: Multi-level logging with timestamps

  • Graceful Shutdown: Proper cleanup on termination signals

Related MCP server: e2b-sandbox-mcp

Quick Start

Manual Installation

JavaScript/TypeScript

# With npx (no installation required)
npx @yukkit/e2b-mcp-server

# Or install globally
npm install -g @yukkit/e2b-mcp-server

Python

# With uv (recommended)
uv pip install e2b-mcp-server

# With pip
pip install e2b-mcp-server

Configuration

Claude Desktop

Add to your Claude Desktop config:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "e2b": {
      "command": "npx",
      "args": ["-y", "@yukkit/e2b-mcp-server"],
      "env": {
        "E2B_API_KEY": "your-api-key-here"
      }
    }
  }
}

Environment Variables

Variable

Description

Default

E2B_API_KEY

Your E2B API key (get one here)

Required

MAX_ACTIVE_SANDBOXES

Maximum concurrent sandboxes

10

LOG_LEVEL

Logging level (DEBUG, INFO, WARNING, ERROR)

INFO

IMPORTANT

Get your free E2B API key ate2b.dev

Available Tools

Tool

Description

Parameters

create_sandbox

Create a new isolated sandbox

secure (default: true), timeoutMs (optional)

run_code

Execute Python code in a sandbox

code, sandboxId (optional)

run_command

Run shell commands

command, sandboxId, background

read_file

Read file contents

filePath, sandboxId

write_file

Write to a file

filePath, fileContents, sandboxId

list_files

List directory contents

folderPath, sandboxId

get_sandbox_url

Get public URL for a port

port, sandboxId

get_file_download_url

Get download URL for a file

filePath, sandboxId, useSignatureExpiration (default: 300000ms / 5 min)

list_sandbox_ids

List all active sandboxes

None

kill_sandbox

Terminate a sandbox

sandboxId

Language Support

Choose the implementation that fits your stack:

JavaScript/TypeScript

  • Built with TypeScript for type safety

  • Uses Zod for input validation

  • Compatible with Node.js 20+

  • Full documentation: packages/js/README.md

Install:

npm install @yukkit/e2b-mcp-server

Python

  • Type-safe with full type annotations

  • Pydantic models for validation

  • Python 3.10+ required

  • Full documentation: packages/python/README.md

Install:

pip install e2b-mcp-server

Development

This is a monorepo managed with pnpm workspaces.

Prerequisites

  • Node.js 20+

  • pnpm 9+

  • Python 3.10+ (for Python package)

  • Poetry (for Python package)

Setup

# Clone the repository
git clone https://github.com/e2b-dev/mcp-server.git
cd mcp-server

# Install dependencies
pnpm install

# Build all packages
pnpm build

Project Structure

.
├── packages/
│   ├── js/          # TypeScript/JavaScript implementation
│   │   ├── src/     # Source code
│   │   └── build/   # Compiled output
│   └── python/      # Python implementation
│       └── e2b_mcp_server/  # Package source
├── .changeset/      # Changesets for version management
└── .github/         # CI/CD workflows

Publishing

This project uses Changesets for version management:

# Create a changeset
pnpm changeset

# Version packages
pnpm run version

# Publish to npm/PyPI
pnpm run publish

Use Cases

AI-Powered Code Assistants: Let AI models write and execute code with immediate feedback

Data Analysis: Enable AI to analyze datasets, create visualizations, and generate reports

DevOps Automation: Allow AI to interact with systems and run diagnostic commands

Educational Tools: Create interactive coding tutorials with safe execution environments

API Testing: Let AI test and validate APIs by running actual requests

Code Generation & Testing: Generate code and verify it works through execution

Resources

Support

Security

E2B sandboxes provide secure, isolated execution environments. However, always:

  • Keep your E2B API key secure and never commit it to version control

  • Use environment variables for sensitive configuration

  • Monitor sandbox usage and set appropriate limits

  • Review code before execution in production environments

For security concerns, please email security@e2b.dev.

Contributing

Contributions are welcome! Please read our contributing guidelines before submitting PRs.

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes with tests

  4. Create a changeset: pnpm changeset

  5. Submit a pull request

License

Apache 2.0 - See LICENSE for details.

Related MCP Connectors

Related MCP Servers