MCP server that automates Claude Code conversation handoffs — no more manual copy-paste when you hit the message cap.
Project description
claude-handoff-manager
MCP server that automates Claude Code conversation handoffs. No more manual copy-paste when you hit the message cap.
The Problem
When a Claude Code conversation reaches the message limit, it produces a handoff summary. You then have to:
- Copy the handoff text
- Exit / clear the conversation
- Start a new session
- Paste the handoff as the first message
This is tedious and breaks your flow.
The Solution
This MCP server automates the entire handoff cycle:
- End of conversation: Claude calls
save_handoff- the message is saved to disk and copied to your clipboard - New conversation: Say
"continue from last handoff"- Claude callsload_handoffand picks up exactly where you left off
Zero manual copy-paste.
Installation
Option A: uvx from Git (recommended for teams)
Push this repo to your team's Git host, then each developer adds it to their ~/.mcp.json:
{
"mcpServers": {
"handoff-manager": {
"command": "uvx",
"args": ["--from", "git+https://github.com/YOUR_ORG/claude-handoff-manager", "claude-handoff-manager"],
"type": "stdio"
}
}
}
Option B: uvx from PyPI
{
"mcpServers": {
"handoff-manager": {
"command": "uvx",
"args": ["claude-handoff-manager"],
"type": "stdio"
}
}
}
Option C: Run directly (local development)
{
"mcpServers": {
"handoff-manager": {
"command": "python3",
"args": ["/path/to/handoff-manager/src/handoff_manager/server.py"],
"type": "stdio"
}
}
}
After editing ~/.mcp.json, restart Claude Code to pick up the new server.
Tools
| Tool | What it does |
|---|---|
save_handoff |
Saves handoff message to ~/.claude/handoffs/ + copies to clipboard |
load_handoff |
Loads the latest (or a specific) handoff in a new conversation |
copy_handoff_to_clipboard |
Copies a saved handoff to the system clipboard |
list_handoffs |
Lists all saved handoffs with previews |
delete_handoff |
Deletes a specific or all handoffs |
Usage
Saving (end of a conversation)
Claude will automatically call save_handoff when it generates a handoff summary at the message cap. You can also manually trigger it:
"Save a handoff with the current context"
Loading (start of a new conversation)
"Continue from last handoff"
or
"Load handoff"
Claude calls load_handoff and gets the full context from your previous session.
Listing saved handoffs
"Show me my saved handoffs"
Clipboard
"Copy the last handoff to my clipboard"
Storage
Handoffs are stored as JSON files in ~/.claude/handoffs/:
~/.claude/handoffs/
20260611_143022_home-user-myproject.json
20260611_100515_home-user-otherproject.json
Each file contains:
id: Unique identifier (timestamp + project slug)created_at: UTC timestampworking_dir: The project directoryproject_name: Human-friendly namemessage: The full handoff text
Clipboard Support
Automatically copies to clipboard on save using:
- macOS:
pbcopy - Linux X11:
xcliporxsel - Linux Wayland:
wl-copy - Windows:
clip
Requirements
- Python >= 3.10
mcpSDK >= 1.0.0- Claude Code CLI
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_handoff_manager-0.1.0.tar.gz.
File metadata
- Download URL: claude_handoff_manager-0.1.0.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d74c9148b87358e58c497083f389cdf18cf03a0f3693d486d8bc4f65310f18d
|
|
| MD5 |
012e63e7aff88bd0314015477936c5dc
|
|
| BLAKE2b-256 |
1d4b502089e7d3ab63504a2d3bedb6b4f08d44c6022ea54f4d821bbf23978b1c
|
File details
Details for the file claude_handoff_manager-0.1.0-py3-none-any.whl.
File metadata
- Download URL: claude_handoff_manager-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5816169c0b896b08e7839c5327499726b8eda0c22c21829b58ca35a73b5b0830
|
|
| MD5 |
837c9e614124e4fc65a990b9c857f003
|
|
| BLAKE2b-256 |
e61fc4459e4aba4eb94c1fc07e51be5521ac6615f2ff3f4b16f618c4cfbd9ae6
|