mcpu

mcp
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 8 GitHub stars
Code Uyari
  • network request — Outbound network request in scripts/face-proof.mjs
  • network request — Outbound network request in src/deploy.ts
  • network request — Outbound network request in src/face.ts
  • network request — Outbound network request in src/index.ts
  • network request — Outbound network request in test/mcpu.test.ts
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

MCP control surface for a Cloudflare Artifacts repo. Bootstrap from GitHub, then edit, commit, and deploy on Cloudflare.

README.md

mcpu

Deploy to Cloudflare

mcpu is an MCP control surface for a Cloudflare Artifacts repo. GitHub is only the bootstrap seed. After first deploy, source commits live in Cloudflare Artifacts and deploy back to Cloudflare Workers.

Start here

1. Deploy to your Cloudflare account

Click Deploy to Cloudflare above and finish the deploy flow.

When it completes, copy your Worker URL. It will look like:

https://mcpu.<your-subdomain>.workers.dev

If you deploy with workers_dev = false, use the route or custom domain you configured instead.

2. Protect /mcp

Before adding deploy-capable secrets, protect /mcp with Cloudflare Access or an equivalent auth layer. Do not expose a public MCP endpoint with ARTIFACTS_TOKEN or CLOUDFLARE_API_TOKEN configured.

3. Add secrets for the Artifact loop

mcpu needs an Artifacts Git remote and token before repo.commit can push source to Cloudflare Artifacts.

Set these Worker secrets/vars in your account:

ARTIFACTS_REMOTE=https://<account-id>.artifacts.cloudflare.net/git/default/mcpu.git
ARTIFACTS_TOKEN=art_v1_...
ARTIFACTS_BRANCH=main
MCPU_SCRIPT_NAME=mcpu
CLOUDFLARE_ACCOUNT_ID=<account-id>
CLOUDFLARE_API_TOKEN=<token that can edit Workers>
IMPRINT_DIR=<checkout that holds .imprint/releases>

repo.deploy reads IMPRINT_DIR/.imprint/releases/<commit>.json and refuses unless proof.verified is true. Missing file or verified: false is a failed deploy. GitHub is not used after bootstrap.

4. Add mcpu to your MCP config

Use your deployed Worker URL plus /mcp.

{
  "mcpServers": {
    "mcpu": {
      "url": "https://mcpu.<your-subdomain>.workers.dev/mcp"
    }
  }
}

For a custom domain:

{
  "mcpServers": {
    "mcpu": {
      "url": "https://mcpu.example.com/mcp"
    }
  }
}

5. Try it

Ask your agent:

Connect to mcpu. Run repo.status, list files, read worker.js, change the homepage text, show the diff, commit it, and deploy it.

Expected loop:

repo.write, repo.diff, repo.commit (Artifacts),
then repo.deploy only if .imprint/releases/<commit>.json has proof.verified true

Local development

Run the seed locally:

npm install
npm test
npm run dev -- --port 8799

Then connect to:

http://localhost:8799/mcp

Local MCP config:

{
  "mcpServers": {
    "mcpu-local": {
      "url": "http://localhost:8799/mcp"
    }
  }
}

Reference

Tools:

  • repo.status
  • repo.ls
  • repo.read
  • repo.write
  • repo.diff
  • repo.commit
  • repo.deploy
  • repo.history

State:

  • draft - mutable working tree
  • artifact - immutable source commit in Cloudflare Artifacts
  • deployment - Worker version deployed from an Artifact

Explanation

GitHub gets you to zero. Cloudflare owns everything after.

repo.commit writes a git commit and pushes it to Artifacts. In a Worker it
uses an in-memory filesystem. In Node it uses a temp directory. It does not
need a browser.

rememberCommit exists only for tests. Do not use it in production.

Deploy still requires IMPRINT_DIR and a verified release for that commit.

Yorumlar (0)

Sonuc bulunamadi