{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"github-a2aproject--a2a","slug":"a2aproject--a2a","name":"A2A","type":"mcp","url":"https://a2a-protocol.org/","page_url":"https://unfragile.ai/a2aproject--a2a","categories":["mcp-servers"],"tags":["a2a","a2a-mcp","a2a-protocol","a2a-server","agents","generative-ai","linux-foundation"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"github-a2aproject--a2a__cap_0","uri":"capability://data.processing.analysis.protocol.buffers.based.canonical.data.model.definition.for.agent.interoperability","name":"protocol buffers-based canonical data model definition for agent interoperability","description":"Defines the normative Layer 1 data model using Protocol Buffers (specification/a2a.proto) that declares protocol-agnostic structures including Task (stateful work units), Message (communication turns), AgentCard (agent metadata), Part (polymorphic content containers), Artifact (task outputs), and TaskState (lifecycle enums). This single source of truth ensures semantic consistency across all protocol bindings (JSON-RPC, gRPC, REST) and language-specific SDKs, eliminating data model drift between implementations.","intents":["Define a vendor-neutral data model that multiple agent frameworks can adopt without lock-in","Ensure type safety and schema validation across heterogeneous agent implementations","Generate language-specific bindings (Python, Go, JavaScript, Java, .NET) from a single specification","Enable seamless serialization/deserialization across different transport protocols"],"best_for":["Protocol designers and standards bodies building multi-vendor agent ecosystems","Framework maintainers implementing A2A SDKs across multiple languages","Enterprise teams requiring strict schema governance for agent-to-agent communication"],"limitations":["Protocol Buffers require code generation step before use — not suitable for dynamic schema evolution without recompilation","Changes to core data model require coordination across all language SDK repositories","No built-in versioning strategy for backward compatibility within the proto definition itself"],"requires":["Protocol Buffers compiler (protoc) 3.x or later","Understanding of proto3 syntax and message definitions","Language-specific protobuf runtime libraries for each target language"],"input_types":["Protocol Buffer message definitions (.proto files)"],"output_types":["Generated code in Python, Go, JavaScript, Java, .NET","JSON serialized messages","Binary protobuf wire format"],"categories":["data-processing-analysis","schema-definition"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_1","uri":"capability://tool.use.integration.multi.protocol.binding.abstraction.layer.with.semantic.preservation","name":"multi-protocol binding abstraction layer with semantic preservation","description":"Implements Layer 2-3 architecture that maps abstract RPC operations (SendMessage, SendStreamingMessage, GetTask, ListTasks, CancelTask, SubscribeToTask) to three concrete protocol bindings: JSON-RPC 2.0 over HTTP/SSE, gRPC over HTTP/2, and HTTP/REST with JSON. Each binding preserves the canonical data model semantics while adapting to protocol-specific transport mechanics, allowing agents to communicate regardless of their underlying protocol choice.","intents":["Enable agents using different protocols (gRPC vs REST vs JSON-RPC) to interoperate transparently","Allow gradual migration from one protocol to another without breaking agent contracts","Support heterogeneous infrastructure where some agents run on gRPC and others on HTTP/REST","Provide protocol-agnostic task lifecycle semantics across all bindings"],"best_for":["Teams managing multi-protocol agent deployments across cloud and edge infrastructure","Organizations migrating legacy REST agents to modern gRPC while maintaining backward compatibility","Enterprises requiring protocol flexibility for different deployment contexts (mobile/edge vs cloud)"],"limitations":["Protocol binding implementations must be maintained separately — changes to core semantics require updates across all three bindings","Streaming semantics differ between protocols (SSE vs gRPC streams vs long-polling) — application code must handle protocol-specific nuances","No automatic protocol negotiation — agents must pre-agree on binding at discovery time"],"requires":["Protocol-specific server implementations (gRPC server, HTTP server with SSE support, REST framework)","Transport layer supporting HTTP/2 for gRPC, HTTP/1.1+ for JSON-RPC and REST","Client libraries for each protocol binding"],"input_types":["Abstract RPC operation definitions","Protocol-specific request formats (JSON for REST/JSON-RPC, protobuf for gRPC)"],"output_types":["Protocol-specific responses (JSON, protobuf, SSE streams)","Standardized Task, Message, and Artifact objects"],"categories":["tool-use-integration","protocol-abstraction"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_10","uri":"capability://automation.workflow.documentation.generation.and.specification.artifact.management","name":"documentation generation and specification artifact management","description":"Implements an automated documentation build system (MkDocs-based) that generates human-readable specification, tutorials, and API reference from the canonical proto definition and markdown sources. The system maintains documentation versioning, generates schema artifacts for different protocol bindings, and produces specification PDFs for offline reference, ensuring documentation stays synchronized with the protocol specification.","intents":["Generate human-readable protocol specification from proto definitions","Maintain synchronized documentation across multiple versions","Produce API reference documentation for each language SDK","Create tutorial content and integration guides for developers"],"best_for":["Protocol maintainers managing documentation at scale","Open source projects requiring comprehensive, versioned documentation","Teams needing to generate specification artifacts for different audiences (developers, architects, operators)"],"limitations":["Documentation generation requires manual updates to markdown sources — not fully automated from proto","Versioning documentation across multiple protocol versions increases storage and maintenance burden","Generated documentation may not capture all protocol nuances — requires manual curation"],"requires":["MkDocs and Python 3.9+","Markdown source files","Proto definitions","CI/CD pipeline for automated builds"],"input_types":["Proto specification files","Markdown documentation sources"],"output_types":["HTML documentation site","PDF specification","Schema artifacts (JSON Schema, OpenAPI, etc.)"],"categories":["automation-workflow","documentation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_11","uri":"capability://automation.workflow.cross.repository.automation.and.sdk.synchronization","name":"cross-repository automation and sdk synchronization","description":"Implements CI/CD workflows that synchronize proto definitions across the main A2A repository and language-specific SDK repositories (a2a-python, a2a-go, a2a-js, a2a-java, a2a-dotnet), automatically triggering SDK regeneration and testing when the specification changes. This ensures all SDKs stay in sync with the canonical specification without manual coordination.","intents":["Automatically propagate specification changes to all language SDKs","Trigger SDK regeneration and testing when proto definitions change","Maintain consistency across 5+ language implementations","Reduce manual coordination overhead for protocol evolution"],"best_for":["Protocol maintainers managing multi-language SDKs","Open source projects with distributed SDK repositories","Teams requiring strict synchronization between specification and implementations"],"limitations":["Cross-repository automation adds complexity to CI/CD pipelines","Requires write access to multiple repositories — increases security surface","SDK-specific tests may fail after specification changes, requiring manual fixes"],"requires":["GitHub Actions or equivalent CI/CD system","Cross-repository access tokens","Automated testing for each language SDK"],"input_types":["Proto specification changes"],"output_types":["Regenerated SDK code in all languages","Test results for each SDK","Pull requests with updated SDKs"],"categories":["automation-workflow","ci-cd"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_12","uri":"capability://automation.workflow.governance.structure.and.technical.steering.committee.oversight","name":"governance structure and technical steering committee oversight","description":"Establishes a formal governance model with a Technical Steering Committee (TSC) that oversees protocol evolution, reviews proposals, and manages the contribution process. The governance structure (documented in docs/community.md) defines how protocol changes are proposed, reviewed, and approved, ensuring decisions are made transparently with input from the community and major stakeholders.","intents":["Establish transparent decision-making for protocol evolution","Ensure major stakeholders have input on protocol direction","Manage contribution process and code review standards","Balance innovation with stability for long-term protocol viability"],"best_for":["Open source protocols requiring community trust and transparency","Linux Foundation projects with formal governance requirements","Ecosystems with multiple competing interests (vendors, users, contributors)"],"limitations":["Formal governance adds overhead to decision-making — slower than single-maintainer projects","TSC consensus requirements may slow protocol evolution","Governance structure requires ongoing maintenance and clarification"],"requires":["Documented governance charter","TSC member nominations and election process","Contribution guidelines and code review standards"],"input_types":["Protocol enhancement proposals (PEPs)","Community feedback and issues"],"output_types":["Approved protocol changes","Governance decisions and rationale"],"categories":["automation-workflow","governance"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_2","uri":"capability://search.retrieval.agent.discovery.and.capability.advertisement.via.agentcard.metadata","name":"agent discovery and capability advertisement via agentcard metadata","description":"Defines AgentCard as a standardized metadata structure that agents publish to advertise their identity, capabilities, supported protocols, authentication requirements, and operational constraints. AgentCard enables dynamic agent discovery without requiring centralized registries — agents can advertise themselves via HTTP endpoints, DNS records, or service meshes, allowing other agents to discover and invoke capabilities at runtime.","intents":["Discover available agents and their capabilities in a decentralized manner without central registry","Advertise agent identity, supported protocols, and authentication schemes to potential clients","Enable agents to declare rate limits, cost models, and operational constraints upfront","Support dynamic agent registration and deregistration in service meshes or Kubernetes clusters"],"best_for":["Decentralized agent networks where agents join/leave dynamically","Kubernetes-native deployments using service discovery mechanisms","Multi-tenant platforms where agents need to advertise capabilities and pricing","Federated agent systems spanning multiple organizations or cloud providers"],"limitations":["No built-in consensus mechanism for AgentCard validity — clients must validate agent identity through external means (mTLS, signed tokens)","AgentCard changes require re-advertisement — no automatic propagation to all clients","Discovery latency depends on underlying mechanism (DNS TTL, service mesh update frequency, HTTP polling)"],"requires":["HTTP endpoint or service discovery mechanism to publish AgentCard","Standardized AgentCard schema (defined in a2a.proto)","Client-side discovery logic to locate and fetch AgentCards"],"input_types":["Agent metadata (name, version, capabilities, protocols, auth schemes)"],"output_types":["AgentCard JSON/protobuf structure","Capability list with operation signatures"],"categories":["search-retrieval","agent-discovery"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_3","uri":"capability://automation.workflow.stateful.task.lifecycle.management.with.streaming.and.asynchronous.operations","name":"stateful task lifecycle management with streaming and asynchronous operations","description":"Implements a complete task state machine (defined in TaskState enum) that tracks work from creation through completion or cancellation, with support for long-running operations via streaming responses and asynchronous notifications. Tasks are first-class protocol objects with unique identifiers, allowing agents to reference, monitor, and cancel work across network boundaries. Streaming operations (SendStreamingMessage) enable real-time progress updates and intermediate results without polling.","intents":["Track long-running agent operations without blocking the caller","Stream intermediate results and progress updates as work completes","Cancel in-flight tasks and clean up resources gracefully","Subscribe to task state changes and receive push notifications"],"best_for":["Agents performing long-running computations (code generation, data analysis, model training)","Real-time collaborative systems where multiple agents monitor shared tasks","Resource-constrained environments where streaming prevents memory buildup from buffering results"],"limitations":["Streaming semantics vary by protocol binding — SSE, gRPC streams, and long-polling have different latency/throughput characteristics","Task state is not automatically persisted — requires external state store for durability across agent restarts","No built-in distributed transaction semantics — task cancellation is best-effort, not guaranteed"],"requires":["Task state persistence mechanism (database, distributed cache, or in-memory store)","Streaming transport support (HTTP/2 for gRPC, SSE for JSON-RPC, long-polling for REST)","Unique task identifier generation and tracking"],"input_types":["Task creation request with input parameters","Task ID for state queries and cancellation"],"output_types":["Task object with current state","Streaming message sequences for long-running operations","Artifact objects containing task results"],"categories":["automation-workflow","async-operations"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_4","uri":"capability://tool.use.integration.extensibility.framework.for.custom.operations.and.protocol.features","name":"extensibility framework for custom operations and protocol features","description":"Provides an Extensions system (documented in specification) that allows agents to define custom RPC operations and protocol-specific features beyond the core A2A operations, using a plugin-like mechanism. Extensions are declared in AgentCard and negotiated during agent discovery, enabling agents to expose domain-specific capabilities (e.g., custom tool invocation, proprietary streaming formats) while maintaining compatibility with standard A2A clients.","intents":["Add domain-specific operations without modifying the core A2A protocol","Support proprietary or experimental features in a standardized way","Enable agents to advertise custom capabilities that clients can opt into","Maintain backward compatibility while allowing protocol evolution"],"best_for":["Specialized agent implementations requiring domain-specific operations","Research teams experimenting with new agent communication patterns","Vendors adding proprietary features while maintaining A2A compatibility"],"limitations":["Extensions are not guaranteed to be understood by all clients — requires fallback logic for unknown extensions","No standardized extension registry — extension discovery relies on AgentCard advertisement","Extension implementations must be maintained separately across language SDKs"],"requires":["Extension definition in proto format or JSON schema","AgentCard declaration of supported extensions","Client-side logic to detect and handle extensions"],"input_types":["Extension definitions (custom RPC signatures, parameters)"],"output_types":["Extension-specific responses","Fallback responses for clients that don't support the extension"],"categories":["tool-use-integration","extensibility"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_5","uri":"capability://safety.moderation.security.and.authentication.framework.with.pluggable.schemes","name":"security and authentication framework with pluggable schemes","description":"Implements a security layer that supports multiple authentication schemes (declared in AgentCard) including mTLS for gRPC, bearer tokens for REST/JSON-RPC, and custom authentication handlers. The protocol defines how agents advertise their authentication requirements and how clients negotiate credentials during discovery, enabling secure agent-to-agent communication across untrusted networks without requiring a centralized authentication service.","intents":["Authenticate agents before allowing access to their capabilities","Support multiple authentication schemes for different deployment contexts","Advertise authentication requirements in AgentCard for client discovery","Enable end-to-end encryption and mutual authentication between agents"],"best_for":["Multi-tenant agent platforms requiring strict access control","Federated agent networks spanning multiple organizations","Regulated industries (finance, healthcare) requiring audit trails and encryption"],"limitations":["No built-in authorization framework — authentication only; access control must be implemented per-agent","mTLS requires certificate management infrastructure (CA, certificate rotation)","Bearer token schemes require secure token distribution and revocation mechanisms"],"requires":["TLS/mTLS infrastructure for encrypted transport","Token generation and validation service (for bearer token schemes)","Certificate management system (for mTLS)","AgentCard declaration of supported authentication schemes"],"input_types":["Credentials (certificates, tokens, API keys)","Authentication scheme declarations"],"output_types":["Authenticated agent identity","Access tokens or session identifiers"],"categories":["safety-moderation","authentication"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_6","uri":"capability://code.generation.editing.multi.language.sdk.code.generation.from.canonical.proto.specification","name":"multi-language sdk code generation from canonical proto specification","description":"Generates language-specific SDKs (Python, Go, JavaScript, Java, .NET) from the canonical a2a.proto specification using protobuf code generators, with each SDK providing idiomatic bindings for the target language. The generation pipeline (documented in development infrastructure) ensures all SDKs maintain semantic consistency with the protocol specification while providing language-native APIs (async/await in Python, goroutines in Go, promises in JavaScript).","intents":["Implement A2A-compliant agents in any supported language without manual protocol implementation","Ensure type safety and schema validation in language-native code","Maintain consistency across SDKs when protocol evolves","Reduce boilerplate for protocol serialization and deserialization"],"best_for":["Polyglot teams building agents in multiple languages","Framework maintainers implementing A2A support for existing agent platforms","Organizations standardizing on A2A across heterogeneous tech stacks"],"limitations":["SDK generation requires protobuf compiler and language-specific code generators — adds build complexity","Generated code must be regenerated and tested whenever proto specification changes","Language-specific idioms may not map cleanly to proto definitions (e.g., Go's interface{} vs Python's typing)"],"requires":["Protocol Buffers compiler (protoc) 3.x+","Language-specific protobuf plugins (protoc-gen-go, protoc-gen-python, etc.)","Build system integration (Makefile, Bazel, Gradle, etc.)","Language runtime (Python 3.9+, Node.js 18+, Go 1.18+, Java 11+, .NET 6+)"],"input_types":["a2a.proto specification file"],"output_types":["Generated SDK code in target language","Type definitions and serialization/deserialization functions","Client and server stubs"],"categories":["code-generation-editing","sdk-generation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_7","uri":"capability://tool.use.integration.framework.integration.patterns.for.existing.agent.platforms","name":"framework integration patterns for existing agent platforms","description":"Provides integration guides and reference implementations showing how to adapt existing agent frameworks (LangChain, AutoGen, CrewAI, etc.) to become A2A-compliant. Integration patterns include wrapping framework agents as A2A servers, implementing AgentCard advertisement, and mapping framework-specific task models to A2A Task objects, enabling existing agent ecosystems to interoperate without rewriting core logic.","intents":["Integrate existing LangChain/AutoGen/CrewAI agents into A2A networks without rewriting","Expose framework-specific capabilities through standardized A2A interfaces","Enable framework agents to discover and invoke other A2A agents","Migrate incrementally from framework-specific to A2A-based architectures"],"best_for":["Teams with existing agent implementations wanting to join A2A ecosystems","Framework maintainers adding A2A support to their platforms","Organizations with heterogeneous agent stacks (some LangChain, some AutoGen) needing interoperability"],"limitations":["Integration patterns are framework-specific — no one-size-fits-all adapter","Framework-specific features may not map cleanly to A2A abstractions (e.g., LangChain's memory vs A2A's message history)","Performance overhead from translation layer between framework and A2A semantics"],"requires":["Existing agent framework (LangChain, AutoGen, CrewAI, etc.)","A2A SDK for target language","HTTP server or gRPC server to expose framework agent as A2A service"],"input_types":["Framework-specific agent definitions","Framework task/message models"],"output_types":["A2A-compliant agent server","AgentCard metadata","A2A Task and Message objects"],"categories":["tool-use-integration","framework-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_8","uri":"capability://tool.use.integration.complementary.protocol.composition.with.mcp.model.context.protocol","name":"complementary protocol composition with mcp (model context protocol)","description":"Defines how A2A and MCP (Model Context Protocol) work together as complementary standards: A2A handles agent-to-agent communication and task orchestration, while MCP handles LLM-to-tool communication and context management. The specification documents integration patterns showing how agents can use MCP servers as tools and how MCP clients can invoke A2A agents, enabling layered architectures where agents coordinate via A2A while LLMs invoke tools via MCP.","intents":["Understand how A2A and MCP fit together in agent architectures","Build agents that use MCP servers as tools while participating in A2A networks","Design multi-layer systems where agents coordinate via A2A and LLMs invoke tools via MCP","Migrate from MCP-only to A2A+MCP architectures for agent orchestration"],"best_for":["Teams building complex agent systems with both agent-to-agent and LLM-to-tool communication","Organizations standardizing on both A2A (agent coordination) and MCP (LLM tools)","Architects designing multi-layer agent stacks with clear separation of concerns"],"limitations":["Requires understanding both A2A and MCP specifications — steeper learning curve","Integration patterns are not automated — developers must manually wire A2A agents to MCP servers","No built-in translation between A2A and MCP semantics — requires adapter code"],"requires":["A2A SDK for agent implementation","MCP SDK for tool integration","Understanding of both protocol specifications"],"input_types":["A2A agent definitions","MCP server definitions"],"output_types":["Integrated agent that uses MCP tools and participates in A2A networks"],"categories":["tool-use-integration","protocol-composition"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-a2aproject--a2a__cap_9","uri":"capability://automation.workflow.specification.versioning.and.backward.compatibility.management","name":"specification versioning and backward compatibility management","description":"Implements a protocol versioning strategy (documented in Protocol Version History) that allows the A2A specification to evolve while maintaining backward compatibility with existing implementations. Version information is embedded in protocol messages and AgentCard metadata, enabling agents to negotiate protocol versions during discovery and gracefully handle version mismatches through fallback mechanisms.","intents":["Evolve the A2A protocol without breaking existing agent implementations","Support multiple protocol versions simultaneously during migration periods","Enable agents to negotiate compatible protocol versions at discovery time","Maintain audit trails of protocol changes and deprecation timelines"],"best_for":["Protocol maintainers managing long-term evolution of A2A","Large deployments with heterogeneous agent versions that can't upgrade simultaneously","Regulated environments requiring change management and deprecation timelines"],"limitations":["Supporting multiple protocol versions increases implementation complexity","Version negotiation adds latency to agent discovery","Deprecated features must be maintained for backward compatibility, increasing SDK size"],"requires":["Version field in protocol messages and AgentCard","Deprecation timeline documentation","Fallback logic in SDKs for handling version mismatches"],"input_types":["Protocol version numbers","Feature deprecation notices"],"output_types":["Version-compatible protocol messages","Deprecation warnings and migration guides"],"categories":["automation-workflow","version-management"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":55,"verified":false,"data_access_risk":"high","permissions":["Protocol Buffers compiler (protoc) 3.x or later","Understanding of proto3 syntax and message definitions","Language-specific protobuf runtime libraries for each target language","Protocol-specific server implementations (gRPC server, HTTP server with SSE support, REST framework)","Transport layer supporting HTTP/2 for gRPC, HTTP/1.1+ for JSON-RPC and REST","Client libraries for each protocol binding","MkDocs and Python 3.9+","Markdown source files","Proto definitions","CI/CD pipeline for automated builds"],"failure_modes":["Protocol Buffers require code generation step before use — not suitable for dynamic schema evolution without recompilation","Changes to core data model require coordination across all language SDK repositories","No built-in versioning strategy for backward compatibility within the proto definition itself","Protocol binding implementations must be maintained separately — changes to core semantics require updates across all three bindings","Streaming semantics differ between protocols (SSE vs gRPC streams vs long-polling) — application code must handle protocol-specific nuances","No automatic protocol negotiation — agents must pre-agree on binding at discovery time","Documentation generation requires manual updates to markdown sources — not fully automated from proto","Versioning documentation across multiple protocol versions increases storage and maintenance burden","Generated documentation may not capture all protocol nuances — requires manual curation","Cross-repository automation adds complexity to CI/CD pipelines","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.7496324425718819,"quality":0.5,"ecosystem":0.6000000000000001,"match_graph":0.25,"freshness":0.75,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:21.549Z","last_scraped_at":"2026-05-03T13:58:21.997Z","last_commit":"2026-05-01T00:19:48Z"},"community":{"stars":23564,"forks":2378,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=a2aproject--a2a","compare_url":"https://unfragile.ai/compare?artifact=a2aproject--a2a"}},"signature":"qNU2l4/vnWD1N40UBti/8g2ezvW6BgQ/h0xo/Bu3WMhfm39HK2Vi2ZU4TAzpABF/TWD6qNuMZzG5d91x+4oUBA==","signedAt":"2026-06-19T23:16:27.212Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/a2aproject--a2a","artifact":"https://unfragile.ai/a2aproject--a2a","verify":"https://unfragile.ai/api/v1/verify?slug=a2aproject--a2a","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}