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
- Researchers run the toolkit on their machine to parse their Python packages and push node metadata to the server.
- The backend stores metadata, generates AI embeddings and AI-refined docstrings on demand, and exposes a REST API and MCP tool.
- 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).
2. Install the skill (recommended)
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)
| File | Size | Uploaded | |
|---|---|---|---|
| sim_atlas-0.0.16.tar.gz | 631.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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}
|