Skip to content

Quickstart

Five steps from an empty account to an agent that reads your project without being told anything twice.

  1. 1. Create a project

    A project is the unit of context. Give it a goal and a short description — the AI features and the context pack both lean on them.

  2. 2. Put something in the tree

    Add a handful of notes: the goal, the constraints you keep forgetting, the decisions you already made. Nesting is the point — put reasoning under the decision it explains.

  3. 3. Issue a scoped token

    Tokens start with nbv_ and are shown once. Give the token only the scopes the client needs, and pin it to a single project unless it genuinely needs all of them.

  4. 4. Check the connection

    Before wiring up a client, prove the token works. This lists the tools the server offers you.

    MCP handshake
    curl -s https://nibvine.com/mcp \
      -H "Authorization: Bearer $NIBVINE_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
  5. 5. Connect the client

    Point your AI client at the remote MCP endpoint. The connect page generates the exact config for Claude Code, Cursor, Codex and VS Code; here is the shape of it.

    mcp.json
    {
      "mcpServers": {
        "nibvine": {
          "type": "http",
          "url": "https://nibvine.com/mcp",
          "headers": { "Authorization": "Bearer ${NIBVINE_TOKEN}" }
        }
      }
    }

Prefer plain HTTP?

The same token works against the REST API. A context pack is usually the one call an agent needs.

Fetch a context pack
curl -s "https://nibvine.com/api/projects/1/context-pack/?profile=default" \
  -H "Authorization: Bearer $NIBVINE_TOKEN"

A standard DRF token works too, sent as Authorization: Token <key>. Scoped nbv_ tokens are the better choice for anything you hand to an agent.

Letting an agent write

Writes are deliberate. The tool creates a preview, you look at it, and a second call commits it.

1. Preview

Call a preview_ tool. Nothing changes yet; you get an action id and a description of the change.

2. Review

The preview expires on its own if nobody acts on it, so an abandoned plan never lands later by accident.

3. Commit

commit_write_action applies it in one transaction and records it in the project history as an external change.