docs / quickstart

Quickstart

Sign up, mint a key, wire krabs into your agent of choice, run your first call. About five minutes.

Install

krabs ships from source today. Homebrew + npm distribution are wired but unpublished (see install · Homebrew · npm). Clone and build:

git clone https://github.com/augusto-devingcc/krabs.git
cd krabs
pnpm install
pnpm setup

pnpm setup mints an API key against a local SQLite DB and saves it to ~/.config/krabs/config.json. Your CLI is now authenticated against your local API at http://localhost:3000.

See the install guide for symlinking the CLI to your PATH, uninstall, and the distribution roadmap.

free and open source
krabs is MIT-licensed and self-hosted. There are no plans, quotas, or metering — you run it on your own box.

Mint a key

pnpm setup mints your first bootstrap key automatically. For anything else — an agent, a script, a deployed worker — create a scoped key from the CLI with krabs key create.

Tokens look like this:

krabs_sk_4n7q2vh3jpz9w8x1y0c5b6d4f8g2k1m3

The full token is shown once at creation. We store only a hash. If you lose it, rotate.

Wire Claude Desktop

Open ~/Library/Application Support/Claude/claude_desktop_config.json and add the krabs server under mcpServers.

{
  "mcpServers": {
    "krabs": {
      "transport": "https",
      "url": "https://mcp.krabs.dev",
      "auth": {
        "type": "bearer",
        "token": "krabs_sk_…"
      }
    }
  }
}

Restart Claude Desktop. The krabs tools appear in the tool drawer; the agent can now reach every operation listed in the contract.

Your first call

Three transports, one operation. Each of the following creates the same invoice.

MCP — ask the agent in natural language; the host invokes the tool:

tool: invoice.create
args: {
  "counterparty": "Acme Inc",
  "amount": 120000,
  "currency": "USD"
}

CLI:

krabs invoice create \
  --counterparty "Acme Inc" \
  --amount 120000 \
  --currency USD

HTTP:

curl https://api.krabs.dev/v1/invoice.create \
  -H "Authorization: Bearer $KRABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "counterparty": "Acme Inc",
    "amount": 120000,
    "currency": "USD"
  }'

All three return the same JSON: an invoice object with a stable id.

Next steps

Edit this page on GitHub →last updated 2026-05-17 · v0.5.0