You've got ToolPiper running. You want Claude Code to start using its over 300 tools. This is the one-line setup, plus the gotchas that explain why it sometimes looks like nothing happened.

Why connect Claude Code to ToolPiper?

Claude Code on its own can read files, run shell commands, and talk to Claude. ToolPiper adds over 300 tools the model can call: local LLM chat, browser automation, screen capture, audio transcription, system control, web scraping, video production, and more. None of them require a network round-trip beyond the editor itself.

The setup adds ToolPiper as an HTTP MCP server inside Claude Code's MCP registry. Once registered, every new Claude Code session sees ToolPiper's tools alongside the built-in ones. The model picks tools based on the conversation, same as always.

One concrete example: "take a screenshot, OCR the visible text, then summarize what's on screen." Claude Code without ToolPiper can't do this. With ToolPiper, the model calls vision_screenshot, then vision_ocr on the result, then summarizes. All from the same prompt.

How do I add ToolPiper to Claude Code?

Run claude mcp add --transport http toolpiper http://127.0.0.1:9998/mcp. Add -s user if you want the registration available in every project. Restart your Claude Code session to pick up the new tools.

The full command, with the scope flag included:

claude mcp add -s user --transport http toolpiper http://127.0.0.1:9998/mcp

Three parts to it:

  • -s user. Scope. Without it, the registration only applies to the current project directory. With it, every Claude Code session you start on this Mac sees ToolPiper.
  • --transport http. Transport. ToolPiper exposes MCP over HTTP at http://127.0.0.1:9998/mcp. The default transport is stdio, which expects a process to spawn. Skip this flag and you'll see "command not found".
  • toolpiper. Server name. Shows up in tool listings as the prefix on tool names.

Run the command, then start a new Claude Code session. The previous session was loaded before the MCP registration, so it doesn't know about ToolPiper. The next one will.

How do I verify the connection works?

Run claude mcp list. ToolPiper should appear with status ✓ Connected. If it shows as failed or missing, ToolPiper either isn't running or the registration didn't take.

Sample output of a working setup:

$ claude mcp list
Checking MCP server health...
toolpiper: http://127.0.0.1:9998/mcp (HTTP) - ✓ Connected

For an even tighter check, ask Claude Code something only ToolPiper can do. Try "take a screenshot of my screen" in a chat. If the model calls vision_screenshot and returns the result, the setup is wired correctly.

What does -s user vs project scope mean?

Claude Code stores MCP registrations in two places. A project-local .mcp.json file checked into the repo, and a user-level config in ~/.claude.json. -s user writes to the user-level config so every project sees ToolPiper. Without it, only the current project sees it.

Three reasons to use -s user:

  • You want ToolPiper available everywhere by default, without re-running the add command in each new project.
  • You don't want to commit ToolPiper into .mcp.json in shared repositories. That can leak machine-specific config to teammates who don't have ToolPiper installed.
  • You're setting up a brand-new Mac and want to be done with MCP setup permanently.

One reason not to: you want ToolPiper available in specific projects but not others. In that case, run the command without -s user from each project directory you want it in.

What if Claude Code can't see ToolPiper?

Four checks in order. ToolPiper is running. The MCP registration succeeded. You restarted Claude Code. The HTTP endpoint actually responds.

The first three almost always cover it. Run through them:

  1. ToolPiper is running. Look for the ToolPiper icon in your menu bar. If it's not there, launch the app. The MCP server only exists while the app does.
  2. MCP registration succeeded. Run claude mcp list. ToolPiper should appear. If it doesn't, re-run the add command. If the command errors with "already exists", remove it with claude mcp remove toolpiper and add it again.
  3. Claude Code restarted. Exit the current session. Start a fresh one from the same directory. The new session re-reads MCP config.
  4. HTTP endpoint responds. curl http://127.0.0.1:9998/health. A JSON response with "status": "ok" means the server is alive. Connection refused means ToolPiper isn't actually running, even if the menu bar icon suggests otherwise.

If all four pass and Claude Code still doesn't see the tools, check ToolPiper's logs. curl "http://127.0.0.1:9998/logs?level=error&limit=20" dumps the last 20 errors. MCP discovery failures show up there with stack traces.

For full setup options across other editors, see MCP Setup on Mac.