UNIVERSAL
IDENTITY.

HCS-11 Profiles define a standardized way to store identity metadata on Hedera. From AI Agents to MCP Servers, one schema unifies them all.

THE PROBLEM

The Identity Silo.

Every dApp rebuilds the user profile wheel. Avatars, bios, and social links are fragmented across dozens of databases.

HCS-11 consolidates this into a single, on-chain source of truth. Your account memo points to your profile. Any app can resolve it.

Universal Resolution

Just one memo lookup. The protocol supports HCS-1, HCS-2, IPFS, and Arweave storage backends.

AI Native

First-class support for Agent capabilities, model types, and HCS-10 communication channels.

MCP Servers

Verify ownership of Model Context Protocol servers via DNS, signatures, or challenges.

RESOLUTION

The Memo Pointer.

It starts with the account memo. By standardizing this single field, we unlock infinite extensibility without clogging the main account object.

Supported Protocols

  • HCS-1hcs-11:hcs://1/0.0.123
  • HCS-2hcs-11:hcs://2/0.0.456
  • IPFShcs-11:ipfs://QmHash...
  • Arweavehcs-11:ar://TxHash...
// AI AGENT PROFILE
agent-profile.json
$ cat agent-profile.json | jq .
{
"version": "1.0",
"type": 1, // AI Agent
"display_name": "Atlas Assistant",
"bio": "I optimize DeFi portfolios on Hedera.",
"profileImage": "hcs://1/0.0.99123",
"inboundTopicId": "0.0.88123", // HCS-10
"outboundTopicId": "0.0.88124",
"aiAgent": {
"type": 1, // Autonomous
"model": "gpt-4-turbo",
"capabilities": [9, 10, 16]
}
}
TRUSTLESS

MCP Verification.

Model Context Protocol (MCP) servers allow AI models to interact with external data. HCS-11 provides a way to cryptographically verify that a Hedera account owns a specific MCP endpoint.

DNS Verification

Add a TXT record to your domain containing your Hedera Account ID.

_hedera.example.com IN TXT "0.0.123456"

Signature Verification

Sign your server URL with your account's private key. Clients verify the sig on-chain.

Challenge Verification

Expose a /hedera-verification endpoint that returns a signed timestamp.

// MCP PROFILE
mcp-profile.json
$ cat mcp-profile.json | jq .
{
"type": 2, // MCP Server
"display_name": "Hedera Consensus MCP",
"mcpServer": {
"version": "2025-03-26",
"connectionInfo": {
"url": "https://mcp.hedera.com",
"transport": "sse"
},
"verification": {
"type": "dns",
"value": "hedera.com",
"dns_field": "mcp-verify"
},
"services": [0, 1, 5] // Resource, Tool, API
}
}

Privacy Built-In.

HCS-11 integrates seamlessly with HCS-19 for privacy compliance. Declare your jurisdiction, link to your privacy policy, and reference your Consent Management topics directly in your profile.

privacy-compliance.json
$ cat privacy-compliance.json | jq .
{
"privacy_compliance": {
"standards": ["gdpr", "ccpa"],
"jurisdictions": ["EU", "US-CA"],
"consent_topic_id": "0.0.789101",
"processing_topic_id": "0.0.789102",
"dpo_contact": "[email protected]",
"privacy_policy_url": "https://example.com/privacy"
}
}

Consent Registry

Point to an HCS topic where user consent receipts are logged.

Jurisdiction Aware

Explicitly declare which legal frameworks (GDPR, CCPA) you adhere to.

DEVELOPER TOOLS

Build with the SDK.

Create Profile

create-profile.ts
$ import { HCS11 } from '@hashgraph/standards';
$ const profile = {
$ type: 1, // AI Agent
$ display_name: "My Agent",
$ bio: "I help with trading."
$ };
// Uploads to HCS-1 and sets account memo
$ await HCS11.publish(client, profile);

Resolve Profile

resolve-profile.ts
// Works with any account ID
$ const accountId = "0.0.123456";
// Automatically follows memo pointer (HCS-1, IPFS, etc.)
$ const profile = await HCS11.resolve(client, accountId);
$ console.log(profile.display_name);
> My Agent

Connect Everywhere.

The socials array allows you to link your Web2 identity to your Web3 profile. Standardized platform enums ensure compatibility.

Claim Your Identity.