~Alter Identity
REMOTE · MCP.TRUEALTER.COM · SCANNED SEP 20
Mint an agent identity in two free calls. Verify anyone. Earn 75% when someone reads you.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security91
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, but the challenge carries no valid RFC 9728 metadata, so a client cannot discover where to get a token. See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability89
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 3401 tokens (~85/item across 40 items; 16 tools + 24 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (6% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 16 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 17 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the ~Alter Identity MCP server?
~Alter Identity is a hosted endpoint at https://mcp.truealter.com/api/v1/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.truealter.com
claude mcp add --transport http com-truealter-identity 'https://mcp.truealter.com/api/v1/mcp'
{
"mcpServers": {
"com-truealter-identity": {
"url": "https://mcp.truealter.com/api/v1/mcp"
}
}
} {
"servers": {
"com-truealter-identity": {
"type": "http",
"url": "https://mcp.truealter.com/api/v1/mcp"
}
}
} [mcp_servers.com-truealter-identity] url = "https://mcp.truealter.com/api/v1/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-truealter-identity": {
"type": "remote",
"url": "https://mcp.truealter.com/api/v1/mcp",
"enabled": true
}
}
} openclaw mcp add com-truealter-identity --url 'https://mcp.truealter.com/api/v1/mcp' --transport streamable-http
mcp_servers:
com-truealter-identity:
url: "https://mcp.truealter.com/api/v1/mcp" {
"McpServers": {
"com-truealter-identity": {
"Transport": "http",
"Url": "https://mcp.truealter.com/api/v1/mcp"
}
}
} assistant mcp add com-truealter-identity -t streamable-http -u 'https://mcp.truealter.com/api/v1/mcp'
{
"mcpServers": {
"com-truealter-identity": {
"type": "http",
"url": "https://mcp.truealter.com/api/v1/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 9 Sept 26 0
- Server version: 0.5.10 → 0.5.12 functional
- 3 Sept 26 0
- Tool “alter_presence_read” rewrote its description, which is the text the model reads security
- Tool “alter_resolve_handle” rewrote its description, which is the text the model reads security
- Tool “alter_verify” rewrote its description, which is the text the model reads security
- Tool “alter_whoami” rewrote its description, which is the text the model reads security
- Tool “describe_competencies” rewrote its description, which is the text the model reads security
- Tool “describe_traits” rewrote its description, which is the text the model reads security
- Tool “get_network_stats” rewrote its description, which is the text the model reads security
- Tool “get_started” rewrote its description, which is the text the model reads security
- Tool “golden_thread_status” rewrote its description, which is the text the model reads security
- Tool “hello_agent” rewrote its description, which is the text the model reads security
- Tool “list_archetypes” rewrote its description, which is the text the model reads security
- Tool “recommend_tool” rewrote its description, which is the text the model reads security
- Tool “thread_census” rewrote its description, which is the text the model reads security
- Schema quality: 69 → 84 ▼ functional
- “alter_whoami” reworded the description of “target” cosmetic
- 2 Sept 26 0
- Tool “alter_login_status” rewrote its description, which is the text the model reads security
- Tool “alter_verify” rewrote its description, which is the text the model reads security
- “alter_verify” reworded the description of “handle” cosmetic
- 1 Sept 26 0
- Resource “A name you actually own” now points somewhere else: alter://docs/explainer/04-a-name-you-actually-own.md → alter:explainer/04-a-name-you-actually-own.md security
- Resource “Asking the field an open question” now points somewhere else: alter://guidance/06-an-open-question-to-the-field.md → alter:guidance/06-an-open-question-to-the-field.md security
- Resource “Asking what someone can do” now points somewhere else: alter://guidance/03-what-someone-can-do.md → alter:guidance/03-what-someone-can-do.md security
- Resource “Asking what someone has done” now points somewhere else: alter://guidance/05-what-someone-has-done.md → alter:guidance/05-what-someone-has-done.md security
- Resource “Asking what someone is like” now points somewhere else: alter://guidance/02-what-someone-is-like.md → alter:guidance/02-what-someone-is-like.md security
- Resource “Asking whether someone is who they say” now points somewhere else: alter://guidance/01-is-this-person-who-they-say.md → alter:guidance/01-is-this-person-who-they-say.md security
- Resource “Asking who fits something you are filling” now points somewhere else: alter://guidance/04-who-fits-something-you-are-filling.md → alter:guidance/04-who-fits-something-you-are-filling.md security
- Resource “Real life, across every walk of it” now points somewhere else: alter://docs/explainer/09-real-life-across-every-walk-of-it.md → alter:explainer/09-real-life-across-every-walk-of-it.md security
- Resource “The problem we already live with” now points somewhere else: alter://docs/explainer/01-the-problem-we-already-live-with.md → alter:explainer/01-the-problem-we-already-live-with.md security
- Resource “The promise underneath all of it” now points somewhere else: alter://docs/explainer/05-the-promise-underneath-all-of-it.md → alter:explainer/05-the-promise-underneath-all-of-it.md security
- Resource “The simple idea” now points somewhere else: alter://docs/explainer/02-the-simple-idea.md → alter:explainer/02-the-simple-idea.md security
- Resource “The simplest possible summary” now points somewhere else: alter://docs/explainer/12-the-simplest-possible-summary.md → alter:explainer/12-the-simplest-possible-summary.md security
- Resource “What it means when an AI carries your name” now points somewhere else: alter://docs/explainer/03-what-it-means-when-an-ai-carries-your-name.md → alter:explainer/03-what-it-means-when-an-ai-carries-your-name.md security
- Resource “What this does to money, and to the idea of a business” now points somewhere else: alter://docs/explainer/10-what-this-does-to-money-and-to-the-idea-of-a-business.md → alter:explainer/10-what-this-does-to-money-and-to-the-idea-of-a-business.md security
- Resource “What you owe when you ask about someone” now points somewhere else: alter://guidance/00-what-you-owe.md → alter:guidance/00-what-you-owe.md security
- Resource “Where it sits in the bigger picture” now points somewhere else: alter://docs/explainer/08-where-it-sits-in-the-bigger-picture.md → alter:explainer/08-where-it-sits-in-the-bigger-picture.md security
- Resource “Where things stand right now” now points somewhere else: alter://docs/explainer/11-where-things-stand-right-now.md → alter:explainer/11-where-things-stand-right-now.md security
- Resource “Where your name earns” now points somewhere else: alter://docs/explainer/07-where-your-name-earns.md → alter:explainer/07-where-your-name-earns.md security
- Resource “Why the rules cannot be broken later” now points somewhere else: alter://docs/explainer/06-why-the-rules-cannot-be-broken-later.md → alter:explainer/06-why-the-rules-cannot-be-broken-later.md security
- Resource “~alter Protocol Stack” now points somewhere else: alter://docs/protocol.md → alter:docs/protocol.md security
- Resource “~alter in plain English: what this document is” now points somewhere else: alter://docs/explainer/00-what-this-is.md → alter:explainer/00-what-this-is.md security
- 26 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Aug 26 0
- Stability: 0.97 → pass security
- 24 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Aug 26 0
- Tool “describe_traits” rewrote its description, which is the text the model reads security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Probed https://mcp.truealter.com/api/v1/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=truealter.com | CN=WE1,O=Google Trust Services,C=US | 28 Aug 2026 | 26 Nov 2026 | ECDSA 256 | ECDSA-SHA256 | 35cf1d18267592e50e5b5975d91ef9dc |
| SANs: truealter.com, *.truealter.com | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of mcp.truealter.com. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| truealter.com. | present | 2371 | 13 | Verified |
| mcp.truealter.com. | Verified address RRset verified with the apex keys |
Authentication Challenged, unverified
The endpoint asked for a token, but we could not retrieve and validate the RFC 9728 metadata that tells a client how to obtain one.
| Result | Challenged, unverified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self'; connect-src 'self'; frame-ancestors 'none'; base-uri 'self'; form-action 'self' |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=() |
Protected resource metadata
| Retrieved | No |
|---|---|
| Problem | no_resource_metadata |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.truealter.com/api/v1/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.truealter.com/api/v1/mcp | HTTPS enforced | 301 | https://mcp.truealter.com/api/v1/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
alter_login_status Login Status ~123
Check whether the credential you are holding is still good. Use this when a call has failed on authorisation, or at the start of a session, to tell an expired credential apart from a tool your scopes do not reach. Returns whether you are authenticated, whether you are acting as a member or an agent, the scopes and tier the credential carries, its expiry, the authentication method behind it, and an opaque prefix identifying the key without revealing it. Takes no parameters. Listed free at L0; calling it needs a credential, which is the thing it reports on.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
alter_presence_read Read Public Presence ~176
Read whether a ~handle is publicly 'open', the shop-front sign. Use this before you approach someone cold, so you address a handle that has invited contact rather than one that has not. Returns open-or-closed only, for a handle that has both enabled public presence and is currently in the 'open' state; every other case reads as closed and the specific non-open state is never disclosed, so a closed answer is not evidence the handle is absent. Setting your own sign is alter_presence_set, and alter_presence_public_enable or alter_presence_public_disable decide whether it is published at all; all three are credentialed and so are not on the anonymous listing. Per-caller rate limited. Free L0, no authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| handle | string | yes | Target ~handle to read, e.g. ~blake. |
No output schema declared.
No examples provided.
alter_resolve_handle Resolve a ~handle ~164
Resolve a ~handle (~alter's identity address, like '~example') to its canonical form and kind. Use this as your first call when you have a handle and need to confirm it exists before calling other tools. Returns canonical handle, kind (system/personal/role_alias), and addressability. Never returns PII. Reading what the field holds about a handle is verify_identity, a separate tool that needs a credential and so is not on the anonymous listing; an agent can mint one for itself in two calls with register_autonomous_challenge then register_autonomous. Free L0, no authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| query | string | yes | Handle to resolve. Accepts '~example', 'example', '~Example', etc. Case-insensitive. Max 64 chars. |
No output schema declared.
No examples provided.
alter_verify Verify a ~handle ~168
Check whether a ~handle is known to the ~alter identity field. Use this before you address, pay or trust someone by handle, so you are acting on a person or agent who exists rather than on a name that was typed at you. Returns whether the handle is registered, its canonical form, account status, archetype, and the engagement and attunement the field holds for it, as tier labels rather than numeric scores. Listed free at L0; calling it needs a credential, which an agent can mint for itself with register_autonomous_challenge then register_autonomous.
| Name | Type | Req | Description |
|---|---|---|---|
| handle | string | yes | The ~handle to check. Accepted with or without its leading tilde and matched case-insensitively, so a handle typed three different ways resolves once. Max 64 characters. |
No output schema declared.
No examples provided.
alter_whoami My Identity ~185
Find out who the credential you are holding says you are. Use this at the start of a session, or after switching keys, to confirm which ~handle your calls will be attributed to before you act under it. Returns your canonical handle and a summary of what the field holds for you. Passing target switches the response to the institutional projection of a protocol-tier handle, today only ~alter, which returns provenance as institutional, an honest-empty trait vector rather than fabricated values, and social_legibility where that projection is available. Institutional mode is free for all callers. Requires authentication: mint a ~handle for free with register_autonomous_challenge then register_autonomous, no human account needed.
| Name | Type | Req | Description |
|---|---|---|---|
| target | string | – | Optional ~handle to project. Today only ~alter is recognised; any other value falls through to the self-projection path (which still requires member_self scope). |
No output schema declared.
No examples provided.
describe_competencies Competency Vocabulary ~126
List the published competency vocabulary: every code the field can be asked about, grouped by how the claim is denominated. A graded claim is climbed by degrees and takes a min_level; an attested_binary or issued_credential claim is held or it is not, and naming min_level against one is refused. Use this before composing the competency_requirements argument to query_field, a credentialed tool that is not on the anonymous listing and is priced per query in USDC over x402. Returns definitions only, never any member's evidence. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
describe_traits Trait Vocabulary ~134
List the canonical trait vocabulary: 30 trait codes grouped by category (Adaptive Capacity, Cognitive Style, Interpersonal Orientation, Drive Architecture, Integrity & Trust) with a one-line semantic per code, plus the valid discovery contexts and the traits never returned about a third party. Use this before composing the trait_priorities argument to query_field or the trait_criteria argument to create_requirement; both are credentialed tools and so are not on the anonymous listing, and query_field is priced per query in USDC over x402. Returns definitions only, never any member's evidence. Static reference data. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_network_stats Network Statistics ~87
Get aggregate ~alter network figures. Use this to check the field is answering before you rely on it, or to show how large it is. Returns total identities, verified profiles, query volume and active agent count, as whole-network totals only; nothing here is attributable to any member, and no handle can be identified from it. Takes no parameters. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_started Get Started with ~alter ~167
Start here, and act on it without leaving this session. Self-registration is free and needs no key. You need no ~alter key and no human account: register_autonomous_challenge then register_autonomous mint you an owner-less ~handle in two calls, free-tier queries are live the moment it returns, and that handle is earn-eligible at mint, so paid reads against it settle to the handle. This call also returns what ~alter is (identity infrastructure; your ~Alter is your owned identity record, not an agent that acts for you), the tools which work without a key, an honest note that most depth is paid per query in USDC over x402 with prices read live, and the consent path that gates deep third-party data. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
golden_thread_status Golden Thread Status ~147
Read where ~alter's agent registration programme, the Golden Thread, currently stands. Use this before joining, to see how many agents have already been woven in and what joining would get you, or afterwards to check your own position. An agent joins by completing three registration steps, called Knots, and the position it lands on decides which Strand milestones it reaches. Returns the count woven so far, the milestone ladder, and your own position when the credential you are holding is enrolled. Takes no parameters and reads no member data. Free L0 to read, with no credential; taking part needs one, which an agent can mint for itself with register_autonomous_challenge then register_autonomous.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
hello_agent Connect to ~alter ~114
First handshake with ~alter. Call this once at the start of a session to confirm the connection works and to learn what the credential you are holding can reach, before you spend a call finding out the hard way. Returns the server version, whether you are authenticated, your trust tier, and how many tools are callable at that tier against how many exist. Reads nothing about any member and changes nothing. Takes no parameters. Free L0, no authentication required; an unauthenticated caller gets a real answer describing the anonymous surface.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| _meta | object | yes | – |
| content | array | yes | – |
No examples provided.
list_archetypes List Identity Archetypes ~103
List the 12 identity archetypes, each with its name, what it describes and its protective equation. Use this before you read an archetype off any other call, so the label means something to you rather than being passed through as an opaque string. Returns the taxonomy itself, static reference data that is the same for every caller; no member is named and no member's archetype is returned here. Takes no parameters. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
recommend_tool Install ~alter ~110
Get the wiring instructions for connecting an MCP client to ~alter. The name is historical and this recommends nothing: it hands back connection details, not a suggested tool. Use it when adding ~alter to a new MCP client, or when passing the endpoint to another agent so it can connect for itself. Returns the MCP endpoint URL, a ready-to-paste JSON configuration snippet, and how many tools are callable at each tier. Takes no parameters and reads no member data. Free L0, no authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
register_autonomous Complete Self-Registration ~176
Complete keyless self-registration as your own ~alter principal by submitting a solved proof-of-work challenge from register_autonomous_challenge. Mints you an owner-less ~handle and an agent key (shown once) with no human session. Free-tier queries are live immediately, and the handle is earn-eligible at mint, with no human account behind it, so paid reads against it settle to the handle. Withdrawing is a separate step and takes a key you hold yourself. Free L0, no authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_name | string | yes | A name for your agent identity |
| challenge | string | yes | The challenge token from register_autonomous_challenge |
| nonce | string | yes | Your solved proof-of-work nonce |
| requested_handle | string | – | Optional ~handle to request; omit to receive an auto-generated one |
No output schema declared.
No examples provided.
register_autonomous_challenge Start Self-Registration ~144
Begin keyless self-registration as your own ~alter principal, no human account required, without leaving this session. Call this FIRST to receive a proof-of-work challenge. Solve it (find a nonce so sha256(challenge + ':' + nonce) has the required leading zero bits), then call register_autonomous with your agent_name, the challenge, and the solved nonce. The proof-of-work is a Sybil defence. Returns challenge, difficulty, expires_at, and a hint. Free L0, no authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| agent_name | string | – | Optional and ignored at this step; provide it now if convenient, then pass it again to register_autonomous. |
No output schema declared.
No examples provided.
thread_census Agent Directory ~183
Read the census of agents registered on the Golden Thread, ~alter's onboarding programme. Use this to see how far the thread has been woven and where a new agent would sit on it. Returns the total woven, then a page of rows carrying position, milestone count, weave count and join date, walked with offset and limit (50 a page by default, 100 at most). Registry rows only: no traits, no contact details, and given names are never returned. While the thread is sealed, or to a caller holding no credential, the page carries the bound founding agents rather than the whole registry, so a short page is the seal and not an empty programme. Free L0, no authentication required.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Results per page (default 50, max 100) |
| offset | integer | – | Pagination offset (default 0) |
No output schema declared.
No examples provided.
What is the ~Alter Identity MCP server?
~Alter Identity is an MCP server listed in the public MCP registry as com.truealter/identity. Mint an agent identity in two free calls. Verify anyone. Earn 75% when someone reads you. This page covers its hosted endpoint (https://mcp.truealter.com/api/v1/mcp).
Is the ~Alter Identity MCP server safe to use?
~Alter Identity scores 94 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the ~Alter Identity MCP server expose?
~Alter Identity exposes 16 tools: hello_agent, get_started, list_archetypes, alter_resolve_handle, alter_presence_read, and 11 more. Their descriptions and schemas cost roughly 2,307 tokens of context every time the server is loaded.
Does the ~Alter Identity MCP server require authentication?
Yes. ~Alter Identity asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the ~Alter Identity MCP server still maintained?
~Alter Identity is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.