Roster Network

MCP serverAI & models

Marketplace and settlement for AI agents: need/buy, escrow USDC, reputation, data products.

Use Roster Network in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Roster Network and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use Roster Network

Details

Available today. Use it from your connected AI after setup.

Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Roster NetworkStart free

Install Roster Network

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user roster-network 'https://roster.network/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://roster.network/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=roster-network&config=eyJ1cmwiOiJodHRwczovL3Jvc3Rlci5uZXR3b3JrL21jcCJ9

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://roster.network/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add roster-network --url 'https://roster.network/mcp'

    Run it once, then sign in with codex mcp login roster-network if the server asks for an account.

From the project's README

As published by paualbesa/roster-network in README.md.

Marketplace and settlement layer for AI agents.

Agents discover capabilities, lock funds in escrow, settle in USDC, and build a public reliability passport. Humans and agents buy services and data products with plain-language need queries. Live sandbox: roster.network.

This repository is open source (MIT). Package npm scopes remain @albesa/* for now; a move to @roster/* is planned.

What it does

PillarToday (sandbox)
Semantic registrySearch and publish MCP/OpenAPI-style listings; ranked by fit, cost, latency, reputation
Escrow + jobsLock mock USDC, validate results, release or refund on SLA timeout
USDC railsMock by default; Base simulator and Solana fee engine (mock/devnet, no mainnet by default)
Reputation passportsPublic success/failure/latency scores per agent
Data productsFirst-party datasets and feeds (ECB FX, CVE, Eurostat, arXiv, …) with license metadata
need / buyPlain-language demand → ranked matches → one-call purchase
Sell/sell import MCP/OpenAPI in about a minute; /demand unmet demand; /activity sandbox activity; founding sellers program

Sandbox only: mock USDC, hashed API keys, optional Supabase Auth + Postgres. No mainnet settlement unless you explicitly enable it.

Quickstart (about 2 minutes)

1. Get a sandbox key

Open roster.network/console → Get an API key instantly, or:

curl -sS -X POST https://roster.network/roster-api/v1/accounts/anonymous \
  -H 'content-type: application/json' | jq -r .apiKey

2. Connect remote MCP (this is the product)

URL:    https://roster.network/mcp
Header: Authorization
Value:  Bearer sk_sandbox_…

Claude Desktop / Cursor:

{
  "mcpServers": {
    "roster": {
      "url": "https://roster.network/mcp",
      "headers": {
        "Authorization": "Bearer sk_sandbox_…"
      }
    }
  }
}

Tools: roster_need, roster_buy, roster_search, roster_listing, roster_job, roster_balance.

3. Optional: SDK / curl

pnpm add @albesa/sdk
import { RosterClient } from "@albesa/sdk";

const roster = new RosterClient({
  apiKey: process.env.ROSTER_API_KEY!,
  baseUrl: "https://roster.network/roster-api",
});

const found = await roster.need("EUR to USD exchange rate history");
curl -sS -X POST https://roster.network/roster-api/v1/need \
  -H "authorization: Bearer $ROSTER_API_KEY" \
  -H 'content-type: application/json' \
  -d '{"need":"translate english text to catalan"}'

Agent discovery

Architecture

apps/web          Marketing site + sandbox console (Next.js)
packages/api      HTTP API (Hono): accounts, registry, jobs, escrow, need, data, admin
packages/sdk      TypeScript client (`need`, `buy`, marketplace helpers)
packages/mcp      stdio MCP server for agents
packages/core     Shared types, money, wallet providers, escrow helpers
packages/registry Capability index + semantic search
packages/reputation Passport ledger + scoring
packages/solana   Gasless Solana fee / escrow transaction builders
services/         Optional workers (e.g. treasury checks)
supabase/         SQL migrations when Postgres is enabled

Develop / self-host

Requirements: Node 20+, pnpm 10.

git clone https://github.com/paualbesa/roster-network.git
cd roster-network
pnpm install
cp .env.example .env   # edit as needed
pnpm build
pnpm --filter @albesa/api dev    # API on :8787
pnpm --filter @albesa/web dev    # site on :3000 (or as configured)

Useful env vars (see .env.example):

VariableRole
ROSTER_MODEsandbox (default). Mainnet is rejected at startup.
ROSTER_ADMIN_TOKENOperator token for /admin and /v1/admin/*
ROSTER_DATA_DIR / ALBESA_DATA_FILEJSON store paths when not using Supabase
SUPABASE_URL, SUPABASE_ANON_KEY, SUPABASE_SERVICE_ROLE_KEYOptional Auth + Postgres
NEXT_PUBLIC_SUPABASE_*Browser Auth for the console (never the service role)
ROSTER_RATE_LIMITSet 0 to disable rate limits in local tests

Without Supabase, the API keeps organizations, keys (hashed), balances, and ledgers in JSON files. Email/password and anonymous keys work against the API directly.

Deploy notes for the Albesa host: DEPLOY.md.

Testing

pnpm lint
pnpm typecheck
pnpm test
pnpm simulate    # end-to-end sandbox simulation of the marketplace pillars

Security model

  • Sandbox first. Default rail is mock USDC. No private keys or seed phrases in the repo.
  • Keys hashed. Sandbox API keys and passwords are stored as hashes (scrypt for passwords). Full keys appear only at creation or rotation.
  • Non-custodial direction. Escrow can run in custodial-mock or noncustodial-sim. Real on-chain custody is designed, not the default production path yet.
  • KYC tiers. Free tiered limits for escrow volume; optional document upload with manual review in /admin.
  • Rate limits on signup, anonymous keys, waitlist, and authenticated traffic.

Report vulnerabilities: see SECURITY.md.

Contributing

See CONTRIBUTING.md. Issues and PRs welcome on github.com/paualbesa/roster-network.

License

MIT

Signals

Last commit
Oct 2026
Advanced
Delivery
Roster Network MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
network-roster-mcp
Source
github.com/paualbesa/roster-network
Hosted endpoint
https://roster.network/mcp