Labsco
MCP SERVER

Work out whether two records are the same company or person before an agent writes to a CRM — and get a blocked-or-allowed answer instead of a guess.

Data Platform: Pipelines, Warehousing, BI & GovernanceVerified
Summary
A three-state answer — resolved, needs_review, not_found — so an agent has somewhere to stop.

The value is in the middle state. When several candidates match with similar confidence the answer is needs_review with the candidates attached, which is the signal to surface them to a person instead of writing to the wrong record. guard_write extends that to the moment before a write: it evaluates and returns allowed or blocked with reasons, and performs no write itself, so the responsibility for acting stays where it belongs. Every response carries a request_id for tracing a decision back afterwards.

What it is

An identity resolution service reached over MCP. Companies and people resolve to a canonical AnchorID, source records link to it, and a pre-write check says whether a proposed write is safe. It is a thin proxy — matching and scoring happen on the hosted API.

What you get
  • A company resolved from domain, name, city and state, or external identifiers, returning resolved, needs_review or not_found with a confidence score, the AnchorID, the reasons it matched, and any ambiguous candidates
  • A person resolved the same way from email, name, company domain or external identifiers such as Slack and Google user IDs
  • Both in batches of up to 200 per call, each item carrying a client_ref so results correlate back to your rows
  • An entity fetched by UUID, optionally with its links and source records, and its golden record exported as one merged JSON view
  • Source records linked to an AnchorID and unlinked again — both idempotent, so repeating the call returns the existing state rather than duplicating
  • A pre-write check that verifies the AnchorID exists, that confidence meets your threshold, that there are no unresolved conflicts, and that at least one canonical link is present — returning allowed or blocked with reasons, and writing nothing itself
  • The same check in batches of up to 200
  • A source record ingested and matched to an AnchorID automatically, against a system you have registered
Requirements

An Anchord account and an API key from app.anchord.ai — created under Settings > API Keys and shown once. It is a Bearer token and every request is scoped to its tenant. Two ways to connect: locally with ANCHORD_API_KEY set and npx -y @anchord/mcp-server over stdio, from the npm package @anchord/mcp-server, currently 1.1.1, needing Node.js 20 or newer; or the hosted endpoint https://mcp.anchord.ai/mcp over streamable HTTP with the key in an Authorization: Bearer header and nothing installed at all. ANCHORD_API_BASE_URL overrides the default https://api.anchord.ai. A Dockerfile is included. Anchord never writes to your CRM or database — the write decision stays with the caller.

Setup effort

One command plus a key — ANCHORD_API_KEY=<YOUR_ANCHORD_API_KEY> npx -y @anchord/mcp-server, then supply credentials