{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"awesome-linked-api","slug":"linked-api","name":"Linked API","type":"mcp","url":"https://github.com/Linked-API/linkedapi-mcp.git","page_url":"https://unfragile.ai/linked-api","categories":["mcp-servers"],"tags":[],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"awesome-linked-api__cap_0","uri":"capability://tool.use.integration.linkedin.account.automation.via.mcp.protocol","name":"linkedin account automation via mcp protocol","description":"Exposes LinkedIn account control through the Model Context Protocol (MCP), enabling AI assistants to execute authenticated actions on LinkedIn accounts by translating natural language intents into Linked API calls. The MCP server acts as a bridge between Claude/other LLM clients and the Linked API backend, handling OAuth token management, request serialization, and response parsing to maintain a stateless interface for AI agents.","intents":["I want my AI assistant to post content to my LinkedIn feed automatically","Enable Claude to manage my LinkedIn profile and connections on my behalf","Let an AI agent handle LinkedIn engagement tasks without manual intervention","Integrate LinkedIn automation into my agentic workflow without building custom API clients"],"best_for":["AI engineers building autonomous LinkedIn management agents","Founders automating content distribution across LinkedIn","Teams integrating LinkedIn workflows into Claude-based applications","Developers prototyping multi-platform social media automation"],"limitations":["Requires valid Linked API credentials and active subscription to Linked API service","MCP protocol overhead adds latency per request (typically 200-500ms round-trip)","LinkedIn API rate limits apply; no built-in request queuing or backoff strategy","No local caching of LinkedIn data — all queries hit Linked API backend in real-time","Depends on Linked API service availability; no fallback mechanism if service is down"],"requires":["Node.js 16+ or Python 3.8+ runtime","Valid Linked API account with API credentials (API key and secret)","MCP-compatible client (Claude Desktop, Cline, or custom MCP client)","LinkedIn account with appropriate permissions granted to Linked API OAuth app","Network connectivity to Linked API backend (linkedapi.io)"],"input_types":["natural language instructions from LLM","structured JSON tool calls with action parameters","LinkedIn profile URLs or user IDs","post content (text, media URLs)"],"output_types":["structured JSON responses with action status","LinkedIn post IDs and metadata","user profile data and connection lists","engagement metrics and activity logs"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-linked-api__cap_1","uri":"capability://data.processing.analysis.real.time.linkedin.data.retrieval.with.structured.extraction","name":"real-time linkedin data retrieval with structured extraction","description":"Fetches live LinkedIn data (profiles, posts, connections, engagement metrics) through Linked API and returns structured JSON responses that LLMs can parse and reason over. The MCP server translates data retrieval requests into Linked API queries, handles pagination for large result sets, and formats responses to match expected schema, enabling AI assistants to make decisions based on current LinkedIn state.","intents":["Retrieve my LinkedIn profile data and connection list to analyze my network","Fetch recent posts from my feed to identify engagement opportunities","Get real-time metrics on post performance to optimize content strategy","Query LinkedIn data to feed into an AI decision-making pipeline"],"best_for":["Content strategists using AI to analyze LinkedIn engagement patterns","Sales teams building AI-powered lead research tools","Researchers analyzing LinkedIn network structure and influence","Developers building analytics dashboards powered by LLM reasoning"],"limitations":["Data freshness depends on Linked API's crawl frequency; not guaranteed real-time","LinkedIn's terms of service restrict certain data extraction use cases (e.g., bulk scraping)","Pagination required for large datasets; no built-in streaming or cursor-based iteration","Linked API rate limits restrict query frequency (typically 100-1000 requests/day depending on plan)","No local caching; repeated queries for same data incur additional API costs"],"requires":["Linked API account with data retrieval permissions","Valid LinkedIn account linked to Linked API","MCP client with tool-calling support","Network access to Linked API endpoints"],"input_types":["LinkedIn profile URLs or user IDs","query parameters (date ranges, engagement thresholds, connection filters)","pagination tokens or offsets"],"output_types":["JSON objects with profile metadata (name, headline, connections, endorsements)","post data with engagement metrics (likes, comments, shares, impressions)","connection lists with relationship metadata","activity feeds with timestamps and action types"],"categories":["data-processing-analysis","search-retrieval"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-linked-api__cap_2","uri":"capability://tool.use.integration.mcp.tool.schema.generation.for.linkedin.actions","name":"mcp tool schema generation for linkedin actions","description":"Dynamically generates MCP-compliant tool schemas that describe available LinkedIn actions (post creation, profile updates, connection requests, etc.) with proper input validation, parameter types, and descriptions. The server introspects Linked API's capabilities and exposes them as MCP tools, enabling LLM clients to understand available actions through schema inspection and perform type-safe function calling.","intents":["I want Claude to understand what LinkedIn actions it can perform and their parameters","Generate tool definitions that validate user input before sending to LinkedIn","Enable my LLM client to discover available LinkedIn capabilities dynamically","Ensure type safety when passing LinkedIn action parameters from natural language"],"best_for":["LLM application developers building LinkedIn automation features","Teams implementing agentic workflows with strict input validation","Developers integrating multiple MCP servers and needing schema discovery","Organizations requiring audit trails of what actions LLMs can perform"],"limitations":["Schema generation is static at server startup; changes to Linked API require server restart","No built-in schema versioning; breaking changes in Linked API may require client updates","Schema validation happens at MCP level but doesn't prevent LinkedIn-side validation failures","Complex nested parameters may not translate cleanly to MCP schema format"],"requires":["MCP client that supports tool schema inspection (Claude, Cline, custom clients)","Linked API account with documented action endpoints","Node.js or Python runtime with MCP server implementation"],"input_types":["MCP tool discovery requests (no input required for schema generation)"],"output_types":["JSON Schema objects describing tool parameters","tool descriptions and usage documentation","parameter type definitions (string, number, enum, object)","required vs optional parameter specifications"],"categories":["tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-linked-api__cap_3","uri":"capability://tool.use.integration.oauth.token.lifecycle.management.for.linkedin.authentication","name":"oauth token lifecycle management for linkedin authentication","description":"Manages LinkedIn OAuth tokens (access and refresh tokens) on behalf of the MCP client, handling token refresh cycles, expiration detection, and re-authentication flows transparently. The server stores and rotates credentials securely, ensuring that LinkedIn API calls always use valid tokens without requiring the LLM client to manage authentication state directly.","intents":["Keep my LinkedIn session authenticated without manually refreshing tokens","Ensure my AI assistant can perform LinkedIn actions even after token expiration","Delegate credential management to the MCP server instead of handling it in my application","Maintain long-running LinkedIn automation workflows without authentication interruptions"],"best_for":["Developers building long-running LinkedIn automation agents","Teams deploying MCP servers in production with persistent LinkedIn access","Applications requiring hands-off LinkedIn authentication without user intervention","Multi-tenant systems managing LinkedIn credentials for multiple users"],"limitations":["Token storage security depends on MCP server's environment (no built-in encryption specified)","No distributed token management; tokens stored locally on MCP server instance","LinkedIn's OAuth token lifetime is fixed (typically 1 hour access, 1 year refresh); no customization","Token revocation (e.g., user changes LinkedIn password) not detected until next API call fails","No audit logging of token usage or refresh events built-in"],"requires":["Initial LinkedIn OAuth authorization (one-time user action)","Secure storage mechanism for tokens (environment variables, encrypted config, or secrets manager)","Network access to LinkedIn's OAuth endpoints for token refresh","Linked API credentials to proxy LinkedIn authentication"],"input_types":["LinkedIn OAuth authorization code (initial setup)","stored refresh tokens (for subsequent sessions)"],"output_types":["valid access tokens for LinkedIn API calls","token expiration timestamps","authentication status indicators"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-linked-api__cap_4","uri":"capability://automation.workflow.error.handling.and.linkedin.api.failure.recovery","name":"error handling and linkedin api failure recovery","description":"Catches LinkedIn API errors (rate limits, authentication failures, network timeouts) and translates them into meaningful error messages that LLM clients can understand and act upon. The server implements retry logic for transient failures, provides structured error responses with recovery suggestions, and prevents cascading failures when LinkedIn is temporarily unavailable.","intents":["Get clear error messages when a LinkedIn action fails so my agent can retry intelligently","Automatically retry failed LinkedIn requests without manual intervention","Understand rate limit errors and back off appropriately","Gracefully handle LinkedIn service outages without crashing my automation workflow"],"best_for":["Developers building resilient LinkedIn automation agents","Teams running long-running LinkedIn workflows that must tolerate transient failures","Applications requiring detailed error reporting for debugging LinkedIn integration issues","Systems needing automatic recovery from rate limits and temporary outages"],"limitations":["Retry logic is server-side only; no client-side retry coordination","No exponential backoff configuration exposed to MCP clients; retry strategy is fixed","LinkedIn's rate limit headers may not be fully parsed; backoff timing may be suboptimal","Network timeouts are retried but no circuit breaker pattern to prevent cascading failures","Error messages depend on Linked API's error response format; LinkedIn API changes may break parsing"],"requires":["MCP client that handles error responses in tool calls","Linked API error documentation to understand error codes and recovery strategies","Network resilience (timeouts configured appropriately for LinkedIn's response times)"],"input_types":["failed LinkedIn API requests (automatic detection)"],"output_types":["structured error objects with error codes and messages","recovery suggestions (e.g., 'retry after 60 seconds' for rate limits)","retry status indicators","detailed error logs for debugging"],"categories":["automation-workflow","safety-moderation"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"awesome-linked-api__cap_5","uri":"capability://automation.workflow.multi.account.linkedin.management.with.credential.isolation","name":"multi-account linkedin management with credential isolation","description":"Supports managing multiple LinkedIn accounts through a single MCP server instance by maintaining separate OAuth token stores and request contexts for each account. The server routes actions to the correct LinkedIn account based on account identifiers passed in tool calls, ensuring credential isolation and preventing cross-account data leaks.","intents":["Manage multiple LinkedIn accounts from a single AI agent without switching servers","Keep LinkedIn credentials for different accounts isolated and secure","Route LinkedIn actions to the correct account based on agent instructions","Build multi-account LinkedIn automation workflows (e.g., cross-posting to multiple profiles)"],"best_for":["Agencies managing LinkedIn accounts for multiple clients","Enterprises with multiple LinkedIn profiles (corporate, personal, brand accounts)","Developers building SaaS platforms with LinkedIn automation for multiple users","Teams coordinating LinkedIn presence across multiple brand accounts"],"limitations":["No built-in account switching UI; account selection must be explicit in tool calls","Token storage scales linearly with number of accounts; no documented limits","No account-level access control; all accounts accessible to any MCP client connected to server","Account context not persisted across MCP server restarts; requires re-authentication","No audit trail of which account performed which action"],"requires":["Multiple LinkedIn accounts with OAuth authorization to Linked API","MCP client that can specify account identifiers in tool calls","Secure token storage mechanism that scales with number of accounts"],"input_types":["account identifier (LinkedIn user ID or email) in tool call parameters","action parameters specific to the selected account"],"output_types":["action results tagged with account identifier","account-specific data (posts, profiles, connections)"],"categories":["automation-workflow","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":29,"verified":false,"data_access_risk":"high","permissions":["Node.js 16+ or Python 3.8+ runtime","Valid Linked API account with API credentials (API key and secret)","MCP-compatible client (Claude Desktop, Cline, or custom MCP client)","LinkedIn account with appropriate permissions granted to Linked API OAuth app","Network connectivity to Linked API backend (linkedapi.io)","Linked API account with data retrieval permissions","Valid LinkedIn account linked to Linked API","MCP client with tool-calling support","Network access to Linked API endpoints","MCP client that supports tool schema inspection (Claude, Cline, custom clients)"],"failure_modes":["Requires valid Linked API credentials and active subscription to Linked API service","MCP protocol overhead adds latency per request (typically 200-500ms round-trip)","LinkedIn API rate limits apply; no built-in request queuing or backoff strategy","No local caching of LinkedIn data — all queries hit Linked API backend in real-time","Depends on Linked API service availability; no fallback mechanism if service is down","Data freshness depends on Linked API's crawl frequency; not guaranteed real-time","LinkedIn's terms of service restrict certain data extraction use cases (e.g., bulk scraping)","Pagination required for large datasets; no built-in streaming or cursor-based iteration","Linked API rate limits restrict query frequency (typically 100-1000 requests/day depending on plan)","No local caching; repeated queries for same data incur additional API costs","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.37,"ecosystem":0.39999999999999997,"match_graph":0.25,"freshness":0.6,"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-06-17T09:51:03.577Z","last_scraped_at":"2026-05-03T14:00:15.503Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=linked-api","compare_url":"https://unfragile.ai/compare?artifact=linked-api"}},"signature":"oJjAnIRz87PbVywJ+b1JAPlrGEvLSvOQ/KX1aiVg0ZahUx+z6/elgqePbqlltKYtrKBZw1ZKefvf/OtGyu9yBQ==","signedAt":"2026-06-21T20:37:14.993Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/linked-api","artifact":"https://unfragile.ai/linked-api","verify":"https://unfragile.ai/api/v1/verify?slug=linked-api","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"}}