Skip to main content
Glama
Fisher521

bookmarks-mcp

bookmarks-mcp

Your bookmarks, wherever they live, readable by your AI.

Everyone saves. Browsers, read-later apps, that Pocket export from 2023 — capture is a solved problem. Processing is not: the average bookmark is saved once and never touched again. AI assistants are the first thing that can actually process a pile like that — summarize, triage, turn it into a to-do list — but they can't see it.

This is a local, read-only MCP server that fixes the "can't see it" part.

One command in your MCP client config. Zero accounts. Nothing is ever sent to us.

Sources

Source

How

Notes

Chrome, Edge, Brave, Arc, Vivaldi, Chromium

reads each profile's local Bookmarks file

every profile auto-detected

Safari (macOS)

reads ~/Library/Safari/Bookmarks.plist

includes your Reading List; no extension can do this — Safari's extension API has no bookmarks surface

Firefox

reads places.sqlite per profile

needs Node ≥ 22.5 (built-in sqlite); degrades gracefully below

Export files

Pocket CSV, Instapaper CSV, Raindrop CSV, browser HTML, URL lists

via parse-bookmarks

Phone bookmarks: reachable once they sync to your desktop (iCloud → Safari on Mac, Chrome sync → desktop profile). There is no way for any third-party tool to read Safari bookmarks directly on iOS.

Related MCP server: x-bookmarks-mcp

Install

No account, no API key, no configuration — the server works the moment it's installed.

Claude Code:

claude mcp add -s user bookmarks -- npx -y bookmarks-mcp

Use -s user. The scope defaults to local, which only registers the server for the directory you ran the command in. Your bookmarks aren't tied to one project, so register it account-wide.

Claude Desktop / Cursor / any MCP client (mcpServers JSON):

{
  "mcpServers": {
    "bookmarks": {
      "command": "npx",
      "args": ["-y", "bookmarks-mcp"]
    }
  }
}

To run from source instead (for development), clone this repo next to its dependency parse-bookmarks (the two directories must be siblings), run npm install in bookmarks-mcp, and point your client at node /absolute/path/to/bookmarks-mcp/src/index.js.

macOS + Safari: the app hosting the server (Claude Desktop, your terminal) needs Full Disk Access (System Settings → Privacy & Security), because ~/Library/Safari is protected. Chromium browsers and Firefox need nothing.

Tools

Tool

What it does

list_sources

every bookmark source found on this machine

list_bookmarks

list, with folder filter + pagination

search_bookmarks

search titles / URLs / folders / tags

recent_bookmarks

"what did I save this week?"

bookmark_stats

the state of the pile: counts, age distribution, top domains

parse_export_file

parse a Pocket/Instapaper/Raindrop/HTML export from disk

export_bookmarks

everything out as Markdown, CSV, JSON, or importable browser HTML

fetch_page_preview

a few-hundred-token preview of a page (title, description, headings, excerpt) instead of the raw HTML — for when title/URL alone can't be triaged

Turn the pile into a to-do list

The reason this exists. Ask your assistant:

Look at my bookmark stats, then help me triage: which of these become deep reads, which are tools to try, which feed a project I'm working on, and which should I finally let go? Give me a checklist for this week.

Or use the built-in triage_bookmarks prompt, which walks through exactly that — including asking you to define what your saves usually become, so the lanes are yours, not ours.

Guarantees

  • Read-only. This server never writes to a browser file. There is no delete tool. Your bookmarks cannot be harmed.

  • Zero phone-home. No telemetry, no accounts, and not a single byte sent to us. The server talks to exactly two places: your local bookmark files, and — only when you ask it to preview a page — the bookmarked site itself, directly from your machine.

  • Clean output. Tool results are data. No ads, no upsells, ever.

Design boundaries

These are deliberate, not gaps waiting to be filled. PRs that cross them will be declined:

  • Preview-level extraction only. fetch_page_preview answers "is this worth my time" — it is not a reader mode and never will be a full-fidelity content extractor.

  • Public web pages only. No proxies, no login walls, no special-casing for X/YouTube/WeChat/etc. If a page needs auth to read, this tool isn't the way in.

  • On-demand only. Nothing fetches in the background, ever. Every network call is a direct response to a tool call you made.

Roadmap

  • Cloud sources behind user-supplied tokens (Raindrop, Readwise, …) — one adapter per service. PRs welcome; an adapter is a single well-defined file.

  • Services that already ship their own MCP server don't need us — run both servers and your assistant sees everything. We only cover the places that have no other bridge.

Who makes this

Built by the team behind Burn 451, a read-later app. This server is deliberately neutral: it reads your bookmarks for whatever assistant and whatever workflow you choose, and it never writes to them.

License

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Fisher521/bookmarks-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server