Basis · Developers

Run your fund from Claude

Basis exposes its operating spine as an MCP server and a REST API. Connect Claude in under two minutes: live fund data with citations to the register, and drafts that land in Basis as proposals for a named human to approve. The connection token can read and propose — an approve scope does not exist, in the token or anywhere in the API.

Connect

The setup snippets go into your client's configuration, never into a Claude chat. The connector runs locally via npm (Node.js 18+).

  1. In Basis: Settings → Connect Claude → Create connection token (shown once; revocable any time). The snippets there come pre-filled with your token.
  2. Claude Desktop — Settings → Developer → Edit Config, add this to claude_desktop_config.json, save, then fully quit and reopen Claude:
    {
      "mcpServers": {
        "basis": {
          "command": "npx",
          "args": [
            "-y",
            "@basisnetwork/mcp",
            "--token",
            "bsk_YOUR_TOKEN",
            "--url",
            "https://app.basisnetwork.io"
          ]
        }
      }
    }
  3. Claude Code — paste into a terminal (not a chat):
    claude mcp add basis -- npx -y @basisnetwork/mcp --token bsk_YOUR_TOKEN --url https://app.basisnetwork.io
  4. Or plain REST from anything:
    POST https://app.basisnetwork.io/api/headless/rpc
    Authorization: Bearer bsk_YOUR_TOKEN
    {"tool": "get_fund_overview", "arguments": {}}

Read tools

get_fund_overviewraise progress, holders, pending actions
get_capital_call_statuscalls + per-investor funding lines
get_investor_pipelineonboarding/compliance gates + flags
get_unfunded_commitmentscallable capital per investor
get_distribution_historypayout history with snapshot ids
get_engagement_signalscoming with the CRM module
get_reconciliation_statusregister vs on-chain: GREEN or incidents
search_investorsfind investors by name
get_investor_fileone investor's gates + positions (no PII dossier)

Every read returns citations (register row / snapshot ids) and human deep links — answers with receipts.

Propose tools

propose_capital_calldrafts a call with the exact pro-rata split
propose_distributiondrafts a distribution; allocation binds at the record-date snapshot
propose_investor_emailone-to-one email; the exact text awaits approval
propose_transfer_reviewfiles into the standard transfer queue
propose_report_draftcoming with the Reporting module

Each returns {proposal_id, summary, approval_url}. Nothing executes until a signed-in human approves at the approval_url — every decision is audit-logged with the reviewer's identity.

Webhooks

Subscribe HTTPS endpoints to proposal.created / approved / rejected and reconciliation.incident. Deliveries are HMAC-signed (X-Basis-Signature over timestamp.body) and retried.