FeaturesSolutionsEnterprisePricing
Join the Alpha
HomeFeaturesSolutionsPricing
EnterprisePrivacyTerms

Quickstart

Connect an agent to Mesh and complete a ticket in about five minutes.

You need a Mesh account with a project, and an MCP client such as Claude Code. Setup is one config entry, then a browser sign-in. No tokens to copy.

  1. Add the Mesh MCP server

    With Claude Code, run:

    bash
    claude mcp add --transport http mesh https://mcp.meshproject.dev/api/mcp

    Or add it to your project's .mcp.json so everyone on the repo gets it:

    .mcp.json
    {
      "mcpServers": {
        "mesh": {
          "url": "https://mcp.meshproject.dev/api/mcp"
        }
      }
    }

    Any MCP client that supports remote HTTP servers and OAuth works the same way.

  2. Authorize in the browser

    The first time the agent uses a Mesh tool, your client opens a browser to the Mesh consent screen. Sign in, choose the project this agent should work on, and approve. You can also create a new project from this screen.

    Viewers can only grant read access. Loopback redirects (such as the one Claude Code uses) are always allowed. See Authentication for scopes.

  3. Check the connection

    Ask the agent to run mesh_status, or call it yourself from the client. You should get the session state back:

    json
    {
      "resume": { "...": "active ticket, if any" },
      "workSurface": { "...": "board counts and what is open" },
      "complianceScore": null,
      "skillVersion": "..."
    }

    On a brand-new project the response also includes a projectSetup block. That tells the agent to offer to write a brief and file first tickets. Let it.

  4. Write the brief

    Give every future session the same starting point. Open your project in the dashboard, go to Brief, and fill in the fields you have. (On a brand-new project your agent can also write it for you during setup; see Update the brief.) For example:

    json
    {
      "scope": "Customer billing portal for the Acme SaaS app",
      "goals": "Self-serve plan changes; invoice download",
      "stack": "Next.js, Postgres, Stripe",
      "constraints": "No schema changes without a migration ticket"
    }

    See Project brief for what each field is for.

  5. Create a ticket, begin it, and hand it off

    This is the core loop. Tell the agent:

    text
    Create a ticket to add a /health endpoint, begin it, implement it,
    log your test result, and hand off.

    Behind the scenes the agent calls mesh_ticket_create, mesh_ticket_begin (which claims the files and returns a sessionId), mesh_ledger_add, and mesh_handoff. The ticket ends in the review column on the board (or in done, if the review engine auto-approves it). The full walkthrough with every payload is in Your first ticket.

#Verify it worked

Open the project board in the dashboard. You should see your ticket in the review column (or done, if it was auto-approved), with the ledger entries attached and the claims released. From the agent, mesh_board returns the same view:

json
{
  "board": {
    "columns": {
      "review": { "count": 1, "tickets": [{ "key": "MESH-1", "title": "Add /health endpoint" }] }
    },
    "total": 1
  }
}

The key prefix comes from your project's ticket prefix.

#Next steps