Labsco
MCP SERVER

ALTER Identity

by true-alter

Ask whether a person is known to ~Alter, read inferred traits, and rank an opted-in field by trait weighting — free lookups plus premium reads settled in USDC.

Identity, Access, Secrets & Encryption
Summary
Free reads are genuinely free, and the paid ones pay the person.

The tier split is unusually explicit: 31 of the 40 advertised tools cost nothing and answer without a credential, and every priced reveal pays 75% of the fee to the person whose identity was read. A zero-match field query reveals nothing and charges nothing, which is the right default for a search you might get wrong. Note the bridge caveat the project states plainly — the stdio bridge does not carry per-invocation signing, so authenticated tools fail through it; import the SDK directly for that path.

What it is

A client for the ~Alter identity rail and the tool surface it exposes. Where access management answers who is logged in, ~Alter answers what is inferred about a person: engagement depth, trait vectors, competency evidence and match quality. Free tools answer with no credential; deeper reads are priced per call and settled with x402 micropayments.

What you get
  • A first handshake reporting server version, authentication status, your trust tier and available tool counts, plus a cold-start overview of how the tiers work — `hello_agent`, `get_started`
  • Whether a person is registered, with optional identity claims validated, and a `~handle` resolved to its canonical form — `verify_identity`, `alter_resolve_handle`, `alter_presence_read`, `alter_resolve_by_key`
  • A person's profile summary, engagement level and available query tiers, plus their competency portfolio with evidence records and badges — `get_profile`, `get_engagement_level`, `get_competencies`
  • Identity stubs searched by trait criteria with no personal data returned, and a stub created for someone who has not completed discovery — `search_identities`, `create_identity_stub`
  • A standing trait requirement posted as a resting order that accumulates fills as matching identities appear, then collected one at a time — `create_requirement`, `list_requirements`, `get_requirement`, `cancel_requirement`, `poll_requirement_matches`
  • The canonical trait vocabulary with categories, valid discovery contexts and the EU AI Act workforce gating rules — `describe_traits`
  • Priced reads: the top five traits for a person, the full trait vector with confidence intervals, a multi-domain graph with differential-privacy noise, graph-to-graph similarity, belonging probability for a person-job pairing, ranked match recommendations and a written explanation of one match — `get_trait_snapshot`, `get_full_trait_vector`, `get_side_quest_graph`, `query_graph_similarity`, `compute_belonging`, `get_match_recommendations`, `generate_match_narrative`
  • A field query by situation rather than by name: weight three to seven traits and rank the opted-in field, revealing one top-ranked member per call — `query_field`
Requirements

Nothing for the free tier — the hosted server at `https://mcp.truealter.com/api/v1/mcp` answers free tools anonymously over Streamable HTTP. Tools that act on your own identity need a member credential, provisioned once by running `alter login`, which the CLI bridge reads for you. Premium tools need an x402 signer and settle in USDC. This repository is the TypeScript client, published as `@truealter/sdk` (0.5.8) for Node 18+, Deno, Bun, Cloudflare Workers and browsers; the day-to-day front door is the separate `@truealter/cli` package.

Setup effort

One command — npx -y mcp-remote https://mcp.truealter.com/api/v1/mcp