World Monitor
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
Provision and manage Krova Cloud Cubes — Firecracker microVMs with root access and no public IP.
选择你使用的 AI 应用,然后复制设置。
通过 3/3 项检查 · 在你的电脑上运行
第一步:你用哪个 AI?
选择你用的应用,步骤会显示在下方。
SettingsDeveloperEdit Config
{
"mcpServers": {
"krova": {
"command": "npx",
"args": [
"-y",
"@krovacloud/mcp"
],
"env": {
"KROVA_API_KEY": "your-value",
"KROVA_SPACE_ID": "your-value",
"KROVA_BASE_URL": "your-value"
}
}
}
}只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人
用 Cloud MCP 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude 说正在使用 Cloud MCP,或回答中出现 Cloud MCP 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
ChatGPT 暂时无法连接 Cloud MCP
Cloud MCP 需要安装在你的电脑上,而 ChatGPT 只能连接在网上运行的服务器
A · 使用能连接 Cloud MCP 的应用
B · 其他 类中能连接 ChatGPT 的其他服务器
从同类中使用较多的里挑选,仅限用地址即可连接、无需密钥的
可连接 Claude Code,但需要先准备
需要 Cloud MCP 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)
Mac:按 Command+空格,输入 Terminal · Windows:打开 PowerShell
claude mcp add --scope user krova --env KROVA_API_KEY=your-value --env KROVA_SPACE_ID=your-value --env KROVA_BASE_URL=your-value -- npx -y @krovacloud/mcp按 Enter 前,把“your-value”改成你的密钥
只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人
应能看到 Cloud MCP 在列表中并显示已连接
用 Cloud MCP 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude Code 说正在使用 Cloud MCP,或回答中出现 Cloud MCP 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
可连接 Cursor,但需要先准备
需要 Cloud MCP 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)
在 Cloud MCP 的设置中,KROVA_API_KEY, KROVA_SPACE_ID, KROVA_BASE_URL 还是空的,填入你的密钥并保存
只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人
用 Cloud MCP 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Cursor 说正在使用 Cloud MCP,或回答中出现 Cloud MCP 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Cursor 帮助页面核实 · 你的界面可能因版本略有不同
可连接 VS Code,但需要先准备
需要 Cloud MCP 的密钥(在开发者网站创建) · 需要先在电脑上安装 Node.js(只需一次)
在 Cloud MCP 的设置中,KROVA_API_KEY, KROVA_SPACE_ID, KROVA_BASE_URL 还是空的,填入你的密钥并保存
只把密钥粘贴到应用的输入框里,不要粘贴到聊天中或发给任何人
用 Cloud MCP 告诉我你能帮我做什么,然后做一件给我看✓ 如果 VS Code 说正在使用 Cloud MCP,或回答中出现 Cloud MCP 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 VS Code 帮助页面核实 · 你的界面可能因版本略有不同
Claude Code
claude mcp add --scope user krova --env KROVA_API_KEY=your-value --env KROVA_SPACE_ID=your-value --env KROVA_BASE_URL=your-value -- npx -y @krovacloud/mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"krova": {
"command": "npx",
"args": [
"-y",
"@krovacloud/mcp"
],
"env": {
"KROVA_API_KEY": "your-value",
"KROVA_SPACE_ID": "your-value",
"KROVA_BASE_URL": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"krova": {
"command": "npx",
"args": [
"-y",
"@krovacloud/mcp"
],
"env": {
"KROVA_API_KEY": "your-value",
"KROVA_SPACE_ID": "your-value",
"KROVA_BASE_URL": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"krova": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@krovacloud/mcp"
],
"env": {
"KROVA_API_KEY": "your-value",
"KROVA_SPACE_ID": "your-value",
"KROVA_BASE_URL": "your-value"
}
}
}
}KROVA_API_KEY 机密 必填 envKROVA_SPACE_ID envKROVA_BASE_URL env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。
在你的电脑上运行,适用于
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月12日
注册名称已通过域名 krova.cloud 验证(注册中心会核实域名所有权)
代码最后更新于昨天
使用 MIT
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
提问、分享技巧或报告无法使用。按“有帮助”数量排序。
还没有评价
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:KROVA_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于昨天,最新版本(0.3.19)于9天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:World Monitor, Claude Flow, Windmill
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Real-time global intelligence on conflict, markets, energy, trade, shipping and cyber. 104 tools.
AI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
MCP server for [Krova Cloud](https://krova.cloud) — let Claude, Cursor, and any MCP client provision and manage Cubes (Firecracker microVMs) in natural language.
A Model Context Protocol server that exposes Krova Cloud as a set of tools an AI agent can call. Ask Claude to "spin up a 2-vCPU Ubuntu cube in us", "list my running cubes", or "power off the idle ones", and it drives the Krova Cloud API for you.
It's a thin, fully typed bridge over the official @krovacloud/sdk: each Krova Cloud operation is an MCP tool with a validated input schema, authenticated with your API key.
The fastest way to try it — no install, no clone:
KROVA_API_KEY=kro_... npx -y @krovacloud/mcp
The server speaks MCP over stdio, so you normally don't run it by hand — your MCP client launches it with that command. Pick your client below.
Krova Cloud also hosts this server at https://krova.cloud/mcp over Streamable HTTP. It exposes the same tools as this package, so there is nothing to install.
Add a custom connector with the URL https://krova.cloud/mcp. Sign in to Krova, pick a Space, and approve the connection. Access is limited to that Space, with your permissions in it.
Setup guides: Claude and ChatGPT.
With an API key:
claude mcp add --transport http krova https://krova.cloud/mcp --header "Authorization: Bearer kro_..."
Leave out --header to sign in with OAuth instead.
Send your API key in an Authorization: Bearer kro_... header on each request to https://krova.cloud/mcp.
The local stdio setup below is unchanged and still supported.
All clients use the same launch command (npx -y @krovacloud/mcp) and the same environment variables. Set at least KROVA_API_KEY; set KROVA_SPACE_ID too if you want the Cube tools to default to one Space.
Edit claude_desktop_config.json (Settings → Developer → Edit Config, or ~/Library/Application Support/Claude/claude_desktop_config.json on macOS / %APPDATA%\Claude\claude_desktop_config.json on Windows) and add:
{
"mcpServers": { "krova": { "command": "npx", "args": ["-y", "@krovacloud/mcp"], "env": { "KROVA_API_KEY": "kro_your_api_key_here", "KROVA_SPACE_ID": "space_optional_default" } } } }
Restart Claude Desktop. The Krova Cloud tools appear under the tools (🔨) menu.
Add the server with one command:
claude mcp add krova \
--env KROVA_API_KEY=kro_your_api_key_here \ --env KROVA_SPACE_ID=space_optional_default \ -- npx -y @krovacloud/mcp
Or add it to .mcp.json in your project root (checked in, shared with your team):
{
"mcpServers": { "krova": { "command": "npx", "args": ["-y", "@krovacloud/mcp"], "env": { "KROVA_API_KEY": "kro_your_api_key_here", "KROVA_SPACE_ID": "space_optional_default" } } } }
Verify with claude mcp list.
Create .cursor/mcp.json in your project (or ~/.cursor/mcp.json for all projects):
{
"mcpServers": { "krova": { "command": "npx", "args": ["-y", "@krovacloud/mcp"], "env": { "KROVA_API_KEY": "kro_your_api_key_here", "KROVA_SPACE_ID": "space_optional_default" } } } }
Then enable the krova server in Cursor Settings → MCP.
Any client that speaks MCP over stdio works — launch npx -y @krovacloud/mcp with the environment variables set. The config shape above is portable across VS Code (Copilot), Windsurf, Zed, and custom agents built on the MCP SDK.
The server is configured entirely through environment variables:
| Variable | Required | Description |
|---|---|---|
KROVA_API_KEY | yes | Your Krova Cloud API key (kro_...). Scoped to a Space; inherits the permissions of the membership that created it. |
KROVA_SPACE_ID | no | A default Space id, so Cube tools can omit spaceId. |
KROVA_BASE_URL | no | Override the API base URL (defaults to the Krova Cloud production API). |
All 37 tools, their parameters, and what they do. Every tool's spaceId is optional when KROVA_SPACE_ID is set.
| Tool | Parameters | Description |
|---|---|---|
list_cubes | spaceId? | List all Cubes (Firecracker microVMs) in a Space. |
get_cube | spaceId?, cubeId | Get details for a single Cube by id. |
get_cube_ssh | spaceId?, cubeId | Host, port, login user and pinned host keys for SSH. host is the Cube's own stable SSH hostname — not the server's IP — and survives migration to another server; it falls back to the server's public IPv4 only when the Cube has no DNS record yet. Call this rather than guessing a username — it is ubuntu/debian on newer Cubes and root on older ones, and cannot be derived from the image id. |
create_cube | spaceId?, name, image, vcpu, ramGb, diskGb, sshPublicKey, region?, userData? | Provision a new Cube. Asynchronous — the returned Cube starts in a pending state. Billable. Destructive. |
power_off_cube | spaceId?, cubeId | Power off a running Cube (releases compute + host RAM, keeps disk). Asynchronous. |
wake_cube | spaceId?, cubeId | Start a stopped Cube. Asynchronous. |
restart_cube | spaceId?, cubeId | Restart a running Cube. This is a COLD restart — the Cube boots against the host's current kernel, so it is the only way to pick up a refreshed guest kernel (a reboot issued inside the Cube cannot, and reports no error). Disk state is preserved. Asynchronous; a concurrent restart is rejected, not queued. |
delete_cube | spaceId?, cubeId | Delete a Cube. Asynchronous — deletion is enqueued. Destructive. |
protect_cube | spaceId?, cubeId | Turn on termination protection: delete_cube is refused with 409 until it is turned off. Power-off, wake, restart, snapshot and restore stay allowed. Idempotent. |
unprotect_cube | spaceId?, cubeId | Turn termination protection off, so delete_cube works again. Idempotent. |
list_regions | — | List regions with available capacity. |
list_images | — | List available OS images for new Cubes. |
get_pricing | — | Get per-resource hourly rates and volume pricing tiers. |
list_domains | spaceId?, cubeId | List the custom domains attached to a Cube. |
get_domain_records | spaceId?, cubeId, mappingId | The DNS records a domain needs, each checked against live DNS — missing means not published yet (expected before the user creates them, never an error), and summary.complete turns true once every record is found. Performs real DNS lookups; rate limited. |
create_domain | spaceId?, cubeId, domain, port, originScheme?, proxyProtocol?, confirmMixedProxyProtocol? | Attach a custom domain to a Cube. Returns the domain and the DNS records to publish — relay them verbatim. |
update_domain | spaceId?, cubeId, mappingId, originScheme?, proxyProtocol?, confirmMixedProxyProtocol? | Change a domain's proxy settings: the origin scheme, and the PROXY protocol header (v1, v2 or off) that names the visitor on each connection to the Cube. Pass at least one; what you leave out keeps its value. |
delete_domain | spaceId?, cubeId, mappingId | Detach a custom domain. Destructive. |
list_snapshots | spaceId?, cubeId | List a Cube's disk snapshots. |
create_snapshot | spaceId?, cubeId, name? | Snapshot a Cube's disk. Asynchronous. |
delete_snapshot | spaceId?, cubeId, snapshotId | Delete a snapshot. Destructive. |
restore_cube | spaceId?, cubeId, snapshotId | Restore a Cube's disk from a snapshot — replaces the disk. Destructive. |
list_backups | spaceId? | List the space's backups, newest first. sharedFromBackupId is set on a copy another space shared with this one. |
get_backup | spaceId?, backupId | Get one backup. |
share_backup | spaceId?, backupId, destinationSpaceId | Offer a copy of a backup to another space. Nothing is copied until the destination accepts within 48 hours; the copy is then its own and billed to it. Destructive (it hands a copy of the disk to another space). |
list_backup_shares | spaceId? | Pending shares into (incoming) and out of (outgoing) the space. |
accept_backup_share | spaceId?, shareId | Accept a backup shared with the space. The space pays backup storage for its copy from now. Destructive (it adds a bill). |
decline_backup_share | spaceId?, shareId | Decline a backup shared with the space. Nothing is copied. |
cancel_backup_share | spaceId?, shareId | Withdraw a pending share the space offered. |
list_tcp_mappings | spaceId?, cubeId | List a Cube's TCP port mappings. |
create_tcp_mapping | spaceId?, cubeId, cubePort, whitelistedIps? | Expose a Cube TCP port on the host. whitelistIps is still accepted as a deprecated alias. |
delete_tcp_mapping | spaceId?, cubeId, mappingId | Remove a TCP port mapping. Destructive. |
list_webhooks | spaceId? | List the webhook endpoints in the space, with their events and whether each is enabled. |
get_webhook | spaceId?, endpointId | Get one webhook endpoint. The signing secret is never returned here. |
create_webhook | spaceId?, url, events, description? | Create a webhook endpoint. The signing secret is returned only in this response; persist it immediately. |
delete_webhook | spaceId?, endpointId | Delete a webhook endpoint and its delivery history. Destructive. |
list_webhook_deliveries | spaceId?, endpointId, limit? | The last 30 days of delivery attempts for an endpoint, newest first (max 100). |
Every tool advertises MCP annotations so your client can treat them appropriately: the sixteen read tools (list_cubes, get_cube, get_cube_ssh, list_regions, list_images, get_pricing, list_domains, get_domain_records, list_snapshots, list_backups, get_backup, list_backup_shares, list_tcp_mappings, list_webhooks, get_webhook, list_webhook_deliveries) are marked read-only, while the nine destructive tools (create_cube, delete_cube, delete_domain, delete_snapshot, restore_cube, share_backup, accept_backup_share, delete_tcp_mapping, delete_webhook) are marked destructive. update_domain mutates but is idempotent and reversible, so it is not. Most MCP clients surface a confirmation prompt before running a destructive tool — keep that confirmation on, since an LLM driven by untrusted content could be induced to call one.
The backup tools need the Backups permissions on the API key's member: View Backups to read, Manage Backups to share and answer shares. There is deliberately no download tool: the download link fetches the whole disk with no further authentication, and a model's conversation is the wrong place for it. Use krova backups download from the CLI.
create_cube parameters| Param | Type | Notes |
|---|---|---|
name | string | Human-readable Cube name. |
| image | string | OS image slug — s