关于 Mcp Pinterest
Pinterest MCP Server 是一个 MCP 服务,用于按关键词搜索 Pinterest 图片、获取图片详细信息并下载图片。适合需要收集图片素材的 Cursor 用户,支持自定义下载目录、文件名模板和代理。
主要功能
- 01按关键词搜索 Pinterest 图片
- 02获取图片详细信息
- 03搜索并批量下载图片
- 04自定义下载目录与文件名模板
- 05支持 HTTP、HTTPS、SOCKS 代理
- 06支持无头浏览器模式
适用场景
- 01在 Cursor 对话中搜索参考图片
- 02批量下载图片素材到本地目录
- 03在需要代理的网络环境中访问 Pinterest
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露 pinterest_search、pinterest_get_image_info 和 pinterest_search_and_download 三个工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| headless | boolean | 否 | 是否使用无头浏览器模式(默认:true) |
| keyword | string | 是 | 搜索关键词 |
| limit | integer | 否 | 返回的图片数量(默认:10) |
详细介绍
Pinterest MCP 服务
用于 Pinterest 图片搜索和信息检索的模型上下文协议(MCP)服务。
功能
- 按关键词搜索 Pinterest 图片
- 获取 Pinterest 图片的详细信息
- 通过 MCP 与 Cursor IDE 无缝集成
- 支持无头浏览器模式
- 可控制搜索结果数量
- 搜索并下载 Pinterest 图片
前提条件
- Node.js(v18 或更高版本)
- 用于 MCP 集成的 Cursor IDE
安装
使用 NPX(推荐)
使用 Pinterest MCP Server 最简单的方式是通过 npx:
npx pinterest-mcp-server
可以使用命令行选项配置服务:
# Specify download directory
npx pinterest-mcp-server --downloadDir /path/to/downloads
# Specify filename template
npx pinterest-mcp-server --filenameTemplate "pinterest_{id}"
# Specify both options
npx pinterest-mcp-server --downloadDir ./images --filenameTemplate "pinterest_{id}"
全局安装
如需全局安装软件包并直接从命令行使用:
npm install -g pinterest-mcp-server
安装后,可以通过以下命令运行服务:
pinterest-mcp-server
使用与 NPX 版本相同的命令行选项:
pinterest-mcp-server --downloadDir /path/to/downloads --filenameTemplate "pinterest_{id}"
通过 Smithery 安装
如需通过 Smithery 自动为 Claude Desktop 安装 mcp-pinterest:
npx -y @smithery/cli install mcp-pinterest --client claude
手动安装
-
克隆此仓库:
git clone https://github.com/terryso/mcp-pinterest.git pinterest-mcp-server cd pinterest-mcp-server -
安装依赖:
npm install -
构建服务:
npm run build -
运行服务:
npm start
在 Cursor 中配置为 MCP 服务
-
打开 Cursor IDE
-
前往 Settings(⚙️)> Extensions > MCP
-
点击“Add Server”
-
输入以下详细信息:
- 名称:Pinterest MCP
- 类型:Command
- 命令:
node - 参数:
["/path/to/mcp-pinterest/dist/pinterest-mcp-server.js"]
或者直接编辑 Cursor 的 MCP 配置文件(通常位于
~/.cursor/mcp.json),添加以下内容:"pinterest": { "command": "node", "args": ["/path/to/mcp-pinterest/dist/pinterest-mcp-server.js"] } -
点击“Save”
替代方案:通过 NPX 配置 Cursor
也可以将 Cursor 配置为使用此服务的 npx 版本:
- 打开 Cursor IDE
- 前往 Settings(⚙️)> Extensions > MCP
- 点击“Add Server”
- 输入以下详细信息:
- 名称:Pinterest MCP
- 类型:Command
- 命令:
npx - 参数:
["pinterest-mcp-server"]
- 点击“Save”
包含环境变量的完整配置示例
如需获得最大的灵活性,可以在 Cursor MCP 配置中通过环境变量配置服务:
"pinterest": {
"command": "npx",
"env": {
"MCP_PINTEREST_DOWNLOAD_DIR": "/Users/xxx/Desktop/Images",
"MCP_PINTEREST_FILENAME_TEMPLATE": "pin_{imageId}_{timestamp}.{fileExtension}",
"MCP_PINTEREST_PROXY_SERVER": "http://127.0.0.1:7890"
},
"args": ["pinterest-mcp-server"]
}
此配置:
- 使用 npx 运行服务
- 在桌面上设置自定义下载目录
- 使用同时包含图片 ID 和时间戳的自定义文件名模板
- 为 Pinterest 可能遭到屏蔽的地区用户配置代理服务
将此配置添加到 ~/.cursor/mcp.json 文件中,或通过 Cursor IDE 界面进行设置。
可用的 MCP 函数
此服务提供以下 MCP 函数:
-
pinterest_search:按关键词搜索 Pinterest 图片- 参数:
keyword:搜索词(必填)limit:要返回的图片数量(默认值:10)headless:是否使用无头浏览器模式(默认值:true)
- 参数:
-
pinterest_get_image_info:获取 Pinterest 图片的详细信息- 参数:
image_url:Pinterest 图片的 URL(必填)
- 参数:
-
pinterest_search_and_download:搜索并下载 Pinterest 图片- 参数:
keyword:搜索词(必填)limit:要返回的图片数量(默认值:10)headless:是否使用无头浏览器模式(默认值:true)
- 参数:
在 Cursor 中的使用示例
配置完成后,你可以直接在 Cursor 的 AI 聊天中使用 Pinterest MCP 函数:
Search for robot images on Pinterest
AI 将使用 MCP 服务搜索 Pinterest 并显示结果。
示例截图

截图显示搜索 20 张三上悠亚的图片,所有图片均已成功下载。
开发
项目结构
pinterest-mcp-server.ts:主服务文件dist/pinterest-mcp-server.js:用于生产环境的构建后 JavaScript 文件package.json:项目配置和依赖项
添加新功能
如需添加新的 MCP 函数:
- 修改
pinterest-mcp-server.ts - 使用 MCP SDK 注册新函数
- 实现函数逻辑
- 使用
npm run build重新构建
故障排除
- 如果服务无法启动,请检查端口是否已被占用
- 确保使用
npm install正确安装了所有依赖项 - 确保使用
tsconfig.json文件正确配置了 TypeScript - 如果遇到构建错误,请尝试运行
npm install -D typescript @types/node - 确认网络连接正常,以便访问 Pinterest
许可证
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
配置选项
命令行选项(NPX 模式)
通过 npx 使用服务时,可以使用以下命令行选项进行配置:
-
--downloadDir:指定下载图片的根目录npx pinterest-mcp-server --downloadDir /path/to/downloads -
--filenameTemplate:指定下载图片的文件名模板npx pinterest-mcp-server --filenameTemplate "pin_{imageId}_{timestamp}" -
--port:指定服务监听的端口(默认值:3000)npx pinterest-mcp-server --port 8080 -
--proxyServer:指定用于连接 Pinterest 的代理服务npx pinterest-mcp-server --proxyServer "http://127.0.0.1:7890"
你可以组合使用多个选项:
npx pinterest-mcp-server --downloadDir ./images --filenameTemplate "pinterest_{id}" --port 8080 --proxyServer "http://127.0.0.1:7890"
环境变量
服务还支持使用以下环境变量进行配置:
MCP_PINTEREST_DOWNLOAD_DIR:指定下载图片的根目录。如果未设置,默认使用相对于服务脚本的../downloads目录。MCP_PINTEREST_FILENAME_TEMPLATE:指定下载图片的文件名模板。如果未设置,默认值为pinterest_{imageId}.{fileExtension}。MCP_PINTEREST_PROXY_SERVER:指定用于连接 Pinterest 的代理服务。格式应为protocol://host:port,例如http://127.0.0.1:7890或socks5://127.0.0.1:1080。
这些环境变量可以通过以下几种方式设置:
- 直接在终端中设置(如以下示例所示)
- 在 Cursor MCP 配置中通过
env字段设置(参见完整配置示例) - 在项目根目录下的
.env文件中设置 - 通过 npx 命令行选项设置(如命令行选项部分所示)
用法
设置下载目录
- 使用 npx 和命令行选项:
npx pinterest-mcp-server --downloadDir /path/to/your/download/directory
- 使用环境变量设置下载目录:
# Linux/macOS
export MCP_PINTEREST_DOWNLOAD_DIR=/path/to/your/download/directory
npx pinterest-mcp-server
# Windows (CMD)
set MCP_PINTEREST_DOWNLOAD_DIR=C:\path\to\your\download\directory
npx pinterest-mcp-server
# Windows (PowerShell)
$env:MCP_PINTEREST_DOWNLOAD_DIR="C:\path\to\your\download\directory"
npx pinterest-mcp-server
- 如果未设置环境变量,服务将使用默认下载目录(相对于服务脚本的
../downloads)。
设置文件名模板
- 使用带命令行选项的 npx:
npx pinterest-mcp-server --filenameTemplate "pin_{imageId}_{timestamp}.{fileExtension}"
- 使用环境变量:
# Linux/macOS
export MCP_PINTEREST_FILENAME_TEMPLATE="pin_{imageId}_{timestamp}.{fileExtension}"
npx pinterest-mcp-server
# Windows (CMD)
set MCP_PINTEREST_FILENAME_TEMPLATE="pin_{imageId}_{timestamp}.{fileExtension}"
npx pinterest-mcp-server
# Windows (PowerShell)
$env:MCP_PINTEREST_FILENAME_TEMPLATE="pin_{imageId}_{timestamp}.{fileExtension}"
npx pinterest-mcp-server
模板支持以下变量:
{imageId}:Pinterest 图片的唯一 ID{fileExtension}:文件扩展名(例如,jpg、png){timestamp}:当前 UTC 时间戳,格式为 YYYYMMDDHHMMSS{index}:下载多张图片时的索引号(从 1 开始)
模板示例:
pinterest_{imageId}.{fileExtension}(默认)pin_{timestamp}_{imageId}.{fileExtension}pinterest_image_{index}_{imageId}.{fileExtension}{timestamp}_pinterest.{fileExtension}
如果模板无效(例如,包含不支持的变量或括号不匹配),服务将记录警告并使用默认模板。
设置代理服务器
如果需要使用代理访问 Pinterest(尤其是在 Pinterest 可能受限的地区),可以设置代理配置:
- 使用带命令行选项的 npx:
npx pinterest-mcp-server --proxyServer "http://127.0.0.1:7890"
- 使用环境变量:
# Linux/macOS
export MCP_PINTEREST_PROXY_SERVER="http://127.0.0.1:7890"
npx pinterest-mcp-server
# Windows (CMD)
set MCP_PINTEREST_PROXY_SERVER=http://127.0.0.1:7890
npx pinterest-mcp-server
# Windows (PowerShell)
$env:MCP_PINTEREST_PROXY_SERVER="http://127.0.0.1:7890"
npx pinterest-mcp-server
支持的代理协议:
- HTTP:
http://host:port - HTTPS:
https://host:port - SOCKS4:
socks4://host:port - SOCKS5:
socks5://host:port
代理配置会影响用于搜索的浏览器和图片下载过程。
注意事项
- 服务启动时会验证下载目录是否存在且可写。如果目录不存在,服务会尝试创建;如果无法创建或写入,服务将退出。
- 调用与下载相关的工具时,客户端不应通过参数指定下载路径或文件名模板,因为所有下载都将使用服务的环境变量配置或默认值。
- 服务会自动清理文件名,将非法字符(例如
/、\、:、*、?、"、<、>、|)替换为下划线。
接口说明
服务提供以下 MCP 工具:
pinterest_search:按关键词搜索 Pinterest 图片pinterest_get_image_info:获取 Pinterest 图片的详细信息pinterest_search_and_download:搜索并下载 Pinterest 图片
有关接口参数的详细参考,请参阅 MCP 工具定义。
⭐ Star 历史
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
