Skip to content

MCP Server

Connect AI assistants like Claude to your StashSync library via the Model Context Protocol (MCP). Read, write, and search your notes and bookmarks directly from your AI tool.

Overview

StashSync exposes an MCP (Model Context Protocol) server at https://api.stashsync.app/mcp. It uses the Streamable HTTP transport and is stateless — each request is independent, with no persistent session.

The MCP server accepts API keys only (ss_live_...). See API & API Keys to create one.


Available tools

ToolDescription
searchFull-text search across notes and bookmarks
list_notesList notes with optional filters
get_noteGet a single note by ID
create_noteCreate a new note (content accepts Markdown)
update_noteUpdate title, content, stash, tags, or pinned state
trash_noteMove a note to trash
restore_noteRestore a trashed note
list_bookmarksList bookmarks with optional filters
get_bookmarkGet a single bookmark by ID
add_bookmarkSave a new bookmark
update_bookmarkUpdate a bookmark
trash_bookmarkMove a bookmark to trash
restore_bookmarkRestore a trashed bookmark
list_stashesList all stashes
create_stashCreate a new stash (name, optional color)
update_stashUpdate a stash's name or color
trash_stashMove a stash to trash (items inside are not deleted)
restore_stashRestore a trashed stash
list_stash_itemsList notes and bookmarks inside a stash
list_tagsList all tags
create_tagCreate a new tag (name, optional color)
update_tagUpdate a tag's name or color
trash_tagMove a tag to trash (tagged items are not deleted)
restore_tagRestore a trashed tag
list_tag_itemsList notes and bookmarks that have a given tag

Setup: Claude Desktop

Claude Desktop does not support Streamable HTTP natively. Use mcp-remote as a stdio bridge — it requires Node.js to be installed.

Add the following to your Claude Desktop config file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "stashsync": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote",
        "https://api.stashsync.app/mcp",
        "--header",
        "Authorization: Bearer ss_live_YOUR_KEY"
      ]
    }
  }
}

Replace ss_live_YOUR_KEY with your actual API key, then restart Claude Desktop.


Setup: Cursor

Cursor supports Streamable HTTP directly. Add to your Cursor MCP config:

{
  "mcpServers": {
    "stashsync": {
      "type": "http",
      "url": "https://api.stashsync.app/mcp",
      "headers": {
        "Authorization": "Bearer ss_live_YOUR_KEY"
      }
    }
  }
}

Setup: Other MCP clients

Any MCP client that supports Streamable HTTP can connect directly:

  • Endpoint: https://api.stashsync.app/mcp
  • Auth header: Authorization: Bearer ss_live_YOUR_KEY

For clients that only support stdio, use mcp-remote as shown in the Claude Desktop setup above.


Usage examples

Once connected, you can talk to your AI assistant naturally:

  • "Save a note with today's meeting summary"
  • "Search my stash for anything about Cloudflare Workers"
  • "Add this URL to my bookmarks with the tag 'reading-list'"
  • "Show me all pinned notes in my Research stash"
  • "Create a stash called 'Side Projects'"
The MCP server operates on the same data as the StashSync app. Changes made via MCP are reflected in the app immediately, and vice versa.

Authentication

The MCP server requires an API key — Clerk session tokens are not accepted. You can't use an API key to create another API key, so key management must be done through the app.

See API & API Keys for instructions on creating and revoking keys.