Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

denario_mcp-0.1.0.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

denario_mcp-0.1.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file denario_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: denario_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for denario_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2895c2fa57ec51b5469d3c22dc47392d23c9eb3364cd1e8b85cdd96d369ace45
MD5 81ec24263e7a002d30c2dc6158e2fe22
BLAKE2b-256 893391367b27538b732f623056bbd3d1691d29ce814c62d3a2318702e9020872

See more details on using hashes here.

File details

Details for the file denario_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: denario_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for denario_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8fb9eb715f83849693028ca1be12b0bf38d52fe12abef91a0f7014e016bbb675
MD5 f01e4c0d83078dfd5b2c98cfb839615e
BLAKE2b-256 8aebcf6e3b7cd81576653588d4e076116ad276f8aa36a8877b7d83000f96bc88

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page