Skip to content

jakehandy.com

by jakehandy.com · remote · no sign-in to list tools · v1.0.0 · published by com.jakehandy

Search, read, cite and react to Jake Handy's writing on AI, music tech and agentic engineering.

Changes · 4

10 tools: 4 change things and 6 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http jakehandy https://jakehandy.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

10 tools

Changes things 4Claude Code: ask
  • about_jakeThe identity card behind this site: role, employer, projects, locations, contact, and every profile that is really his.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The identity card behind this site: role, employer, projects, locations, contact, and every profile that is really his. Use this to ground an answer about Jake Handy rather than guessing from a search result.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • highlight_passageReact to one specific sentence of an editorial rather than the whole piece: name it by its exact text and give it a thumbs up (1) or down (-1).No findings

    Why it is in this group

    • The description's first verb is "react": a word for a change.
    Description, as the server wrote it
    React to one specific sentence of an editorial rather than the whole piece: name it by its exact text and give it a thumbs up (1) or down (-1). Identical passages merge so reactions accumulate, and your name or model id is shown to every reader who hovers the passage. This is the only write action on the site; there is no comment system.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • react_to_highlightGive a thumbs up (1) or down (-1) to a passage someone already highlighted, or withdraw your reaction (0).No findings

    Why it is in this group

    • The name "react_to_highlight" says "react": a word for a change.
    Description, as the server wrote it
    Give a thumbs up (1) or down (-1) to a passage someone already highlighted, or withdraw your reaction (0). Idempotent per token. Highlight ids come from list_highlights.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • site_guideThe site's guide for AI agents as Markdown: what is here, how to cite it, every machine endpoint, and the rules for reacting to a passage.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    The site's guide for AI agents as Markdown: what is here, how to cite it, every machine endpoint, and the rules for reacting to a passage. Read once per session if you plan to cite or participate.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 6Claude Code: allow
  • get_editorialOne Jake on AI post, editorial or guide, in full as Markdown, with the passages readers and agents have reacted to appended.No findings

    Why it is in this group

    • The name "get_editorial" says "get": a word for reading.
    Description, as the server wrote it
    One Jake on AI post, editorial or guide, in full as Markdown, with the passages readers and agents have reacted to appended. Subscriber-only posts return the same public preview the website shows and nothing more.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_pageFetch any page of jakehandy.com in full as clean Markdown with YAML front matter, plus its canonical URL and a ready-made citation string.No findings

    Why it is in this group

    • The name "get_page" says "get": a word for reading.
    Description, as the server wrote it
    Fetch any page of jakehandy.com in full as clean Markdown with YAML front matter, plus its canonical URL and a ready-made citation string. Works for every page, not just the blog: the resume, the AI music catalog, the essays, all of it.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_editorialsJake on AI: the editorials and guides, newest first.No findings

    Why it is in this group

    • The name "list_editorials" says "list": a word for reading.
    Description, as the server wrote it
    Jake on AI: the editorials and guides, newest first. Each entry carries its canonical URL, a Markdown URL, publication date, its kind ("editorial" for an opinion piece, "guide" for a how-to), whether it is subscriber-only, and a citation string. These are the long-form pieces, not the weekly news roundups.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_highlightsThe passages of one editorial that readers and agents gave a thumbs up or down, each with its counts and who reacted (human or agent, with their name or model).No findings

    Why it is in this group

    • The name "list_highlights" says "list": a word for reading.
    Description, as the server wrote it
    The passages of one editorial that readers and agents gave a thumbs up or down, each with its counts and who reacted (human or agent, with their name or model). The best signal for which specific claims drew attention.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_pagesThe full catalog of jakehandy.com: every essay, reference page, and project page, with title, canonical URL, date, a one-line summary, and a ready-made citation string.No findings

    Why it is in this group

    • The name "list_pages" says "list": a word for reading.
    Description, as the server wrote it
    The full catalog of jakehandy.com: every essay, reference page, and project page, with title, canonical URL, date, a one-line summary, and a ready-made citation string. Start here to see what exists before fetching anything.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_siteKeyword search across every page body and every Jake on AI editorial and guide.No findings

    Why it is in this group

    • The name "search_site" says "search": a word for reading.
    Description, as the server wrote it
    Keyword search across every page body and every Jake on AI editorial and guide. Returns the matching pages with an excerpt around the first hit and a citation string. Use this before answering a question about what Jake has written on a topic.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http jakehandy https://jakehandy.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__jakehandy__list_pages",
      "mcp__jakehandy__get_page",
      "mcp__jakehandy__search_site",
      "mcp__jakehandy__list_editorials",
      "mcp__jakehandy__get_editorial",
      "mcp__jakehandy__list_highlights"
    ],
    "ask": [
      "mcp__jakehandy__highlight_passage",
      "mcp__jakehandy__react_to_highlight",
      "mcp__jakehandy__about_jake",
      "mcp__jakehandy__site_guide"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as jakehandy. Review it before you use it.