PRIMS logo

PRIMS

by hileamlakB

Runs Python in disposable isolated sessions with optional packages, file mounts, workspace inspection, and artifact persistence.

Install PRIMS

Pick your client, then add it in one click or paste the config.

Streamable HTTP (Remote)
Server URL
http://0.0.0.0:9000/mcp

Remote servers are added in the app, not the config file: Customize → Connectors → Add custom connector, then paste this URL.

Overview

hileamlakB/PRIMS MCP server connects MCP clients to disposable Python runtime sessions for executing user-submitted code. It exposes tools for running code, installing optional pip dependencies, mounting files, inspecting workspace contents, and persisting output artifacts. Use it when an agent needs temporary Python computation or file-based processing through MCP over stdio or the provided HTTP endpoint.

Use cases

  • Run Python calculations with temporary dependencies
  • Mount a remote CSV and analyze it in a session
  • Inspect files generated by Python code
  • Upload generated plots or other output artifacts
  • Execute short-lived data transformation scripts

Key features

  • Disposable isolated Python environments
  • Optional pip dependency installation
  • Per-session remote file mounting
  • Workspace listing and text preview
  • Presigned artifact uploads
  • MCP over stdio and HTTP

Tools5

What PRIMS lets your agent do. Expand a tool for its parameters.

Self-reported~85 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 3d ago

Recent health check succeeded.

17/17 checks healthy over the last 80d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars30Stargazers on the source repository.
Last commit1y agoMost recent push to the default branch.
Tools exposed5Callable tools this server registers over MCP.
Directory activity4 viewsConfig copies, upvotes, and views on AllMCPs.

How PRIMS works

What hileamlakB/PRIMS MCP server does

hileamlakB/PRIMS MCP server gives MCP-compatible agents access to short-lived Python execution environments. The main execution tool accepts Python source code and can install requested pip packages for that invocation. Standard output and standard error are returned to the caller.

Each execution is designed to be isolated and disposable. This makes the server suitable for temporary calculations, data inspection, transformations, and scripts that do not need state to survive between sessions.

The server is categorized as an 👨‍💻 Code Execution MCP server. It is a fit for agents that need to run Python rather than only generate code, provided the agent can supply the required inputs and handle any resulting files.

How it works

PRIMS can run locally with Python or in Docker. The local startup path uses the repository setup script to create a .venv and install dependencies. The documented server command is python -m server.main, which exposes an MCP endpoint at http://0.0.0.0:9000/mcp. A Docker helper script builds and starts the container and prints the MCP URL when ready.

A session workspace holds files created during execution. mount_file downloads a remote file once per session into the mounts/ path, allowing later Python code to reuse it without sending the URL again. list_dir shows workspace entries, while preview_file returns up to 8 KB from a text file for inspection.

Files created under output/ can be sent to permanent storage with persist_artifact. That tool requires a client-provided presigned URL. Small artifacts may also be retrieved from the server’s artifact endpoint using the MCP session ID.

Setup and configuration

For local development, make scripts/setup_env.sh executable, run it, and activate the resulting virtual environment in each new shell. Start the service with python -m server.main. Alternatively, run scripts/docker_run.sh after making it executable.

Presigned URLs and remote file URLs are supplied as tool arguments rather than documented environment variables.

Tools and capabilities

  • run_code: Execute Python with optional pip dependencies and return stdout or stderr.
  • list_dir: List files and directories in the current session workspace.
  • preview_file: Read up to 8 KB of a text file.
  • mount_file: Download a remote file once per session into mounts/<path>.
  • persist_artifact: Upload a file from output/ to a presigned URL.

The examples cover listing tools, running code, mounting and reusing a CSV, inspecting a workspace, and persisting a generated artifact. hileamlakB/PRIMS MCP server does not document broader external service integrations beyond the presigned upload and remote-file download flows.

Limitations and notes

The project is marked alpha in the README. Treat arbitrary code execution as an operational risk and evaluate the deployment environment before exposing the endpoint to untrusted users.

Workspace persistence is temporary by design. Files that must survive a session need to be uploaded through persist_artifact or otherwise retrieved before cleanup. preview_file is intended for quick text inspection and is limited to 8 KB. The server’s documented transports are MCP/stdio and the HTTP endpoint described above.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about PRIMS

hileamlakB/PRIMS is an MCP server that connects MCP clients to disposable Python runtime sessions. Its main tools run Python with optional pip packages, mount remote files, inspect workspace contents, preview text files, and upload output artifacts to presigned URLs. It supports local stdio use and a documented HTTP MCP endpoint.

Run the repository's setup script, activate the created virtual environment, and start `python -m server.main`. The documented setup uses `scripts/setup_env.sh` to create `.venv` and install dependencies. Docker users can run `scripts/docker_run.sh` after making it executable.

It provides `run_code`, `list_dir`, `preview_file`, `mount_file`, and `persist_artifact`. These tools execute Python, inspect session files, preview up to 8 KB of text, download a remote file once per session, and upload an `output/` file to a client-provided presigned URL.

Yes, `run_code` accepts optional pip dependencies for an execution.

Use `persist_artifact` with a relative path under `output/` and a client-provided presigned URL. Small artifacts can also be downloaded from the artifact endpoint using the MCP session ID.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewPRIMS AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/hileamlakb-prims?style=directory)](https://allmcps.com/mcp/hileamlakb-prims)
HTML Embed
<a href="https://allmcps.com/mcp/hileamlakb-prims"><img src="https://allmcps.com/api/badge/hileamlakb-prims?style=directory" alt="PRIMS on AllMCPs" /></a>