Agentmetal

by agentmetal

343 downloads
Not rated
GitHub

About

Provision, SSH into, run commands on, and manage Linux VPSes from an AI agent. Pay USDC over x402 (Base) or by card over HTTP 402, with a running box in under 60 seconds. No signup, no API key to buy. Includes get_catalog, provision_server, get_server, list_servers, extend_server

Details

Author
agentmetal
Downloads
343
Categories
Cloud Service, Infrastructure, Other, Developer Tools

- 13 tools covering the full server lifecycle.
- Paid tools sign USDC/x402 payments; free tools use plain HTTP.
- Provision a VPS with optional managed SSH key for command execution.
- Run shell commands as root via exec_command (requires managed key).
- Read and manage edge firewall rules from the server or with an account key.
- Claim an account via email and link a wallet for extended capabilities.
- Bounded spend cap: per‑request limit configurable via AGENTMETAL_MAX_USDC.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Agentmetal
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Configure the server in your MCP client (e.g., Claude Code) by adding a mcpServers entry with the command node packages/mcp/src/index.ts. Set the environment variable WALLET_PRIVATE_KEY to an EVM private key holding USDC on Base mainnet, and optionally set AGENTMETAL_MAX_USDC to cap per-request spend. Paid tools require a funded wallet; account‑gated tools require AGENTMETAL_API_KEY.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "agentmetal": {
            "agentmetal": {
                "command": "npx",
                "args": [
                    "-y",
                    "@agentmetal/mcp"
                ],
                "env": {
                    "WALLET_PRIVATE_KEY": "<YOUR_EVM_PRIVATE_KEY_WITH_USDC_ON_BASE>"
                }
            }
        }
    }
}

McpServers

{
    "agentmetal": {
        "command": "npx",
        "args": [
            "-y",
            "@agentmetal/mcp"
        ],
        "env": {
            "WALLET_PRIVATE_KEY": "<YOUR_EVM_PRIVATE_KEY_WITH_USDC_ON_BASE>"
        }
    }
}

@agentmetal/mcp

MCP server that exposes AgentMetal as tools, so an agent can
discover → pay → provision → SSH in → run commands → manage → renew its own Linux
server (VPS / cloud instance) with no human signup. Paid tools sign USDC payments over
x402 v2 (or pay by card); the rest are plain HTTP.

agentmetal/mcp MCP server
CI
smithery badge

Tools

13 tools. Paid tools sign a USDC/x402 payment; account-gated tools need
AGENTMETAL_API_KEY (am_live_…) and ownership of the server.

| Tool | Pays? | Account key? | What it does |
|---|---|---|---|
| get_catalog | — | — | List plans, locations, and add-on pricing (bandwidth, storage). The free discovery hook. |
| provision_server | ✅ USDC | — | Provision a VPS (plan, days, optional ssh_key/via, managed_key) → id, IPv4, SSH. With managed_key:true, a server-side keypair is generated, authorized, and the private key returned once (stored only encrypted) to enable exec_command. |
| get_server | — | — | Status, IPv4, expiry, bandwidth, storage for a server id |
| list_servers | — | — | Fleet for a wallet/account |
| extend_server | ✅ USDC | — | Extend a lease by N days |
| destroy_server | — | ✅ | Destroy now |
| reboot_server | — | ✅ | Soft-reboot an owned server |
| server_logs | — | ✅ | Hypervisor-level diagnostics without logging in: status, recent provider actions, a VNC console URL, and live CPU/disk/net metrics (no text boot log exists provider-side) |
| exec_command | — | ✅ | Run a shell command as root over SSH → exit_code/stdout/stderr. Requires a server provisioned with managed_key:true. Bounded: 1–120 s timeout, 256 KB output cap. |
| get_firewall | — | — | Read a box's edge-firewall rules. Callable from the box itself (source-IP identity) or with an account key. |
| manage_firewall | — | — | Open/close inbound ports on a box's edge firewall (protocol/port/source_ips). From the box itself or with an account key; SSH-lockout guarded. |
| claim_account | — | — | Email a one-time claim code (via AWS SES) |
| verify_claim | — | — | Redeem the code for an account API key. Link a wallet by also passing wallet + wallet_signature. |

Add-ons (currently API endpoints, not yet separate MCP tools): extra storage
($0.01/GB/day, attached block volume) via POST /v1/servers/{id}/storage and extra
bandwidth ($2/TB beyond the 20 TB included) via POST /v1/servers/{id}/bandwidth.

Configuration (env)

| Var | Default | Purpose |
|---|---|---|
| AGENTMETAL_BASE_URL | https://api.agentmetal.dev | API base URL |
| WALLET_PRIVATE_KEY | — | 0x… EVM key used to pay 402s. Omit and paid tools fail with a clear message. |
| AGENTMETAL_NETWORK | eip155:8453 | CAIP-2 network (Base mainnet) |
| AGENTMETAL_MAX_USDC | 50 | Per-request spend cap, in USDC |
| AGENTMETAL_API_KEY | — | am_live_… account key, required for destroy_server / reboot_server / server_logs / exec_command |

Use with Claude Code

// .mcp.json (or claude mcp add)
{
  "mcpServers": {
    "agentmetal": {
      "command": "node",
      "args": ["packages/mcp/src/index.ts"],
      "env": {
        "WALLET_PRIVATE_KEY": "0x…",
        "AGENTMETAL_MAX_USDC": "50"
      }
    }
  }
}

The wallet must hold USDC on Base. The spend cap (AGENTMETAL_MAX_USDC) bounds what any
single tool call can pay; a 402 above the cap is refused before signing.

> Status: client + server are unit-tested and the stdio handshake is verified.
> Live USDC settlement needs a funded wallet + an x402 facilitator that supports the
> exact / eip155:8453 kind.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.