Pybamm Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Pybamm Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This project exposes PyBaMM documentation and source code through a local MCP server so an LLM-enabled IDE can search docs and open files directly from tools.
At startup, the project prepares three things:
./PyBaMM)PyBaMM/docs/_build/text)pybamm_docs.db)Then server.py starts an MCP stdio server that provides these tools:
search_pybamm_docs(query): full-text search across PyBaMM docsread_doc_page(filepath): read one docs text page from search resultsread_pybamm_source_code(module_path): open source files from the cloned repodocker compose)makepandocFrom this repository root:
docker compose build
docker compose run --rm --no-deps -T pybamm-mcpNotes:
Dockerfile, requirements.txt, build_index.py, orserver.py:
docker compose build --no-cacheFrom this repository root:
python -m venv .venv
source .venv/bin/activate
pip install --upgrade pip setuptools wheel
pip install -r requirements.txt
git clone --depth 1 --branch main https://github.com/pybamm-team/PyBaMM.git PyBaMM
pip install -e ./PyBaMM
make -C PyBaMM/docs text
python build_index.py
python server.pyNotes:
server.py expects paths relative to this repo root. Run it from here.PyBaMM/ already exists, skip the clone command.make -C PyBaMM/docs text
python build_index.pyMost MCP-enabled IDEs use a JSON server entry with:
cwdAdd one of the following entries in your IDE MCP settings.
{
"mcpServers": {
"pybamm-docs": {
"command": "docker",
"args": [
"compose",
"-f",
"/absolute/path/to/pybamm_mcp_server/docker-compose.yml",
"run",
"--rm",
"--no-deps",
"-T",
"pybamm-mcp"
]
}
}
}{
"mcpServers": {
"pybamm-docs": {
"command": "/absolute/path/to/pybamm_mcp_server/.venv/bin/python",
"args": ["/absolute/path/to/pybamm_mcp_server/server.py"],
"cwd": "/absolute/path/to/pybamm_mcp_server"
}
}
}If your IDE launches commands in Windows but your project is in WSL:
{
"mcpServers": {
"pybamm-docs": {
"command": "wsl",
"args": [
"-e",
"bash",
"-lc",
"cd /absolute/path/to/pybamm_mcp_server && .venv/bin/python server.py"
]
}
}
}After adding the server config:
pybamm-docs shows as connected.search_pybamm_docs("single particle model").
If the server fails to start, most issues are one of:
make text and python build_index.py not run)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.