Back
API & MCP

MCP Integration

Connect VULK to Claude, Claude Code, Cursor, Windsurf, or any MCP-compatible AI client, by signing in or with an API key.

MCP Integration

MCP (the Model Context Protocol) lets an AI assistant work with your VULK account. There are two ways to connect, and they do different things:

Sign in (remote connector)API key (npm package)
How you connectAdd one address to your assistant, sign in to VULK, press Allow accessRun npx -y vulk-mcp-server with an API key
What the assistant can doList and read your projects, see your plan, credits and usage, create a project or send the next instruction to one (this spends credits), read the progress of a request and stop itCreate, edit, deploy and inspect projects
PlansAny VULK account. Building spends the credits of your plan; reading project files needs a plan with source exportTeam, Max, Business, or a custom enterprise plan
Ending the connectionRemove the app in Settings › Integrations › Connected appsDelete the API key

Connect with a sign-in

Use this when you want your assistant to work with your VULK projects without handling an API key. Nothing is installed: your assistant talks to VULK over HTTPS, and you approve the connection once, in VULK.

The address to add is:

https://app.vulk.dev/mcp

Claude (claude.ai and the desktop app)

  1. Open Customize, then Connectors, choose + Add, then Add custom connector.
  2. Enter a name (for example VULK) and the address https://app.vulk.dev/mcp, then choose Continue.
  3. Claude reads how VULK signs people in and fills the authentication settings itself (Sign in now and Register automatically). Leave them as they are and choose Add.
  4. On the connector's page, choose Connect. Claude opens VULK in your browser. Sign in if VULK asks you to, then choose Allow access.
  5. In a conversation, switch the connector on from the + menu, under Connectors. Claude asks you to approve each use of a VULK tool before it runs.

On Team and Enterprise plans an owner first adds the connector under Organization settings, Connectors (Add, then Custom, then Web); each member then connects from Customize, Connectors.

Claude Code

claude mcp add --transport http vulk https://app.vulk.dev/mcp

Then run /mcp inside Claude Code, choose vulk, and sign in when it opens VULK in your browser.

Other assistants

Add the same address as a remote (HTTP) MCP server in any client that supports remote servers with sign-in. The client opens VULK in your browser and asks for your approval.

What you approve

VULK opens a screen titled Connect {app} to your VULK account?, where the app is the assistant you are connecting. It lists exactly what the app will be able to do. For a connection that can build, that is:

  • Read your projects: their names, status and files
  • Create and change your projects using your VULK plan and credits; stop running operations
  • Read your plan, credits and usage

An app that asks only to read gets only the read lines, and the screen then says: This connection is read-only. It cannot create, change, publish or delete anything. Choose Allow access to connect, or Cancel. After you choose, VULK sends you back to the app.

The name on that screen is the one the app gave itself; VULK does not check it. Only approve a connection you have just started yourself.

What the assistant can do

The sign-in connector gives your assistant nine tools. Six of them only read; three can start, continue or stop work.

ToolWhat it does
list_projectsLists your projects, newest first: the id to use with the other tools, the title, the kind and when it was created. Up to 50 at a time.
get_projectDescribes one project: its title, how many versions were built, how many files the latest holds, the status of the last version, and the preview and live addresses when they exist.
get_project_filesLists the files of the project's delivered version (path and size), or returns the text of one file. Large files are cut at 200,000 characters, and the answer says so. Source export is part of every paid plan; an account without one is told so.
get_usageReports your plan, its status and renewal date, your credit balance, and how much was generated in the last 30 days.
open_billingReturns the link to your billing and invoices page. Nothing is bought or changed by calling it.
get_operationReads the saved state of one create or continue request: its status, the replies or questions VULK has for you, and the preview and editor links. Reading never starts, retries or charges anything.
create_projectStarts building a web app or website from your brief. It uses the same generation engine, plan and credits as the editor, and it can provision a project backend or generate media. It returns a receipt, not a finished build.
continue_projectSends the next instruction to a project you already have, with the same engine, plan and credits. It also returns a receipt.
stop_operationAsks VULK to stop one request. Work a provider has already accepted can still use credits. Asking twice is safe.

There is no tool to publish a site, buy credits, change your plan or delete a project.

An app that was connected with read access only is shown the read tools and nothing else. If it tries a build tool anyway, it is told that the connection was not granted that permission.

How building works

Creating a project is not instant, so it is split in two steps.

  1. You ask your assistant for something, for example "Create a VULK landing page for my bakery." The assistant calls create_project with your brief (up to 8,000 characters) and a request_id, a fresh UUID it makes up for this one action.
  2. VULK checks your plan and credits and, if it accepts the request, answers with a receipt: the request_id, the project id and a link to the editor. The receipt means the build has started. It does not mean the project is finished.
  3. The assistant calls get_operation with the same request_id to read progress, any questions VULK asks you, and the preview and editor links. It repeats this, with pauses, until the request is done.
  4. To change the project afterwards, the assistant calls continue_project with the project id and the next instruction, and follows it with get_operation in the same way.
  5. To cancel, the assistant calls stop_operation with the request_id.

The project is a normal VULK project: it shows up in your account and you can open it in the editor at any time. Building publishes nothing; publishing stays in the editor.

If a response gets lost, the assistant retries with the same request_id and the same arguments, and VULK treats that as the same request. A new request_id is a new request.

Credits

create_project and continue_project are paid generation actions. They use credits from your plan exactly as the same request typed into the editor would. They never buy credits and never change your plan. When your plan or credit balance cannot cover a request, VULK refuses it and the assistant is told so; check Settings › Billing and ask again. Stopping a request does not undo work a provider had already accepted, and that work can still use credits.

How long a connection lasts

Your assistant renews its access on its own. A connection lasts 90 days at most, however often it is renewed; after that you approve it again. You can hold up to 50 connected apps and 20 unanswered approval screens at a time.

Ending a connection

Open Settings › Integrations › Connected apps, find the app and choose Remove. It loses access straight away.

Run the npm package with an API key

Everything from here on is about the vulk-mcp-server npm package, which uses an API key instead of a sign-in and can create, edit and deploy projects. It is a separate server from the sign-in connector above: a few tool names (list_projects, get_project, get_project_files, get_usage, create_project) appear in both, but the two are not interchangeable.

Prerequisites

  • A VULK account on Team, Max, Business, or a custom enterprise plan
  • An API key from vulk.dev/settings/api-keys
  • Node.js 18+ installed

Installation

The MCP server runs via npx — no global install required:

npx -y vulk-mcp-server

Configuration

Add the following to your editor's MCP configuration:

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "vulk": {
      "command": "npx",
      "args": ["-y", "vulk-mcp-server"],
      "env": {
        "VULK_API_KEY": "vk_sk_your_key_here"
      }
    }
  }
}

Cursor

Add to your Cursor MCP settings:

{
  "mcpServers": {
    "vulk": {
      "command": "npx",
      "args": ["-y", "vulk-mcp-server"],
      "env": {
        "VULK_API_KEY": "vk_sk_your_key_here"
      }
    }
  }
}

Windsurf

{
  "mcpServers": {
    "vulk": {
      "command": "npx",
      "args": ["-y", "vulk-mcp-server"],
      "env": {
        "VULK_API_KEY": "vk_sk_your_key_here"
      }
    }
  }
}

VS Code

Add to your VS Code settings:

{
  "mcp": {
    "servers": {
      "vulk": {
        "command": "npx",
        "args": ["-y", "vulk-mcp-server"],
        "env": {
          "VULK_API_KEY": "vk_sk_your_key_here"
        }
      }
    }
  }
}

Getting Your API Key

  1. Go to vulk.dev/settings/api-keys
  2. Click Create API Key
  3. Copy the key (it starts with vk_sk_)
  4. Add it as VULK_API_KEY in your MCP config

Your API key is shown only once when created. Store it securely. If you lose it, create a new one.

Tools in the npm package

The package provides these tools:

ToolDescription
create_visual_briefTurn an idea, a reference, a URL, a Figma file, a screenshot or a moodboard into a brief VULK can build from. Read-only.
create_projectGenerate a general VULK project from a prompt
generate_immersive_siteGenerate a 3D/WebGL, cinematic, video-rich or moodboard-driven project. Creates a project and may use credits.
edit_projectApply a change, described in plain language, to an existing project
list_projectsList the projects on your account
get_projectGet a project's details with its preview and editor addresses
get_project_filesGet a project's file list. File content is opt-in, redacted and size-limited.
deploy_projectDeploy a project to a live address
list_modelsList the models available to your account
get_usageCheck your credits, usage and rate limits
subscribeReturn the VULK pricing link

Older short names (generate, edit, list, get, files, deploy, models, usage) still work for existing setups.

Usage Examples

Once configured, you can use natural language in your AI editor:

  • "Create a VULK project for a task management app with auth and a dashboard"
  • "List my VULK projects"
  • "Deploy my latest VULK project" (npm package)
  • "Show me the files in my latest VULK project"
  • "How many credits do I have left?"
  • "Continue my VULK project: add a pricing section under the hero"

Authentication with an API key

Every request of the npm package is authenticated using your VULK_API_KEY. The key is sent as a Bearer token to the VULK API. Requests without a valid key are rejected with a 401 error.

Rate Limits

MCP requests follow the same rate limits as the VULK API. See API Overview for details.

Troubleshooting

"This request is no longer valid" (sign-in)

The approval screen expired, was already answered, or was opened with a different VULK account. Go back to your assistant and start the connection again.

"Connection limit reached" (sign-in)

Your VULK account already has the maximum number of connected apps (50) or unanswered approval screens (20). Remove an app you no longer use, or wait a few minutes, then start the connection again from your assistant.

Your assistant asks you to sign in again (sign-in)

A connection lasts 90 days at most, and ends sooner if you remove the app. Approve it again from your assistant.

"This connection was not granted the projects.write permission" (sign-in)

The app was connected with read access only. Remove it in Settings › Integrations › Connected apps, then connect it again and approve the screen that lists Create and change your projects.

"VULK could not admit this operation … (HTTP 402)" (sign-in)

Your plan or credit balance cannot cover the request. Check Settings › Billing, then ask your assistant again.

A build never shows a receipt (sign-in)

If the answer says unconfirmed, VULK had not confirmed the request within about 20 seconds. Ask your assistant to read it with get_operation. If there is still no receipt, it should retry with the same request_id and the same arguments, not start another request.

"VULK_API_KEY not set"

Make sure the env block in your MCP config includes VULK_API_KEY with a valid key.

"Unauthorized" errors

Your API key may have expired or been revoked. Create a new one at vulk.dev/settings/api-keys.

MCP server not connecting

Ensure Node.js 18+ is installed and npx is available in your PATH. Try running npx -y vulk-mcp-server in a terminal to verify.

npm Package

The MCP server is published as vulk-mcp-server on npm.

On this page

VULK Support

Online

Hi! How can I help you today?

Popular topics

AI support • support.vulk.dev