# Linktree MCP > Manage Linktree profiles, links, appearance, and analytics via the Model Context Protocol. OAuth2-protected (Descope) Model Context Protocol server speaking streamable-http at https://mcp.linktr.ee/mcp. 36 tools. One OAuth grant covers every tool — request no `scope` (or only `offline_access` for a refresh token); per-tool scopes are not used. ## Getting started - [MCP endpoint](https://mcp.linktr.ee/mcp): Streamable-HTTP MCP endpoint (OAuth2 required) - [Server card](https://mcp.linktr.ee/.well-known/mcp/server-card.json): Machine-readable server descriptor and tool preview - [OAuth protected-resource metadata](https://mcp.linktr.ee/.well-known/oauth-protected-resource): RFC 9728 discovery for the authorization server ## Reference - [Tool reference](https://mcp.linktr.ee/docs): Human-readable tool and parameter reference (Markdown) - [Tool manifest](https://mcp.linktr.ee/.well-known/mcp/tools.json): Machine-readable JSON of tools, parameters, and the error contract ## Tools - `get_profile_sharing_guidance` (read): Get the correct Linktree profile URL and steps for adding it to a social bio; does not edit or verify the bio. - `list_accessible_profiles` (read): Retrieve every Linktree profile the authenticated user can access across direct accounts and workspaces. - `set_active_profile` (read): Set the active Linktree profile for the current conversation so later tools target it. - `get_account` (read): Retrieve a Linktree profile's details (display name, bio, avatar, username). - `update_account_profile` (write): Update a Linktree profile's display name and/or bio. - `get_suggested_bio` (read): Retrieve a suggested bio for a Linktree profile based on its existing content. - `get_account_analytics` (read): Retrieve account-level analytics for a Linktree profile (views, clicks, CTR, and optional breakdowns). - `get_analytics_lifetime_totals` (read): Retrieve lifetime analytics totals for a Linktree profile (views, clicks, CTR, earnings). - `get_top_links` (read): Retrieve every link on a Linktree profile ranked by clicks, including links with zero clicks. - `get_profile_views` (read): Retrieve profile view counts for a Linktree profile over a recent time window. - `get_social_integrations` (read): Retrieve the active social integrations connected to a Linktree profile. - `get_appearance` (read): Retrieve a Linktree profile's appearance settings (colors, fonts, button styles, background). - `update_appearance` (write): Update a Linktree profile's appearance (colors, fonts, button styles, background). - `get_knowledge_base` (read): Retrieve a Linktree profile's knowledge base entries (business, product, policy, or FAQ information). - `pull_recommendations` (read): Retrieve available Linktree recommendations for a profile and claim the ones returned for the public MCP. - `submit_recommendation_feedback` (write): Record the creator's per-item decision (acted or dismissed) on a pulled recommendation. - `get_workspaces_for_user` (read): Retrieve every workspace the authenticated user is a member of. - `get_workspace` (read): Retrieve details for a workspace the authenticated user belongs to. - `get_workspace_profiles` (read): Retrieve every Linktree profile belonging to a workspace. - `get_workspace_profiles_analytics` (read): Retrieve lifetime analytics for every Linktree profile in a workspace. - `get_workspace_members` (read): Retrieve the members of a workspace. - `get_links` (read): Retrieve the ordered links on a Linktree profile, including link-app metadata. - `add_link` (write): Add a new URL-backed link to a Linktree profile. - `create_collection` (write): Create a new empty collection on a Linktree profile. - `add_links_to_collection` (write): Move existing top-level links into a collection on a Linktree profile. - `update_link` (write): Update an existing link or collection on a Linktree profile (title, URL, or active state). - `reorder_link` (write): Reorder a top-level link, collection, or collection item on a Linktree profile. - `delete_link` (destructive): Delete a link from a Linktree profile, including a link inside a collection. - `get_link_analytics` (read): Retrieve analytics for a specific link on a Linktree profile (clicks, views, CTR, trend data). - `get_social_links` (read): Retrieve a Linktree profile's social icon links and their display order. - `upsert_social_link` (write): Create or update a social icon link on a Linktree profile for a supported platform. - `reorder_social_links` (write): Move a social icon link to a new position on a Linktree profile. - `delete_social_link` (destructive): Delete a social icon link from a Linktree profile by platform type. - `get_conversations` (read): List the conversations in a Linktree profile's messages inbox. - `get_messages` (read): Read the most recent messages in one inbox conversation. - `send_message` (write): Reply as the creator in a conversation the follower started. ## Errors > Errors are returned as an MCP tool result with `isError: true` and a single text content block containing JSON: `{ "error": "", "message": "" }`. Some codes carry extra fields (e.g. PROFILE_REQUIRED adds `candidates` and `nextAction`). - `PROFILE_REQUIRED`: The caller has multiple accessible profiles (or none selected) and must choose one. The envelope includes `candidates` and a `nextAction`. - `NOT_FOUND`: A referenced resource (link, collection, integration, account) does not exist. - `INVALID_INPUT`: A parameter was missing, empty, or invalid for the requested operation. - `UNAUTHORIZED`: The request is missing required identity/authorization headers or the token cannot act on the target. - `RATE_LIMITED`: The caller exceeded the public MCP rate limit. Retry after backing off. - `UPGRADE_REQUIRED`: The tool or requested option requires a paid Linktree plan. - `PRODUCT_TITLE_READONLY`: The link displays the title of its linked Shop product, which link mutations cannot write. Rename the product in Shop instead. Nothing was changed. - `FEATURED_LAYOUT_INELIGIBLE`: The link does not meet the featured layout prerequisites: a non-SVG image thumbnail that is not an icon, and no animation. Nothing was changed. - `IMAGE_IMPORT_FAILED`: The image URL could not be copied into Linktree-hosted storage, so it was not used. Nothing was changed. Use a different, publicly reachable image URL. - `UPSTREAM_ERROR`: A downstream Linktree service returned an error while handling the request. - `UNEXPECTED_ERROR`: An unclassified error occurred. Safe to retry once; report if it persists.