Korve × Cursor

Ship what Cursor builds, from the same window.

Cursor's agent already edits the repository. Korve adds the deploy side: one JSON entry connects the platform over OAuth, the native CLI runs in the integrated terminal, and Korve's Agent Skills load from the project-level .agents/skills directory Cursor supports.

Korve is a paid-only cloud for agent-built applications. Cursor deploys a repository to a stable *.korve.app URL and provisions only the managed resources the app declares — Postgres, object storage, caches, queues, cron jobs, budgets, and custom domains — through one typed operation spec shared by the API, dashboard, native CLI, MCP server, and manifest. Pricing is pure usage with a $5/month minimum and no free tier.

Written by winterrx, founder and builder of Korve · Last updated July 29, 2026.

The setup

How do you connect Cursor to Korve?

Cursor keeps remote MCP servers in .cursor/mcp.json for the repository, or ~/.cursor/mcp.json for every project you open. Korve's endpoint is streamable HTTP and negotiates OAuth on the first connection.

Approval happens in the browser Cursor already has open: choose the organization, read the exact operation scopes, allow or deny. Only the URL is written to disk — the tokens are short-lived, the refresh token rotates, and the grant can be revoked from organization settings without touching the file.

.cursor/mcp.json
{
"mcpServers": {
"korve": {
"url": "https://mcp.korve.dev/mcp"
}
}
}
Two tools and a terminal

What can Cursor's agent reach once it is connected?

Korve does not publish a tool per endpoint. It publishes the contract and a sandbox to call it from, which keeps the tool list short in an editor that is already juggling context.

search — the contract on demand

Ask for a query, a resource, or nothing at all. Each match comes back with the operation id, method, path, auth, minimum role, risk, approval requirement, parameters, and request body schema, so the agent stops guessing at payloads.

MCP Code Mode

execute — bounded JavaScript

execute runs JavaScript against a bounded korve.request({ method, path, query, body }) client — one call shape, not a method per operation. The generated client and your credentials stay outside the isolate; only the request and its JSON result cross the boundary. The sandbox has no filesystem, environment, or direct network access, and a request must match a public operation before it is dispatched.

Safe automation

Skills Cursor discovers natively

korve link installs the project skills under .agents/skills, the project-level Agent Skills directory Cursor supports, and mirrors the same three trees into .claude/skills. The agent can discover deployment, CLI, debugging, and platform procedures on demand instead of treating SKILL.md as a rule file.

Cursor Agent Skills

The CLI in the integrated terminal

For work you would rather read as output than as tool results, korve is a single native binary: deploy, pull the last 50 log lines, diagnose a red build. Background agents that have no browser sign in with korve login --device.

CLI reference
cursor — integrated terminal
$ curl -fsSL https://korve.dev/install.sh | sh
$ korve login
→ approve in browser: organization, role, exact scopes
$ korve deploy --project demo-app
✓ Live at https://demo-app.korve.app
a background agent with no browser
$ korve login --device
→ open https://korve.dev/authorize/device?code=WDJB-MJHT
✓ CLI signed in after approval on another device
what korve link writes
AGENTS.md
<!-- KORVE:START --> ← replaced in place
<!-- KORVE:END --> ← your text is untouched
.agents/skills/
korve/SKILL.md
korve-cli/SKILL.md
korve-debug/SKILL.md
.claude/skills/
korve/SKILL.md
korve-cli/SKILL.md
korve-debug/SKILL.md
.gitignore
# Korve
.env.korve.local
Project context

Use AGENTS.md for standing guidance and .agents/skills for workflows

korve link installs three embedded skills under .agents/skills — and the same trees under .claude/skills — then renders a marked AGENTS.md block with the project slug, live URL, and post-deploy checks.

Cursor discovers each SKILL.md from its own subfolder in .agents/skills and loads it when relevant. The generated AGENTS.md section is the durable project-level operating contract. Re-running korve link refreshes only the Korve-owned skills and marked block, so other skills and your surrounding instructions remain untouched.

Why it holds up

The parts an editor agent usually gets wrong

.cursor/mcp.json is normally committed, so the entry Korve asks for holds a URL and nothing else — and the rest of what the repository carries is meant to be shared too.

The config holds a URL, not a secret

.cursor/mcp.json is usually committed. Korve's entry is just the endpoint, because authorization happens through OAuth at connection time and the tokens live outside the repository.

Everyone's editor starts the same

AGENTS.md and the skill directories are meant to be committed — the only line Korve adds to .gitignore is .env.korve.local. A teammate who clones the repository opens Cursor with the same instructions you have.

A preview idles, it is not suspended

Pull-request preview runtime compute is scale-to-zero, so it idles to $0 and cold-starts on the reviewer's first request. Opt-in preview databases, storage, logs, and other declared stateful resources keep their published meters. Korve has no free tier or inactivity pausing, so the URL keeps resolving however long the review sits.

Two tools, and nothing off-contract

The MCP server adds two entries to a context window Cursor is already filling, not one per endpoint. Every request execute dispatches must match a public operation in the published spec first, so an agent cannot reach a surface the contract does not expose.

The backend decision

How to choose a backend for Cursor

Decide by what has to be true after the code is written: a stable URL, a database sized and recovered on its own terms, and instructions a teammate inherits by cloning the repository.

DecisionKorve fits whenLook elsewhere when
From edit to productionCursor should deploy and verify a managed app from the same project, then inspect logs or a failed build without leaving its agent loop — including from a background agent with no browser, which signs in with korve login --device.The editor only writes code and a separate release team or existing pipeline owns every production operation.
Shared agent contextThe team wants portable project skills in .agents/skills plus an AGENTS.md contract that travels with the repository.Instructions are intentionally editor-specific, centrally managed outside the repo, or the team does not want agents operating infrastructure.

Choose another backend if Cursor is only a code editor in your release process, if the project needs nothing but static hosting or one standalone primitive, or if the workload depends on root access, custom kernel behavior, or accelerators. Korve fits when the .cursor/mcp.json a teammate clones is enough to give their agent the same operations yours has.

Where else people look

If you needOn KorveWhere else people look
Static hosting for a client-only siteOverkill — Korve provisions an application control plane, not a CDN drop.A static host; Render and Railway both publish static or hobby options.
A free hobby tierNot offered — paid-only, with a $5/month minimum credited against usage.Render, Railway, and Supabase publish free tiers.
Whole-backend branch and mergeDatabase branches only; they cover one database, not the whole project.InsForge branches the entire backend and merges it back.
Transactional email, vector search, and edge-function catalogsNot shipped as first-party product surfaces. Bring the application dependency you prefer.InsForge and Supabase ship broader backend component catalogs.
Managed Postgres with 14-day point-in-time recovery and rolling HA resizesIncluded in every database SKU; high availability adds two replicas.Nothing to move for — this is the case Korve is built for.

Korve is pure usage against a public rate card — no seats, no per-user meter, no free tier — with a $5/month minimum credited against usage. The two published worked examples are a Hobby full-stack app at $24.59/month and a Production API at $143.98/month. See the full rate card.

FAQ

Questions, answered

What goes in .cursor/mcp.json for Korve?
Only the URL https://mcp.korve.dev/mcp under mcpServers.korve. The endpoint is streamable HTTP and negotiates OAuth on the first connection, so no token or API key is written to a file that is normally committed.
Does the MCP execute tool give the agent a method per operation?
No. The isolate gets one bounded facade — korve.request({ method, path, query, body }) — and nothing else. The generated client and your credentials stay host-side; only the request and its JSON result cross the boundary, and every request must match a public operation before it is dispatched.
Where does korve link install project skills?
Into .agents/skills, the project-level Agent Skills directory Cursor discovers, and into .claude/skills. Both are meant to be committed; the only line Korve adds to .gitignore is .env.korve.local.
Do pull-request previews go to sleep?
Preview runtime compute is scale-to-zero, so it idles to $0 and cold-starts on the reviewer's first request. Opt-in preview databases, storage, logs, and other declared stateful resources keep their published meters. The app idles rather than being suspended, and the URL keeps resolving — Korve has no free tier and does not pause projects for inactivity.
Does Korve have a free tier?
No. Korve is paid-only, with a $5/month minimum credited against usage. Nothing provisions before a payment method is on file.

Give your agent a cloud it can operate.

No free tier. No seats. Pay for what you run.