{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"github-composiohq--composio","slug":"composiohq--composio","name":"composio","type":"framework","url":"https://docs.composio.dev","page_url":"https://unfragile.ai/composiohq--composio","categories":["ai-agents"],"tags":["agentic-ai","agents","ai","ai-agents","aiagents","developer-tools","function-calling","gpt-4","javascript","js","llm","llmops","mcp","python","remote-mcp-server","sse","typescript"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"github-composiohq--composio__cap_0","uri":"capability://tool.use.integration.multi.provider.tool.schema.discovery.and.registration","name":"multi-provider tool schema discovery and registration","description":"Composio maintains a centralized tool registry of 1000+ pre-built toolkits with OpenAPI-based schemas, enabling agents to dynamically discover and register tools from external services without manual integration. The registry is versioned and accessible via both SDK and MCP protocol, with automatic schema validation and tool metadata caching. Tools are organized hierarchically by service (Slack, GitHub, Salesforce, etc.) with standardized parameter and return type definitions.","intents":["I want my agent to automatically discover available tools from a service without hardcoding function definitions","I need to version and update tool schemas across multiple agent deployments","I want to search for specific tools by capability across all 1000+ integrated services"],"best_for":["teams building multi-service agents that need to adapt to API changes","developers prototyping agents without pre-defining all tool schemas","enterprises managing tool catalogs across multiple LLM providers"],"limitations":["Schema discovery is read-only from the central registry — custom tools require manual schema definition","Tool registry updates have eventual consistency; newly added tools may take minutes to propagate","OpenAPI schemas are normalized to Composio's format, which may lose some provider-specific metadata"],"requires":["API key for Composio backend (free tier available)","Python 3.9+ or Node.js 18+","Network access to backend.composio.dev/api/v3"],"input_types":["service name (string)","tool category filter (optional)","version specifier (optional)"],"output_types":["structured tool schema (JSON)","parameter definitions (JSON Schema)","authentication requirements (metadata)"],"categories":["tool-use-integration","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_1","uri":"capability://tool.use.integration.unified.oauth.2.0.and.api.key.credential.management.with.automatic.injection","name":"unified oauth 2.0 and api key credential management with automatic injection","description":"Composio provides a centralized authentication system that handles OAuth 2.0 flows, API key storage, and custom auth protocols across all integrated services. Credentials are stored securely in the backend and automatically injected into tool invocations via session-based routing, eliminating the need for agents to manage authentication state. The system supports credential scoping per user, per session, and per tool, with automatic token refresh and expiration handling.","intents":["I want users to authenticate with external services (Slack, GitHub, etc.) once and have credentials automatically available to my agent","I need to securely store and rotate API keys without exposing them in agent code","I want to handle OAuth 2.0 flows transparently without implementing redirect callbacks"],"best_for":["multi-tenant SaaS applications where each user has different service credentials","teams building agents that need to act on behalf of end users","developers who want to avoid credential management complexity in agent code"],"limitations":["OAuth flows require a configured redirect URI pointing back to Composio's auth service — custom redirect URIs are not supported","Credential storage is tied to Composio's backend; no option for self-hosted credential vaults","Token refresh is automatic but may introduce 100-500ms latency on first tool invocation after expiration"],"requires":["Composio API key with authentication scope enabled","OAuth app credentials registered with target services (Client ID, Client Secret)","User session context (user_id or session_id) to scope credentials"],"input_types":["service name (string)","auth type (oauth2, api_key, custom)","user context (user_id or session_id)"],"output_types":["authenticated tool instance","credential metadata (expiration, scopes)","auth status (valid, expired, revoked)"],"categories":["tool-use-integration","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_10","uri":"capability://automation.workflow.cli.tool.for.local.development.and.toolkit.management","name":"cli tool for local development and toolkit management","description":"Composio provides a command-line interface (@composio/cli) for local development workflows, including toolkit inspection, custom tool registration, authentication testing, and binary distribution. The CLI supports commands for listing tools, viewing schemas, testing tool execution, and managing local MCP server instances. The CLI is distributed as a Node.js binary and supports both interactive and scripted usage.","intents":["I want to inspect available tools and their schemas from the command line","I need to test tool execution locally before deploying my agent","I want to register custom tools and test them with the local MCP server"],"best_for":["developers building and testing agents locally","teams automating toolkit management in CI/CD pipelines","developers debugging tool execution issues"],"limitations":["CLI is Node.js-based — requires Node.js 18+ installation","Some commands require Composio API key for authentication","Interactive mode is limited compared to programmatic SDK usage"],"requires":["Node.js 18+","Composio CLI installed (npm install -g @composio/cli)","Composio API key (for some commands)"],"input_types":["command name (string)","command arguments (toolkit name, tool name, etc.)","optional flags (--format, --output, etc.)"],"output_types":["tool list (JSON or table format)","tool schema (JSON)","execution results","error messages"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_11","uri":"capability://memory.knowledge.context.aware.agent.execution.with.conversation.history.and.state.management","name":"context-aware agent execution with conversation history and state management","description":"Composio enables agents to maintain execution context across multiple tool invocations, including conversation history, execution state, and user context. The context management system automatically tracks tool call sequences, results, and errors, allowing agents to learn from previous executions and make informed decisions. Context is scoped per session and can be persisted to external storage for multi-turn conversations. The system supports context summarization to manage token usage in long conversations.","intents":["I want my agent to remember previous tool calls and results within a conversation","I need to persist agent state across multiple user interactions","I want to summarize long conversation histories to reduce token usage"],"best_for":["multi-turn conversational agents","agents handling complex workflows requiring state tracking","applications with long-running user sessions"],"limitations":["Context storage is in-memory by default — no built-in persistence across server restarts","Context summarization is not automatic — agents must explicitly request summarization","Large conversation histories may exceed LLM context windows even with summarization"],"requires":["Composio SDK","Session context (user_id, conversation_id)","Optional: external storage for persistence (database, cache)"],"input_types":["conversation message (user query)","execution context (previous tool calls, results)","optional metadata (user_id, conversation_id)"],"output_types":["agent response (text or structured)","tool calls made (list with parameters and results)","updated context (for next turn)"],"categories":["memory-knowledge","planning-reasoning"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_12","uri":"capability://automation.workflow.error.handling.and.retry.logic.with.exponential.backoff","name":"error handling and retry logic with exponential backoff","description":"Composio implements automatic error handling and retry logic for tool execution failures, including exponential backoff, jitter, and configurable retry policies. The system distinguishes between retryable errors (rate limits, transient failures) and non-retryable errors (authentication failures, invalid parameters), applying appropriate handling for each. Retry behavior is configurable per tool or globally, with detailed error reporting including failure reasons and retry attempts.","intents":["I want my agent to automatically retry failed tool calls without manual intervention","I need to handle rate limits gracefully without overwhelming external services","I want detailed error information to debug tool execution failures"],"best_for":["agents calling external APIs that may be temporarily unavailable","applications handling rate-limited APIs","teams requiring robust error handling without custom retry logic"],"limitations":["Retry logic is applied at the tool execution layer — higher-level agent logic errors are not retried","Exponential backoff may introduce significant latency for repeated failures (max ~30 seconds by default)","Retry policies are not customizable per-error-type — only global or per-tool configuration is supported"],"requires":["Composio SDK","Tool execution context","Optional: custom retry policy configuration"],"input_types":["tool execution request","optional retry policy (max_attempts, backoff_factor, etc.)"],"output_types":["tool execution result (success or final failure)","error details (error type, message, retry attempts)","retry metadata (backoff duration, next retry time)"],"categories":["automation-workflow","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_13","uri":"capability://safety.moderation.rate.limiting.and.quota.management.with.per.tool.and.per.user.enforcement","name":"rate limiting and quota management with per-tool and per-user enforcement","description":"Composio provides rate limiting and quota management at multiple levels: per-tool rate limits (enforced by external services), per-user quotas (enforced by Composio), and per-session execution limits. The system tracks usage across all tool invocations and enforces limits transparently, returning quota exceeded errors when limits are reached. Rate limit information is available in tool metadata, allowing agents to make informed decisions about tool selection.","intents":["I want to enforce per-user quotas on tool usage to prevent abuse","I need to respect external service rate limits without manual tracking","I want to know when a user has reached their quota before attempting a tool call"],"best_for":["multi-tenant applications with per-user quotas","teams managing API costs by limiting tool usage","applications requiring fair resource allocation across users"],"limitations":["Rate limit enforcement is at the Composio layer — external service rate limits may still be exceeded if multiple agents call the same service","Quota reset periods are fixed (typically daily or monthly) — custom reset schedules are not supported","Rate limit information is approximate — actual limits may vary based on external service behavior"],"requires":["Composio API key with quota management enabled","User context (user_id) for per-user quota enforcement","Optional: custom quota configuration"],"input_types":["user_id (for quota tracking)","tool name (to check rate limits)","optional quota configuration (limits, reset period)"],"output_types":["quota status (remaining calls, reset time)","rate limit information (calls per minute, etc.)","quota exceeded error (if limit reached)"],"categories":["safety-moderation","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_2","uri":"capability://tool.use.integration.session.based.tool.routing.with.automatic.context.management","name":"session-based tool routing with automatic context management","description":"Composio uses session objects to encapsulate tool execution context, including authenticated credentials, user identity, and execution environment. Sessions route tool calls to the appropriate provider implementation and automatically inject authentication, file handling, and execution metadata. The routing layer supports both local execution (via SDK) and remote execution (via MCP protocol), with transparent fallback and load balancing across multiple endpoints.","intents":["I want to execute tools with automatic credential injection without manually passing auth tokens","I need to isolate tool execution contexts per user or per conversation thread","I want to switch between local and remote tool execution without changing agent code"],"best_for":["agents handling multiple concurrent user sessions","teams deploying agents across local and cloud environments","applications requiring strict isolation between user execution contexts"],"limitations":["Session state is ephemeral by default — no built-in persistence across server restarts","Session creation adds ~50-100ms overhead per new context","Cross-session credential sharing requires explicit configuration and is not recommended for security reasons"],"requires":["Composio SDK (Python or TypeScript)","User context (user_id or session_id)","Active credentials registered for target services"],"input_types":["session configuration (user_id, environment, execution mode)","tool name and parameters","optional metadata (conversation_id, request_id)"],"output_types":["tool execution result","execution metadata (latency, provider, auth status)","error details with context"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_3","uri":"capability://tool.use.integration.mcp.protocol.server.with.hosted.and.local.execution.modes","name":"mcp protocol server with hosted and local execution modes","description":"Composio provides a Model Context Protocol (MCP) server implementation that exposes all 1000+ tools as MCP resources, enabling integration with any MCP-compatible client (Claude, LLMs, custom agents). The platform offers both hosted MCP endpoints (mcp.composio.dev) for zero-setup integration and local MCP server binaries for self-hosted deployments. The MCP layer handles schema translation, credential injection, and execution routing transparently.","intents":["I want to use Composio tools with Claude or other MCP-compatible clients without custom integration","I need to deploy Composio as a self-hosted MCP server in my infrastructure","I want to expose my custom tools alongside Composio's 1000+ tools via MCP protocol"],"best_for":["teams using Claude or other MCP-native clients","enterprises requiring self-hosted tool execution","developers building MCP-compatible agents"],"limitations":["Hosted MCP endpoints (mcp.composio.dev) require internet connectivity and are subject to rate limits","Local MCP server requires binary distribution and manual deployment — no containerized image provided","MCP protocol overhead adds ~100-200ms per tool invocation compared to direct SDK calls"],"requires":["MCP-compatible client (Claude, custom agent, etc.)","Composio API key for hosted mode OR binary deployment for local mode","Network access to mcp.composio.dev (hosted) or localhost:8000 (local)"],"input_types":["MCP tool call (JSON-RPC format)","tool name and parameters","session/user context (optional)"],"output_types":["MCP resource response (JSON)","tool execution result","error details (MCP error format)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_4","uri":"capability://automation.workflow.webhook.and.real.time.event.trigger.system.with.websocket.support","name":"webhook and real-time event trigger system with websocket support","description":"Composio provides a trigger engine that enables agents to subscribe to real-time events from external services via webhooks and WebSocket connections (Pusher-based). Triggers are defined declaratively per toolkit and automatically handle event ingestion, filtering, and delivery to agent handlers. The system supports both push (webhook) and pull (polling) modes, with automatic retry logic and event deduplication.","intents":["I want my agent to react to real-time events from Slack, GitHub, or other services without polling","I need to subscribe to specific event types and filter events before passing them to my agent","I want to handle webhook events reliably with automatic retry and deduplication"],"best_for":["agents that need to respond to external service events in real-time","applications building event-driven workflows","teams avoiding polling-based event detection"],"limitations":["Webhook delivery is not guaranteed — events may be lost if the agent is offline; no built-in message queue","WebSocket connections (Pusher) require active subscription and consume connection resources","Event filtering is limited to service-provided event types; custom event logic must be implemented in agent handlers"],"requires":["Composio API key with webhook scope","Public webhook endpoint (for push mode) or WebSocket client (for pull mode)","Event handler implementation in agent code"],"input_types":["event type (string, e.g., 'slack.message.posted')","filter criteria (optional, service-specific)","handler callback function"],"output_types":["event payload (JSON, service-specific schema)","event metadata (timestamp, source, id)","delivery status (success, retry, failed)"],"categories":["automation-workflow","planning-reasoning"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_5","uri":"capability://data.processing.analysis.transparent.file.handling.with.s3.based.upload.and.download","name":"transparent file handling with s3-based upload and download","description":"Composio abstracts file operations (upload, download, storage) behind a transparent file service that uses S3-based backend storage with presigned URLs. Agents can pass file paths or file objects to tools, and Composio automatically handles upload to S3, generates presigned URLs for tool access, and manages cleanup. The system supports streaming for large files and automatic MIME type detection.","intents":["I want my agent to work with files without managing S3 credentials or presigned URLs","I need to upload files to tools and download results without manual file transfer logic","I want to handle large files efficiently without loading them entirely into memory"],"best_for":["agents processing documents, images, or other file-based inputs","applications avoiding direct S3 integration complexity","teams handling multi-file workflows"],"limitations":["File storage is ephemeral by default — files are deleted after tool execution unless explicitly persisted","Large file uploads (>100MB) may timeout; streaming is supported but requires explicit configuration","Presigned URLs expire after 1 hour — long-running operations may fail if file access is needed after expiration"],"requires":["Composio SDK with file handling enabled","File path or file object as input","Network access to S3 backend"],"input_types":["file path (string)","file object (bytes or stream)","MIME type (optional, auto-detected)"],"output_types":["presigned URL (string)","file metadata (size, type, hash)","download URL for results"],"categories":["data-processing-analysis","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_6","uri":"capability://tool.use.integration.custom.tool.creation.and.schema.definition.with.modifier.support","name":"custom tool creation and schema definition with modifier support","description":"Composio allows developers to define custom tools by providing OpenAPI schemas or Python/TypeScript function signatures, which are automatically converted to tool schemas and integrated into the tool registry. Custom tools support modifiers (decorators) for adding authentication, rate limiting, logging, and error handling without modifying core tool logic. Custom tools can be versioned and shared across agent deployments.","intents":["I want to add custom tools to Composio without modifying the core platform","I need to wrap internal APIs or legacy systems as Composio tools","I want to add cross-cutting concerns (logging, rate limiting) to tools without duplicating code"],"best_for":["enterprises with internal APIs that need agent integration","teams extending Composio with domain-specific tools","developers building reusable tool libraries"],"limitations":["Custom tools are not automatically discovered by other agents — they must be explicitly registered per session","Schema definition requires manual OpenAPI specification or function signature annotation","Modifiers are applied at registration time — dynamic modifier composition is not supported"],"requires":["Composio SDK (Python or TypeScript)","OpenAPI schema OR function signature with type hints","Tool implementation (HTTP endpoint or Python/TypeScript function)"],"input_types":["OpenAPI schema (JSON/YAML)","function signature with type annotations","modifier decorators (optional)"],"output_types":["registered tool in session","tool schema (normalized to Composio format)","tool metadata (version, modifiers)"],"categories":["tool-use-integration","code-generation-editing"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_7","uri":"capability://tool.use.integration.multi.framework.provider.integration.with.llm.agnostic.tool.execution","name":"multi-framework provider integration with llm-agnostic tool execution","description":"Composio provides provider packages for major LLM frameworks (OpenAI, Anthropic, LangChain, CrewAI, Gemini, Google) that translate between framework-specific function calling formats and Composio's unified tool schema. The provider layer handles framework-specific details (tool definition format, response parsing, error handling) transparently, allowing agents to use Composio tools regardless of underlying LLM provider. Providers are versioned independently and support both synchronous and asynchronous execution.","intents":["I want to use Composio tools with my existing LangChain or CrewAI agent without rewriting tool definitions","I need to switch between OpenAI and Anthropic without changing my tool integration code","I want to use Composio tools in a framework-agnostic way"],"best_for":["teams using multiple LLM frameworks in the same codebase","developers migrating between LLM providers","enterprises building framework-agnostic agent infrastructure"],"limitations":["Provider packages are maintained separately — version mismatches between Composio core and providers can cause compatibility issues","Framework-specific features (e.g., tool_choice in OpenAI) are not uniformly supported across all providers","Async execution is supported but requires framework-specific event loop handling"],"requires":["Composio SDK (Python or TypeScript)","Framework-specific provider package (e.g., composio-openai, composio-langchain)","Framework version compatibility (see provider documentation)"],"input_types":["framework-specific agent or client object","tool names or toolkit","execution mode (sync or async)"],"output_types":["framework-specific tool definitions","execution results in framework format","error details with framework context"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_8","uri":"capability://automation.workflow.toolkit.version.management.with.backward.compatibility","name":"toolkit version management with backward compatibility","description":"Composio maintains versioned toolkit definitions, allowing agents to pin specific versions of tool schemas and implementations. Version management is handled transparently — agents can request a specific toolkit version, and Composio routes tool calls to the appropriate implementation. The system supports semantic versioning and provides migration guides for breaking changes. Deprecated toolkit versions are maintained for backward compatibility.","intents":["I want to pin my agent to a specific version of a toolkit to avoid breaking changes","I need to gradually migrate from one toolkit version to another","I want to understand what changed between toolkit versions before upgrading"],"best_for":["production agents requiring stability and predictability","teams managing multiple agent versions with different toolkit requirements","enterprises with strict change management policies"],"limitations":["Version pinning is per-session — different sessions can use different versions, which may cause consistency issues","Deprecated versions are maintained but may have reduced support and slower updates","Breaking changes in toolkit APIs may require agent code changes even with version pinning"],"requires":["Composio SDK","Toolkit name and version specifier (e.g., 'slack@2.0.0')","Knowledge of version differences (see migration guides)"],"input_types":["toolkit name (string)","version specifier (string, semantic versioning)"],"output_types":["toolkit schema (versioned)","version metadata (release date, breaking changes)","migration guide (if applicable)"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__cap_9","uri":"capability://search.retrieval.tool.search.and.discovery.with.semantic.filtering","name":"tool search and discovery with semantic filtering","description":"Composio provides a tool search API that enables agents and developers to discover tools by name, category, capability, or natural language description. The search layer supports semantic filtering (e.g., 'tools that send messages') and returns ranked results with relevance scores. Search results include tool metadata (authentication requirements, parameters, rate limits) to help agents select appropriate tools. The search index is updated in real-time as new tools are added to the registry.","intents":["I want my agent to search for tools by capability without knowing exact tool names","I need to discover what tools are available for a specific service (e.g., Slack)","I want to filter tools by authentication type or rate limit constraints"],"best_for":["agents with dynamic tool selection based on user intent","developers exploring available tools in the Composio registry","applications building tool discovery UIs"],"limitations":["Semantic search is limited to tool descriptions and metadata — it cannot understand arbitrary natural language queries","Search results are ranked by relevance but may not always match user intent","Search API has rate limits (typically 100 requests/minute) to prevent abuse"],"requires":["Composio API key","Search query (name, category, or semantic description)"],"input_types":["search query (string)","filter criteria (service, category, auth type, optional)","result limit (optional, default 10)"],"output_types":["tool list with metadata (name, description, parameters)","relevance scores","authentication requirements","rate limit information"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"github-composiohq--composio__headline","uri":"capability://tool.use.integration.ai.agent.framework.for.tool.integration.and.execution","name":"ai agent framework for tool integration and execution","description":"Composio is a powerful framework that enables developers to build AI agents capable of executing real-world actions by integrating with over 1000 external tools and APIs, providing a seamless environment for tool discovery and management.","intents":["best AI agent framework","AI framework for tool integration","how to build AI agents with Composio","AI agents for executing tasks","top frameworks for AI tool management"],"best_for":["developers looking to create AI agents"],"limitations":[],"requires":[],"input_types":[],"output_types":[],"categories":["tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":57,"verified":false,"data_access_risk":"high","permissions":["API key for Composio backend (free tier available)","Python 3.9+ or Node.js 18+","Network access to backend.composio.dev/api/v3","Composio API key with authentication scope enabled","OAuth app credentials registered with target services (Client ID, Client Secret)","User session context (user_id or session_id) to scope credentials","Node.js 18+","Composio CLI installed (npm install -g @composio/cli)","Composio API key (for some commands)","Composio SDK"],"failure_modes":["Schema discovery is read-only from the central registry — custom tools require manual schema definition","Tool registry updates have eventual consistency; newly added tools may take minutes to propagate","OpenAPI schemas are normalized to Composio's format, which may lose some provider-specific metadata","OAuth flows require a configured redirect URI pointing back to Composio's auth service — custom redirect URIs are not supported","Credential storage is tied to Composio's backend; no option for self-hosted credential vaults","Token refresh is automatic but may introduce 100-500ms latency on first tool invocation after expiration","CLI is Node.js-based — requires Node.js 18+ installation","Some commands require Composio API key for authentication","Interactive mode is limited compared to programmatic SDK usage","Context storage is in-memory by default — no built-in persistence across server restarts","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.7829513311471534,"quality":0.5,"ecosystem":0.6000000000000001,"match_graph":0.25,"freshness":0.75,"weights":{"adoption":0.3,"quality":0.2,"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:57:06.483Z","last_commit":"2026-05-02T10:16:36Z"},"community":{"stars":28014,"forks":4544,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=composiohq--composio","compare_url":"https://unfragile.ai/compare?artifact=composiohq--composio"}},"signature":"IIzH7bwpQxQluu99l1CdUT9Si/0Phm/Hp/vy/WIPA7BqZ8lhnrubelnXeMwVd/i8+s+VZP54jaqRgwouMpimCg==","signedAt":"2026-06-20T19:04:28.041Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/composiohq--composio","artifact":"https://unfragile.ai/composiohq--composio","verify":"https://unfragile.ai/api/v1/verify?slug=composiohq--composio","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"}}