mcp-repl is an MCP server that gives an agent a persistent Python or R session, kept alive across tool calls.
Overview
mcp-repl is an MCP server that gives an agent a persistent Python or R session, kept alive across tool calls. The agent can load data once, inspect objects, try ideas, read help, make plots, and keep iterating — the way a person would in a REPL. A shell tool running Rscript -e or python -c keeps forcing the agent to rebuild context. mcp-repl keeps the session open instead: variables, loaded packages, plots, and other state stay available until you or the model reset. - The backend runs in a sandbox enforced by OS primitives at the process level — not command-specific runtime rules. Network is disabled; writes are constrained to workspace roots and the temp paths the active session needs. On Unix, a memory guardrail kills the worker if it exceeds threshold. - Smart echo (omitted when safe, elided for large multi-expression blocks) and in-band help pages.
README
MCP Console
An interactive workbench for agents working with data in R, Python, and SQL.
Load data once, explore questions, refine plots, read help, and debug code with objects and models still in memory. Use one language or combine them in the same process, without intermediate files.
Code runs in an OS-level sandbox by default. Console prepares environments and packages automatically; no Console configuration file is required. It works with MCP-compatible clients such as Codex and Claude Code and does not depend on a particular model provider.
Development preview: interfaces may change. macOS, Linux, and Windows x64 are supported.
Quickstart
Install uv, then install Console:
uv tool install mcp-console
Get started covers platform prerequisites, optional R installation, and client setup. Build from source covers the development version.
Register Console with your client:
mcp-console configure-client codex
# Or: mcp-console configure-client claude
This registers Console globally, configures the client to launch uvx mcp-console serve, and loads Console tools up front.
Add --directory . to register it for the current directory instead.
Use --dry-run to preview the settings or --no-auto-load to keep the client’s default tool discovery.
You can also start with uvx mcp-console configure-client codex claude to configure both clients without first installing Console.
Use --pin-version VERSION to select the Console version resolved by uvx, or --no-uvx to configure an absolute executable path.
--pin-version current pins the version running setup.
See client setup for project/global scope and other clients.
Run the client and Console on the same host, with the client’s shell and filesystem tools using the same workspace.
Ask your agent:
Use Console to generate a small dataset, fit a model, and plot the result. Keep the data and model for follow-up.
Where Console fits
- Unattended analysis: run long analyses with limits on filesystem writes and network access.
- Model evaluations: evaluate how an agent explores data, checks its work, and responds to results.
- Conversational analysis: discuss questions and results while the agent works in its own session.
- Large datasets: keep data and intermediate results in memory for follow-up questions.
- Debugging and package development: pause execution and inspect live objects where a failure occurs.
Limits and trust boundaries
The default sandbox permits host-file reads, restricts direct networking, and permits regular-file writes only in private temporary storage. Readable secrets are not protected. Project configuration is trusted input and may widen permissions.
Dependency preparation has its own permissions. Recordings contain code, input, and output without redaction and have no automatic cleanup. Read Sandbox and trust before changing permissions and Recordings before sharing session files.
There is one session and one active code cell per connection. Errors do not roll back earlier effects. Restart discards live objects but retains accepted requirements and recordings.
Documentation
Documentation website · Get started · User guides · Client integration · Development
mcp-console was previously called mcp-repl.
Licensed under the MIT license.
Install
This server does not publish a one-line install command.
Open the repository installation guide New to MCP? Start with the mcpskill.org guide →