Local MCP client for Denario — owns local file/git I/O, delegates private research compute to the Cloud Run API.
Project description
denario-mcp
A lightweight, local MCP client for Denario. It runs on the user's machine
and owns all local filesystem + git work; the private Denario research
pipeline runs remotely on Cloud Run and only returns data. This is the
air-sdk-style split applied to Denario — see
../DESIGN.md for the full architecture and rationale.
Why a local client
Running denario_setup remotely can never create a project on the user's disk,
and gh repo create in a container would use the server's GitHub identity.
So file/git work must be local. Only the confidential research compute is
remote. See DESIGN.md §1.
Install
pip install -e ./denario-mcp # from web/, during development
# or, once published: pip install denario-mcp
The package is intentionally light — it depends only on mcp and httpx, not
on the heavy Denario research stack. The denario_setup logic is vendored
(stdlib-only) in setup_local.py.
Use with Claude Code
{
"mcpServers": {
"denario": {
"command": "denario-mcp",
"env": {
"DENARIO_API_KEY": "…", // for remote compute steps
"DENARIO_CLOUD_URL": "https://denario-web-….run.app"
}
}
}
}
denario-mcp requires git and the GitHub CLI (gh, authenticated as the
user) on PATH for denario_setup's repo creation.
Status
| Tool | State |
|---|---|
denario_setup |
✅ Implemented — runs fully locally, no network. |
denario_idea |
✅ Implemented — private compute runs remotely (POST /v1/compute/idea); idea.md is written + committed locally. |
| methods / results / paper / eda / literature | ⏳ remaining — same pattern; long steps move to async jobs (/v1/jobs). |
How a compute step flows (denario_idea)
client (denario-mcp) server (Cloud Run)
read local data_description.md
POST /v1/compute/idea ───────────────────► denario_compute.run_step("idea")
ephemeral dir, run pipeline,
return idea.md as data
◄───────────────────────────────────────── { artifacts, log }
write idea.md into local project dir
git commit && push (user identity)
The server never touches the user's disk or git; the client owns both.
Environment
| Var | Purpose |
|---|---|
DENARIO_API_KEY |
Bearer token for the remote compute API. |
DENARIO_CLOUD_URL |
Base URL of the Cloud Run compute API. |
GITHUB_ORG |
Org/account for repo creation (default ParallelScience; see DESIGN §9). |
SCIENTIST_NAME |
Used in derived repo slug + README (default denario). |
DENARIO_MCP_LOG |
If set, log file path (keeps logs off stdout). |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file denario_mcp-0.2.0.tar.gz.
File metadata
- Download URL: denario_mcp-0.2.0.tar.gz
- Upload date:
- Size: 10.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ade9187309d7158ad0a8b3e596cd7e92285b437f646227ada645d23c54a31001
|
|
| MD5 |
1b92eb5693e2591d9b2a1c21beb61620
|
|
| BLAKE2b-256 |
c5b6708115290d2866a73d264d43ff06688f5337c9fd55e76220043de0e6712a
|
File details
Details for the file denario_mcp-0.2.0-py3-none-any.whl.
File metadata
- Download URL: denario_mcp-0.2.0-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d4fc78a0112ca8cbbb75f9df684b838ae447607b1838da8b99e542dbf737c5b4
|
|
| MD5 |
72a0cd934a5c8881c224469b0f56f31c
|
|
| BLAKE2b-256 |
d9064f20b2a19858a5ea9764f0f5a4a7e0d7715a547b57de9d0a4140903d7328
|