MCP server
What it is
A Model Context Protocol server sitting in front of the same API the rest of these pages document. An MCP client connects to one URL, asks what tools are available, and calls them on your behalf. There is nothing to install and nothing to run locally.
- 17 tools, generated from the same OpenAPI document as the API reference and the CLI, so they cannot drift from the endpoints they call.
- Authenticated with a normal key. The same
lw_pat_token you would use from a script, carrying whatever scopes you gave it. - Scoped to the key, not to the assistant. A read-only key makes every write tool fail, whatever the model decides to call.
Connect
Two things: the server URL and a key. Create the key first, from the developer dashboard, with the narrowest scopes that do what you want.
Server URL
https://linkwise.app/mcpThe server is POST-only over Streamable HTTP. A GET returns 405 by design: it never sends unsolicited messages, so there is no stream to open.
Claude Desktop
Add Linkwise as a connector under Settings, or edit the config file directly with the block beside this. Restart the app afterwards, then ask it something only your library would know.
The config file lives at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS and %APPDATA%\Claude\ on Windows.
Claude Code
One command. Scope it to a project or to your user, the way you would any other MCP server.
Other clients
Anything that speaks Streamable HTTP works. Point it at https://linkwise.app/mcp and send the key as an Authorization header. There is no OAuth dance and no client registration.
The server is a proxy in front of a Supabase edge function. The function keeps working on its own URL, so anything already configured against that address stays configured.
What it can reach
Exactly what the key allows, and nothing else. Of the 17 tools, 5 can change something in your library; the rest only read. A key created with read scopes leaves those 5 failing with forbidden, which is the right default for an assistant you are still getting to know.
Tools
Grouped the way the API reference is grouped. Each one links to the endpoint it calls, where the parameters are documented in full.
Links
List saved links newest first. Use when the user wants to browse recent saves rather than search for a topic. Supports filtering by collection, tag, feed, visited and archived state.
cursor?, limit?, collection_id?, tag_id?, feed_id?, archived?, is_visited?, has_insights?, no_collection?, is_email?, sort_by?, sort_order?
Get one saved link by id, including its metadata and any generated insight.
id
Get the full readable article text of a saved link. Use this when the user asks what an article actually says, or asks for a summary of something they saved.
id
Get the transcript of a saved video or podcast link, when one exists.
id
Save a URL to the user's library. Saving the same URL twice is safe and returns the existing link rather than creating a duplicate.
url, title?, description?, collection_id?, tags?
Change a saved link: its title, its description, which collection it is in, or whether it is archived or marked visited.
id, title?, description?, collection_id?, is_visited?, archived?, is_pinned?
Remove a link from the library. Ask the user to confirm before calling this.
id
Replace the tags on a link. Send the complete list of tag names you want it to end up with.
id, tags
Collections
List the user's collections, with how many links each one holds.
Create a new collection to group links under.
name, description?, color_tag?, icon_name?
Highlights
List passages the user highlighted while reading, newest first. Filterable to one link.
cursor?, limit?, link_id?, sort_by?, sort_order?
Search
Search everything the user has saved: links, highlights, tags and collections. Use this first whenever the user asks what they saved, read, or bookmarked about a topic.
q, mode?, cursor?, limit?, collection_id?, tag_id?
Search the text of the user's highlights. Use when they ask about something they marked or annotated.
q, limit?
Discover
Get recommended articles the user has not saved yet, drawn from their interests.
cursor?, limit?, seed?, categories?, kinds?
Feeds
Account
Get the signed-in user's profile: name, username, plan and time zone. Use when you need to know who you are acting for.