The layer

Personalization as a primitive.

Idiolect is the layer other tools call to render — and prove — output in a specific person’s real voice. Bring a Voice Profile, get measured fidelity. Honest by design: scores are relative, never forensic.

Score API

Score any text against a voice.

The verification primitive. Send the person’s own writing as the region and the candidate text(s); get a 0–100 Voice Match on the validated instrument. Stateless and privacy‑preserving — the region stays in your request, nothing is stored.

POST https://idiolect.app/api/score
curl -X POST https://idiolect.app/api/score \
  -H 'content-type: application/json' \
  -d '{
    "region":     ["a few things the person has really written", "..."],
    "candidates": ["the draft you want to score"]
  }'

// → {
//   "scores": [{ "text": "...", "voiceMatch": 84, "cosine": 0.61 }],
//   "metric": { "name": "voice_match", "validated": true,
//               "instrument": "LUAR-MUD authorship embedding (validated)" }
// }

relative Lead with the delta over generic. We never claim “indistinguishable.”

Voice API

Read a portable Voice Profile.

A public, programmatic Voice Card by slug — the style guide any AI can write from. Public‑safe fields only; raw writing is never exposed.

GET https://idiolect.app/api/voice/
curl https://idiolect.app/api/voice/your-slug

// → { "slug", "summary", "genericnessScore",
//     "toneAxes", "signatureMoves", "taboos", "voiceCard" }
MCP

Give any agent a voice — and a conscience.

The Idiolect MCP server exposes two tools: get_my_voice loads the user’s Voice Card before the agent writes; score_voice lets it check a draft against the user’s own writing before sending — and revise if it’s off. The user’s writing stays local.

claude_desktop_config.json
{
  "mcpServers": {
    "idiolect": {
      "command": "node",
      "args": ["/path/to/idiolect/mcp/server.mjs"],
      "env": {
        "IDIOLECT_SLUG": "your-slug",
        "IDIOLECT_BASE": "https://idiolect.app",
        "IDIOLECT_SAMPLES_FILE": "/path/to/your-writing.txt"
      }
    }
  }
}
Voice Card

Or just paste it in.

No integration needed — every Voice Profile renders to a self‑contained Voice Card you drop into a ChatGPT Custom GPT or the top of any chat. The model writes as the person from there.

Create a Voice Card →

Building on the layer?

Metered API and MCP access for products that personalize at scale. Tell us what you’re building.

Talk to us →