{"id":9412,"name":"Family Office Knowledge Graph","description":"One record per family office, drawn from the public record: the GLEIF spine first, then the national registers that fill and confirm it. Every field carries where it came from, who read it, when, and its state. Read-only, session-free, typed errors. Nodes: United Arab Emirates (ae-fo-kg), Australia (au-fo-kg), Canada (ca-fo-kg), Switzerland (ch-fo-kg), Germany (de-fo-kg), Denmark (dk-fo-kg), Spain (es-fo-kg), France (fr-fo-kg), Italy (it-fo-kg), Luxembourg (lu-fo-kg), Netherlands (nl-fo-kg), Norway (no-fo-kg), Rest of world (row-fo-kg), Singapore (sg-fo-kg), United Kingdom (uk-fo-kg), United States (us-fo-kg).","card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","endpoint":"https://mcp.fo-kg.ai/mcp","protocol_version":"2025-06-18","first_seen":"2026-10-10T07:52:03.652411+00:00","last_verified":"2026-10-10T15:31:16.639031+00:00","card":{"url":"https://mcp.fo-kg.ai/mcp","kind":"agent-card","name":"Family Office Knowledge Graph","x402":{"kid":"fo-kg-x402-2026-09","jwks":"https://familyofficeknowledgegraph.ai/x402/jwks.json","page":"https://familyofficeknowledgegraph.ai/x402","route":"https://familyofficeknowledgegraph.ai/api","network":"eip155:8453","price_usdc":"0.01"},"nodes":[{"id":"ae-fo-kg","door":"https://ae.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://ae.fo-kg.ai/records/ae-fo-kg/index.json","jurisdiction":"United Arab Emirates"},{"id":"au-fo-kg","door":"https://au.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://au.fo-kg.ai/records/au-fo-kg/index.json","jurisdiction":"Australia"},{"id":"ca-fo-kg","door":"https://ca.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://ca.fo-kg.ai/records/ca-fo-kg/index.json","jurisdiction":"Canada"},{"id":"ch-fo-kg","door":"https://ch.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://ch.fo-kg.ai/records/ch-fo-kg/index.json","jurisdiction":"Switzerland"},{"id":"de-fo-kg","door":"https://de.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://de.fo-kg.ai/records/de-fo-kg/index.json","jurisdiction":"Germany"},{"id":"dk-fo-kg","door":"https://dk.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://dk.fo-kg.ai/records/dk-fo-kg/index.json","jurisdiction":"Denmark"},{"id":"es-fo-kg","door":"https://es.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://es.fo-kg.ai/records/es-fo-kg/index.json","jurisdiction":"Spain"},{"id":"fr-fo-kg","door":"https://fr.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://fr.fo-kg.ai/records/fr-fo-kg/index.json","jurisdiction":"France"},{"id":"it-fo-kg","door":"https://it.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://it.fo-kg.ai/records/it-fo-kg/index.json","jurisdiction":"Italy"},{"id":"lu-fo-kg","door":"https://lu.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://lu.fo-kg.ai/records/lu-fo-kg/index.json","jurisdiction":"Luxembourg"},{"id":"nl-fo-kg","door":"https://nl.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://nl.fo-kg.ai/records/nl-fo-kg/index.json","jurisdiction":"Netherlands"},{"id":"no-fo-kg","door":"https://no.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://no.fo-kg.ai/records/no-fo-kg/index.json","jurisdiction":"Norway"},{"id":"row-fo-kg","door":"https://row.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://row.fo-kg.ai/records/row-fo-kg/index.json","jurisdiction":"Rest of world"},{"id":"sg-fo-kg","door":"https://sg.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://sg.fo-kg.ai/records/sg-fo-kg/index.json","jurisdiction":"Singapore"},{"id":"uk-fo-kg","door":"https://uk.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://uk.fo-kg.ai/records/uk-fo-kg/index.json","jurisdiction":"United Kingdom"},{"id":"us-fo-kg","door":"https://us.fo-kg.ai/mcp","as_of":"2026-09-14","index":"https://us.fo-kg.ai/records/us-fo-kg/index.json","jurisdiction":"United States"}],"skills":[{"id":"resolve_family_office","name":"Resolve family office","tags":["family-office","public-record","mcp","read-only"],"input":{"type":"object","required":["identifier"],"properties":{"identifier":{"type":"string","description":"LEI, legal name, alias or register id"}}},"output":{"type":"object","required":["matches"],"properties":{"matches":{"type":"array","items":{"type":"object","properties":{"lei":{"type":"string"},"node":{"type":"string"},"record":{"type":"string"},"legal_name":{"type":"string"}}}}}},"examples":["POST https://mcp.fo-kg.ai/mcp tools/call resolve_family_office"],"inputModes":["application/json"],"description":"Resolve an identifier (LEI, legal name, alias or register id) to the family-office records that carry it, with the node that serves each.","outputModes":["application/json"]},{"id":"get_record","name":"Get record","tags":["family-office","public-record","mcp","read-only"],"input":{"type":"object","required":["identifier"],"properties":{"version":{"type":"string"},"identifier":{"type":"string","description":"LEI, legal name, alias or register id"}}},"output":{"type":"object","required":["record"],"properties":{"record":{"type":"object","properties":{"lei":{"type":"object","required":["value","source_url","read_by","state"],"properties":{"read":{"type":"string"},"state":{"enum":["sourced","filled","confirmed","conflict","unverified"],"type":"string"},"value":{},"read_by":{"type":"string"},"source_url":{"type":"string"}}},"gaps":{"type":"array"},"events":{"type":"array"},"aliases":{"type":"array"},"identity":{"type":"object"},"principals":{"type":"array"},"registrations":{"type":"array"}}}}},"examples":["POST https://mcp.fo-kg.ai/mcp tools/call get_record"],"inputModes":["application/json"],"description":"The Family Office Record for one identifier: identity, registrations, lei, principals, sectors, website, aliases, events, gaps — every field with value, source_url, read_by, read and state; optionally a named version.","outputModes":["application/json"]},{"id":"list_events_since","name":"List events since","tags":["family-office","public-record","mcp","read-only"],"input":{"type":"object","required":["identifier"],"properties":{"limit":{"type":"integer","maximum":200,"minimum":1},"since":{"type":"string","format":"date"},"cursor":{"type":"string"},"identifier":{"type":"string","description":"LEI, legal name, alias or register id"}}},"output":{"type":"object","required":["lei","events"],"properties":{"lei":{"type":"string"},"events":{"type":"array"},"next_cursor":{"type":["string","null"]}}},"examples":["POST https://mcp.fo-kg.ai/mcp tools/call list_events_since"],"inputModes":["application/json"],"description":"Dated, URL'd events on one record, oldest first, optionally since a date, paged by cursor.","outputModes":["application/json"]},{"id":"list_aliases","name":"List aliases","tags":["family-office","public-record","mcp","read-only"],"input":{"type":"object","required":["identifier"],"properties":{"identifier":{"type":"string","description":"LEI, legal name, alias or register id"}}},"output":{"type":"object","required":["lei","aliases"],"properties":{"lei":{"type":"string"},"aliases":{"type":"array","items":{"type":"object","required":["value","source_url","read_by","state"],"properties":{"read":{"type":"string"},"state":{"enum":["sourced","filled","confirmed","conflict","unverified"],"type":"string"},"value":{},"read_by":{"type":"string"},"source_url":{"type":"string"}}}},"legal_name":{"type":"object","required":["value","source_url","read_by","state"],"properties":{"read":{"type":"string"},"state":{"enum":["sourced","filled","confirmed","conflict","unverified"],"type":"string"},"value":{},"read_by":{"type":"string"},"source_url":{"type":"string"}}}}},"examples":["POST https://mcp.fo-kg.ai/mcp tools/call list_aliases"],"inputModes":["application/json"],"description":"Every name the record carries for one identifier, each with its source.","outputModes":["application/json"]},{"id":"list_nodes","name":"List nodes","tags":["family-office","public-record","mcp","read-only"],"input":{"type":"object","properties":{}},"output":{"type":"object","required":["nodes"],"properties":{"nodes":{"type":"array"}}},"examples":["POST https://mcp.fo-kg.ai/mcp tools/call list_nodes"],"inputModes":["application/json"],"description":"The graph's nodes with record counts read from each node's index, the node door and its as-of.","outputModes":["application/json"]}],"source":"public-record","contact":"mailto:mk@agent-kg.ai","iconUrl":"https://familyofficeknowledgegraph.ai/icon-512.png","version":"0.19.10","operator":{"kid":"mk-office-2026-09","url":"https://agent-kg.ai","name":"Agentic KG Holdings","contact":"mailto:mk@agent-kg.ai","keyring":"https://familyofficeknowledgegraph.ai/.well-known/jwks.json","surface":"https://familyofficeknowledgegraph.ai","principal":"Matthew Keddy"},"provider":{"url":"https://agent-kg.ai","organization":"Agentic KG Holdings"},"security":[{"none":[]}],"description":"One record per family office, drawn from the public record: the GLEIF spine first, then the national registers that fill and confirm it. Every field carries where it came from, who read it, when, and its state. Read-only, session-free, typed errors. Nodes: United Arab Emirates (ae-fo-kg), Australia (au-fo-kg), Canada (ca-fo-kg), Switzerland (ch-fo-kg), Germany (de-fo-kg), Denmark (dk-fo-kg), Spain (es-fo-kg), France (fr-fo-kg), Italy (it-fo-kg), Luxembourg (lu-fo-kg), Netherlands (nl-fo-kg), Norway (no-fo-kg), Rest of world (row-fo-kg), Singapore (sg-fo-kg), United Kingdom (uk-fo-kg), United States (us-fo-kg).","capabilities":{"streaming":false,"pushNotifications":false,"stateTransitionHistory":false},"protocolVersion":"0.3.0","securitySchemes":{"none":{"type":"noAuth","description":"every read, the MCP doors and the records need no authentication"},"x402":{"type":"http","scheme":"x402","description":"GET /api: $0.01 USDC on Base mainnet (x402 v2) buys the signed index with a receipt"},"office":{"type":"oauth2","flows":{"clientCredentials":{"scopes":{"office:read":"read the licensed index"},"tokenUrl":"https://agent-kg.ai/oauth/token"}},"description":"office-issued EdDSA tokens (kid mk-office-2026-09) for /licensed/index"}},"documentationUrl":"https://familyofficeknowledgegraph.ai/llms.txt","defaultInputModes":["application/json","text/plain"],"defaultOutputModes":["application/json","text/markdown"],"supportedInterfaces":[{"url":"https://mcp.fo-kg.ai/mcp","transport":"streamable-http","description":"apex door — index, forwards to the node door","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://ae.fo-kg.ai/mcp","transport":"streamable-http","description":"node door ae-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://au.fo-kg.ai/mcp","transport":"streamable-http","description":"node door au-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://ca.fo-kg.ai/mcp","transport":"streamable-http","description":"node door ca-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://ch.fo-kg.ai/mcp","transport":"streamable-http","description":"node door ch-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://de.fo-kg.ai/mcp","transport":"streamable-http","description":"node door de-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://dk.fo-kg.ai/mcp","transport":"streamable-http","description":"node door dk-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://es.fo-kg.ai/mcp","transport":"streamable-http","description":"node door es-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://fr.fo-kg.ai/mcp","transport":"streamable-http","description":"node door fr-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://it.fo-kg.ai/mcp","transport":"streamable-http","description":"node door it-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://lu.fo-kg.ai/mcp","transport":"streamable-http","description":"node door lu-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://nl.fo-kg.ai/mcp","transport":"streamable-http","description":"node door nl-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://no.fo-kg.ai/mcp","transport":"streamable-http","description":"node door no-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://row.fo-kg.ai/mcp","transport":"streamable-http","description":"node door row-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://sg.fo-kg.ai/mcp","transport":"streamable-http","description":"node door sg-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://uk.fo-kg.ai/mcp","transport":"streamable-http","description":"node door uk-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://us.fo-kg.ai/mcp","transport":"streamable-http","description":"node door us-fo-kg — serves the records","protocolBinding":"HTTP+JSON","protocolVersion":"2025-06-18"},{"url":"https://familyofficeknowledgegraph.ai/","transport":"HTTP+JSON","description":"the surface, its Markdown twin, /resolve/{identifier} and the records","protocolBinding":"HTTP+JSON","protocolVersion":"1.0"}],"supportsAuthenticatedExtendedCard":false},"signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-10-10T15:31:16.639031+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Agenstry federation","source_url":"https://agenstry.com/docs","last_check":{"checked_at":"2026-10-10T15:31:16.639031+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[{"card_url":"https://ca.fo-kg.ai/.well-known/agent-card.json"},{"card_url":"https://dk.fo-kg.ai/.well-known/agent-card.json"},{"card_url":"https://it.fo-kg.ai/.well-known/agent-card.json"},{"card_url":"https://no.fo-kg.ai/.well-known/agent-card.json"}],"history_urls":["https://au.fo-kg.ai/.well-known/agent-card.json","https://ca.fo-kg.ai/.well-known/agent-card.json","https://dk.fo-kg.ai/.well-known/agent-card.json","https://it.fo-kg.ai/.well-known/agent-card.json","https://no.fo-kg.ai/.well-known/agent-card.json"],"skills":[{"skill_id":"get_record","name":"Get record","description":"The Family Office Record for one identifier: identity, registrations, lei, principals, sectors, website, aliases, events, gaps — every field with value, source_url, read_by, read and state; optionally a named version.","tags":["family-office","public-record","mcp","read-only"],"quality_warning":false},{"skill_id":"list_aliases","name":"List aliases","description":"Every name the record carries for one identifier, each with its source.","tags":["family-office","public-record","mcp","read-only"],"quality_warning":false},{"skill_id":"list_events_since","name":"List events since","description":"Dated, URL'd events on one record, oldest first, optionally since a date, paged by cursor.","tags":["family-office","public-record","mcp","read-only"],"quality_warning":false},{"skill_id":"list_nodes","name":"List nodes","description":"The graph's nodes with record counts read from each node's index, the node door and its as-of.","tags":["family-office","public-record","mcp","read-only"],"quality_warning":false},{"skill_id":"resolve_family_office","name":"Resolve family office","description":"Resolve an identifier (LEI, legal name, alias or register id) to the family-office records that carry it, with the node that serves each.","tags":["family-office","public-record","mcp","read-only"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":14,"passed":14},"recent_checks":[{"card_url":"https://no.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T15:48:58.521351+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://it.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T15:33:02.481225+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T15:31:16.639031+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://ca.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T15:16:06.117346+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://dk.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T14:59:09.374504+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://no.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T12:55:13.637860+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://it.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T12:47:29.111332+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T12:39:21.915628+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://ca.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T12:39:11.811618+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://dk.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T12:37:31.360987+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T07:59:21.784222+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://ca.fo-kg.ai/.well-known/agent-card.json","checked_at":"2026-10-10T07:59:13.342301+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-10T15:31:16.639031+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-10T07:52:03.652411+00:00","state":"skipped","http_status":null,"detail":"Unsupported or missing A2A protocol version"},"events":[],"relationships":[{"id":13163,"relation":"shared_provider_website","evidence":{"claim":"Both cards declare the same provider website","provider_url":"https://agent-kg.ai","source_card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","target_card_url":"https://agent-kg.ai/.well-known/agent-card.json"},"evidence_url":"https://au.fo-kg.ai/.well-known/agent-card.json","first_seen":"2026-10-10T13:50:35.029365+00:00","last_seen":"2026-10-10T14:25:15.184700+00:00","source_agent_id":9412,"source_agent_name":"Family Office Knowledge Graph","target_agent_id":12114,"target_agent_name":"Agentic Private Office — Matthew Keddy"}],"verification":{"agent_card_url":"https://au.fo-kg.ai/.well-known/agent-card.json","last_successful_card_check":"2026-10-10T15:31:16.639031+00:00","latest_card_check":{"checked_at":"2026-10-10T15:31:16.639031+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-10-10T15:31:16.639031+00:00","task_endpoint_tested":false,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-10T15:31:16.639031+00:00","endpoint_tls_reachable":true,"protocol_check_state":"skipped","protocol_checked_at":"2026-10-10T07:52:03.652411+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null}}