剪贴板粘贴MCP
MCP(模型上下文协议)服务器和CLI工具,允许Claude Code从剪贴板粘贴屏幕截图进行分析。
它做什么
此服务器公开了一个名为 paste_clipboard_screenshot 即:
- 使用CGo直接从macOS剪贴板读取图像数据
- 将其保存到临时目录
- 返回文件路径,以便Claude可以读取和分析图像
先决条件
- 转到1.21+
- Xcode命令行工具 (供CGo汇编)
xcode-select --install- 克劳德代码 支持MCP
安装
克隆仓库并运行安装脚本:
git clone https://github.com/HoffsMH/clipboard-paste-mcp.git
cd clipboard-paste-mcp
./install.sh安装脚本将:
- 安装
paste-cbCLI工具$HOME/go/bin - 构建MCP服务器二进制文件
- 在Claude Code注册 用户范围 (全系统可用)
注: 确保 $HOME/go/bin 在PATH中,可以直接使用CLI工具。
验证安装
# List all MCP servers
claude mcp list
# Should show: clipboard-paste-mcp: ✓ Connected
# Get details about this server
claude mcp get clipboard-paste-mcp手动安装
如果您更喜欢手动安装:
# Build and install CLI tool
GOBIN=$HOME/go/bin go install ./cmd/paste-cb
# Build MCP server
go build -o clipboard-paste-mcp
# Register with Claude Code
claude mcp add --scope user --transport stdio clipboard-paste-mcp -- \
"$(pwd)/clipboard-paste-mcp"MCP配置
配置文件位置
Claude Code将MCP服务器配置存储在 ~/.claude.json。用户范围的服务器显示在 mcpServers 按键:
{
"mcpServers": {
"clipboard-paste-mcp": {
"type": "stdio",
"command": "/absolute/path/to/clipboard-paste-mcp",
"args": [],
"env": {}
}
}
}配置详情
| 字段 | 描述 |
|---|---|
type | 运输类型。总是 "stdio" 对于此服务器 |
command | 绝对路径 到服务器二进制文件(必需) |
args | 命令行参数(此服务器为空) |
env | 环境变量(无需) |
重要提示: 这 command 字段必须是绝对路径。相对路径和 ~ JSON配置中不支持扩展。安装脚本会自动处理此问题。
范围
- 用户范围 (推荐):适用于所有项目。Config住在
~/.claude.json在...之下mcpServers - 项目范围:仅在一个项目中可用。Config住在
~/.claude.json在...之下 `projects.
.mcpServers`
安装脚本在用户范围内注册,因此该工具在任何地方都可用。
用法
MCP工具(克劳德代码)
在任何Claude Code会话中,您现在都可以说:
- “使用粘贴剪贴板截图工具”
- “粘贴并分析我的剪贴板”
- “我的剪贴板里有什么?”
克劳德将:
- 打电话给
paste_clipboard_screenshot工具 - 从工具响应中获取文件路径
- 使用阅读工具查看屏幕截图
- 分析并与您讨论
CLI工具
# Paste clipboard image to current directory
paste-cb
# Paste to specific directory
paste-cb /path/to/dir输出: screenshot-YYYY-MM-DD-HHMMSS.png
运作原理
User copies screenshot to clipboard
↓
User asks Claude to analyze clipboard
↓
Claude calls paste_clipboard_screenshot tool (via MCP)
↓
MCP Server uses golang.design/x/clipboard (CGo → NSPasteboard)
↓
Image saved to temp directory, path returned to Claude
↓
Claude reads the file and analyzes it建筑
实施使用 golang.design/x/clipboard,它通过CGo提供对macOS NSPasteboard的直接访问。不需要shell脚本或外部命令。
文件
| 文件 | 目的 |
|---|---|
main.go | MCP服务器实现 |
cmd/paste-cb/main.go | CLI工具实施 |
install.sh | 安装脚本 |
test.sh | 集成测试脚本 |
测试
自动化集成测试
运行集成测试脚本:
# First, copy an image to clipboard (e.g., Cmd+Shift+4 for screenshot)
./test.sh脚本测试:
- CLI和MCP服务器构建成功
- CLI将剪贴板图像保存到指定目录
- 输出文件是具有正确权限的有效PNG(644)
- 文件名格式匹配
screenshot-YYYY-MM-DD-HHMMSS.png - 如果缺少目录,CLI会自动创建目录
手动测试
CLI工具:
# 1. Copy a screenshot to clipboard (Cmd+Shift+4, select area)
# 2. Run CLI tool
$HOME/go/bin/paste-cb /tmp/test-clipboard
# 3. Verify output
ls -la /tmp/test-clipboard/screenshot-*.png
file /tmp/test-clipboard/screenshot-*.png # Should show "PNG image data"MCP工具(克劳德代码):
- 将屏幕截图复制到剪贴板
- 在Claude Code中,说:“使用粘贴剪贴板截图工具”
- Claude将保存图像并读取以供分析
验证MCP注册:
claude mcp list # Should show clipboard-paste-mcp connected
claude mcp get clipboard-paste-mcp # Shows server details and status平台支持
目前 仅限macOS剪贴板库使用CGo和NSPastboard进行剪贴板访问。
故障排除
“剪贴板中没有图像数据”
- 确保你已经复制了一张图片(截图、浏览器中的图片等)
- 文本或文件副本不起作用-剪贴板必须包含图像数据
生成失败,出现CGo错误
- 安装Xcode命令行工具:
xcode-select --install - 确保你有一个可用的C编译器:
cc --version
MCP服务器未连接
- 验证注册:
claude mcp list - 检查二进制路径:
claude mcp get clipboard-paste-mcp - 确保二进制文件存在于注册的路径中
