Skip to main content

License PyPI - backend PyPI - toolkit

backend frontend toolkit web-ide e2e

Sim Atlas

Search and discovery platform for simulation nodes — Python functions, workflow definitions, and pyiron nodes used in scientific computing.

Repository layout

sim_atlas/
├── backend/    FastAPI server (sim-atlas-backend)
├── frontend/   Search & discovery SPA, served at /
├── web_ide/    Visual workflow composer SPA, served at /ide
├── toolkit/    Client-side parser & upload library (sim-atlas-toolkit)
└── docs/       Architecture docs and ADRs

How it works

  1. Researchers run the toolkit on their machine to parse their Python packages and push node metadata to the server.
  2. The backend stores metadata, generates AI embeddings and AI-refined docstrings on demand, and exposes a REST API and MCP tool.
  3. The frontend and web_ide are React SPAs built into the backend's static directory and served by it.

Quickstart

1. Start the server via uvx

cd <sim-atlas>
uvx sim-atlas

On the first start the server will create a configuration file in the current working directory if it does not find one.

The API and both SPAs are now available at http://localhost:8000.

2. Generate an API token

Write access (uploading nodes) requires a JWT token:

cd <sim-atlas-env>
uvx --from sim-atlas sim-atlas-access-token "Your Name" "you@example.com"
export SIM_ATLAS_API_URL=http://localhost:8000/api/v1
export SIM_ATLAS_API_TOKEN=<token>

3. Upload nodes from a Python package

Load the environment with the modules you want to upload. Install the sim-atlas-toolkit into this environment. And upload the module. For example:

uv pip install sim-atlas-toolkit
uv run sim-atlas-upload --recursive filesystem mypackage.mymodule

4. Explore your newely created nodes

Head over to the webinterface and explore the nodes you uploaded:
http://localhost:8000

Use from Claude Code

Sim Atlas exposes a read-only MCP tool surface aimed at CLI coding agents, so you can write plain Python against the catalog without leaving the terminal (see ADR-0019). It is independent of the Web IDE's agent — no LLM key is needed on the server for this path.

1. Register the server

claude mcp add --transport http sim-atlas http://localhost:8000/mcp/

Reads are public, so no token is required. Four tools become available:

Tool Answers
search_functions "what does X?"
find_by_signature "what returns a temperature in K?"
get_function "how exactly do I call it, and what do I need installed?"
get_workflow_source "show me a pipeline that uses it"

Results come back as Python: a call signature, the exact from ... import ... line, and an install hint for the distribution the function was parsed from (PyPI and conda).

The tools work on their own, but the skill tells the agent when to reach for the catalog and how to handle a package that is not installed locally:

mkdir -p ~/.claude/skills/sim-atlas
cp integrations/claude-code/SKILL.md ~/.claude/skills/sim-atlas/

Claude Code checks whether a package is importable before writing an import, and proposes an install command matched to your project's package manager (uv, pixi, conda or pip) for you to confirm. The server never inspects or changes your environment.

Metadata

Release files for sim-atlas 0.0.16

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

Source distribution (sdist)

Source distribution for sim-atlas 0.0.16
File Size Uploaded
sim_atlas-0.0.16.tar.gz 631.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sim-atlas 0.0.16
File Interpreter ABI Platform
sim_atlas-0.0.16-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / sim_atlas-0.0.16.tar.gz

Download URL sim_atlas-0.0.16.tar.gz
Size 631.7 kB
Tags Source
SHA-256 checksum
How to use checksums
e2a54e918c4f6ea771a35cf4a5ee1bc703a696af492a564087f685dff466bf2d
BLAKE2b-256 checksum
How to use checksums
896c652957ec4eaea64e3cc4b45992cb0dc1a250be797209eb67cd9b9de2a76e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / sim_atlas-0.0.16-py3-none-any.whl

Download URL sim_atlas-0.0.16-py3-none-any.whl
Size 645.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fcd929122b030d0e928e88dd32fa2195ed9db0cd24bbe10fc910f881a0399071
BLAKE2b-256 checksum
How to use checksums
f3d1e914cdca57e7f825602f81f8cff6a7e906c7ee0f2fd8088a5370f8dd93e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"44","id":"","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

0.0.17

2 release files

This release

0.0.16 This release

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.13

2 release files

0.0.12

2 release files

0.0.11

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

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