Hookmark MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add hookmark -- npx -y hookmark-mcp
README.md

Connect files, URLs, emails, and notes with bidirectional links on macOS.


links: "[[Ideaverse/AI/Hook/Hook|Hook]]"

hookmark-mcp

MCP server that gives Claude Code (and other MCP clients) full access to Hookmark — the macOS app that creates bidirectional links between files, URLs, emails, notes, and anything else with an address.

Link a PDF to an email. Connect a note to a webpage. Find everything related to a project. All through natural language.

How It Works

Claude Code  ──MCP──▶  hookmark-mcp  ──shell──▶  hook CLI  ──▶  Hookmark.app
                        (this server)              (v2.1.3)       (macOS)

The server wraps Hookmark's hook CLI as seven MCP tools. Claude calls them like any other tool — you just talk normally:

  • "Link my TODO to that PDF on the desktop"
  • "What's connected to this file?"
  • "Search hookmark for everything about invoices"
  • "Hook whatever's open in Mail to this project"

You never need to remember tool names or parameters.

Quick Start

Prerequisites:

  • macOS with Hookmark installed
  • Hookmark's hook CLI (gem install hookmark or installed with Hookmark)
  • Node.js 18+ or Bun

Install with Claude Code:

Tell Claude:

"Install the hookmark MCP server from github.com/mnott/Hook"

Claude will clone the repo, build it, and add it to your MCP config.

Manual install:

Add to your Claude Code MCP config (~/.claude.json):

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

Or with Bun:

{
  "mcpServers": {
    "hookmark": {
      "command": "bunx",
      "args": ["hookmark-mcp"]
    }
  }
}

Restart Claude Code. The tools are ready.

From source (development):

git clone https://github.com/mnott/Hook.git
cd Hook
bun install
bun run build

Then point your MCP config to the local build:

{
  "mcpServers": {
    "hookmark": {
      "command": "node",
      "args": ["/path/to/Hook/dist/index.js"]
    }
  }
}

Tools at a Glance

Tool What it does Example
hookmark_link Get a hook:// URL for any file or URL "Get me a hook URL for this file"
hookmark_connect Link two items bidirectionally "Link this note to that PDF"
hookmark_list Show everything linked to an item "What's linked to this file?"
hookmark_search Search all bookmarks by keyword "Find all bookmarks about 'project X'"
hookmark_remove Unlink two items "Remove the link between these two files"
hookmark_clone Copy all links from one item to another "This file replaced that one — copy its links"
hookmark_frontmost Grab a hook URL from whatever's open in an app "Get me a hook for whatever's open in Mail"

User Guide

You never need to remember tool names or parameters — just describe what you want in plain English. Here are the things you can do, organized by what you're trying to accomplish.

Connecting Things

The core of Hookmark is bidirectional links. When you connect two items, each one knows about the other.

"Link my TODO.md to the project requirements PDF on the desktop"

"Connect this source file to the GitHub issue at https://github.com/org/repo/issues/42"

"Hook the meeting notes to the presentation slides"

"Link every .ts file in src/ to the architecture document"

You can link files to files, files to URLs, URLs to URLs — anything with an address.

Finding Connections

Once things are linked, you can explore the web of connections from any starting point.

"What's hooked to this file?"

"Show me everything connected to the project plan"

"List all hooks for src/index.ts in verbose format"

"What files are linked to https://github.com/mnott/Hook?"

"Show me all my Hookmark bookmarks"

Omit the item to list everything. Ask for different output formats — paths, markdown links, hook:// URLs, or verbose details with titles and addresses.

Searching

Search across all your Hookmark bookmarks by keyword — it searches both names and URLs.

"Search hookmark for 'invoice'"

"Find all bookmarks related to the quarterly report"

"Search hookmark for anything mentioning 'API design'"

"Search just bookmark names for 'meeting' — don't search URLs"

"Search hookmark for 'budget' but only show files, no emails"

Working with Apps

Hookmark can reach into the frontmost window of any macOS app and grab a reference to whatever's active — the open document, email, note, task, or webpage.

"Get me a hook for whatever's open in Mail"

"Hook the current Obsidian note to this project"

"Link whatever's open in Finder to my TODO"

"Grab a hook URL from Safari and connect it to the design doc"

Supported apps include Finder, Mail, Safari, Obsidian, Bear, DEVONthink, Xcode, and any app that Hookmark supports (most document-based macOS apps).

Moving and Reorganizing

Tools (7)

hookmark_linkGet a hook:// URL for any file or URL.
hookmark_connectLink two items bidirectionally.
hookmark_listShow everything linked to an item.
hookmark_searchSearch all bookmarks by keyword.
hookmark_removeUnlink two items.
hookmark_cloneCopy all links from one item to another.
hookmark_frontmostGrab a hook URL from whatever's open in an app.

Configuration

claude_desktop_config.json
{"mcpServers": {"hookmark": {"command": "npx", "args": ["-y", "hookmark-mcp"]}}}

Try it

Link my TODO.md to the project requirements PDF on the desktop.
What's connected to this file?
Search hookmark for everything about invoices.
Get me a hook for whatever's open in Mail.
Connect this source file to the GitHub issue at https://github.com/org/repo/issues/42

Frequently Asked Questions

What are the key features of Hookmark MCP Server?

Bidirectional linking between files, URLs, emails, and notes. Natural language interface for managing links. Integration with macOS frontmost application windows. Keyword-based search across all Hookmark bookmarks. Support for cloning links between items.

What can I use Hookmark MCP Server for?

Linking project documentation files to relevant GitHub issues. Connecting meeting notes to specific presentation slides. Linking email threads to local project files for quick reference. Managing cross-references between different code files in a repository.

How do I install Hookmark MCP Server?

Install Hookmark MCP Server by running: npx -y hookmark-mcp

What MCP clients work with Hookmark MCP Server?

Hookmark MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Hookmark MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare