Glowe Pinterest MCP
Glowe Pinterest MCP
Un downloader Pinterest public, utilisable de deux façons : une CLI pour les humains et un serveur MCP stdio pour les agents IA. Le cœur est unique : la CLI et le MCP obtiennent donc les mêmes résultats, appliquent les mêmes validations d’URL et téléchargent uniquement dans un dossier local configuré.
Utiliser seulement les contenus pour lesquels vous détenez les droits nécessaires. Ce projet lit les données publiques rendues par Pinterest : ce n’est ni une API Pinterest officielle, ni une manière de contourner une connexion, un paywall ou une restriction de contenu.
Ce que le projet fait
Résout les liens de Pins Pinterest et les liens courts
pin.it.Recherche des Pins publics par mots-clés.
Extrait le titre, la description, l’URL du Pin et les médias image/GIF/vidéo exposés publiquement.
Essaie l’image
originals, puis les variantes1200x,736x, etc. si Pinterest ne sert pas la meilleure version.Télécharge de manière atomique : fichier
.part, renommage final, sans écraser un fichier existant.Refuse les redirections et URLs médias hors de
pinterest.*,pin.itet des CDN*.pinimg.comautorisés.
La recherche utilise la ressource publique structurée rendue par Pinterest, avec un fallback HTML transparent si elle devient indisponible. Pinterest peut ne rendre qu’une première tranche de résultats sans connexion : ce n’est pas une pagination garantie et il ne faut pas l’utiliser pour aspirer des tableaux complets.
Related MCP server: pinterest-mcp
Installation locale
Node 20 ou plus récent est requis.
cd tools/pinterest-mcp
npm installChoisissez explicitement le dossier de sortie :
export PINTEREST_MCP_DOWNLOAD_DIR="$PWD/downloads"Les médias sont limités à 35 MiB par défaut. Ajuster seulement si nécessaire :
export PINTEREST_MCP_MAX_MEDIA_BYTES=52428800CLI — pour les humains
Toutes les commandes acceptent --json pour une sortie exploitable par script.
# Rechercher des références, sans écrire de fichier
npm run cli -- search "coiffure bob femme" --limit 8
# Charger la page suivante avec le nextCursor renvoyé par la recherche précédente
npm run cli -- search "coiffure bob femme" --limit 8 --cursor "CURSEUR_RENVOYÉ"
# Inspecter exactement ce qu’un Pin expose avant de télécharger
npm run cli -- inspect "https://pin.it/EXEMPLE" --json
# Télécharger un ou plusieurs Pins dans un dossier local contrôlé
npm run cli -- download "https://www.pinterest.com/pin/99360735500167749/" --output ./downloads
# Éviter les vidéos lorsque seules les images intéressent le workflow
npm run cli -- download "https://www.pinterest.com/pin/99360735500167749/" --no-video
# Recherche suivie d’un téléchargement : à employer seulement après validation du volume
npm run cli -- search-download "hairstyle editorial" --limit 5 --output ./downloadsLes commandes download et search-download ne prennent jamais un chemin de sortie depuis une URL ou une réponse distante. Les noms de fichiers sont normalisés et les collisions produisent un suffixe plutôt qu’un écrasement.
MCP — pour les agents IA
Lancer le serveur directement :
PINTEREST_MCP_DOWNLOAD_DIR="$PWD/downloads" npm run mcpIl utilise stdio : aucun port, aucune clé Pinterest et aucun journal applicatif sur stdout. Les erreurs et diagnostics de démarrage restent sur stderr, afin de ne pas corrompre le protocole MCP.
Exemple de configuration locale Codex (~/.codex/config.toml) :
[mcp_servers.glowe_pinterest]
command = "node"
args = ["/CHEMIN_ABSOLU/glowe/tools/pinterest-mcp/bin/mcp-server.mjs"]
[mcp_servers.glowe_pinterest.env]
PINTEREST_MCP_DOWNLOAD_DIR = "/CHEMIN_ABSOLU/pinterest-downloads"
PINTEREST_MCP_MAX_MEDIA_BYTES = "36700160"Après modification de la configuration, redémarrer le client MCP/Codex afin qu’il relance le processus. Pour tout autre client MCP, utilisez la même commande node, le même argument absolu et les mêmes variables d’environnement.
Contrat des outils MCP
Outil | Écrit sur disque | Usage agent recommandé |
| Non | Chercher et présenter des références avant toute action ; réutiliser |
| Non | Vérifier un lien |
| Oui | Demander confirmation, puis télécharger 1 à 20 Pins fournis. |
| Oui | Utiliser uniquement après confirmation explicite du nombre de résultats. |
| Non | Vérifier le dossier local et les limites en vigueur. |
Les outils de lecture portent l’annotation MCP readOnlyHint. Les outils qui écrivent sur disque expliquent dans leur description qu’une confirmation de l’utilisateur est requise. Un agent doit toujours privilégier cette séquence : pinterest_search → montrer la sélection → pinterest_get_pin → confirmation → pinterest_download.
Exemple de réponse MCP
pinterest_get_pin renvoie un JSON structuré contenant notamment :
{
"id": "99360735500167749",
"pinUrl": "https://www.pinterest.com/pin/99360735500167749/",
"title": "…",
"media": [
{
"type": "image",
"url": "https://i.pinimg.com/originals/...jpg",
"alternatives": ["https://i.pinimg.com/1200x/...jpg"]
}
]
}L’agent ne doit pas inventer la disponibilité d’un média : il s’appuie sur media, puis rapporte séparément chaque téléchargement réussi ou échoué.
Tests et contrôle qualité
# Tests déterministes : URLs, parsing SSR, repli qualité, écriture atomique, handshake MCP
npm test
# Vérification réseau explicite : recherche réelle, extraction d’un Pin, téléchargement CDN réel
npm run test:liveLe test réseau est volontairement séparé : Pinterest peut modifier son HTML public ou rendre un Pin indisponible. Il ne doit jamais être masqué par les tests unitaires.
Inspirations et choix techniques
Le design s’inspire des projets MIT pinterest-downloader (priorité originals et cascade de qualité) et PinterestDownloader (contrats structurés Pin/recherche). L’interface MCP s’inspire de mcp-pinterest, mais l’implémentation ici est autonome, sans navigateur headless, avec une surface de téléchargement volontairement plus restrictive.
Pour les Pins et boards appartenant au compte Pinterest connecté, préférer l’API Pinterest officielle et OAuth. Les conditions Pinterest et les droits d’auteur restent applicables à tout contenu téléchargé.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with the Pinterest API, allowing management of boards and pins through natural language commands.9718MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage Pinterest boards and pins, create and update pins, and track analytics via the Pinterest API v5.2MIT
- FlicenseAqualityCmaintenanceExtracts images, gifs, videos, and search results from Pinterest without authentication. Supports search, pin details, board pins, related pins, autocomplete, and media downloads.6
- AlicenseBqualityBmaintenanceEnables image search and information retrieval from Pinterest using the Model Context Protocol. Supports searching by keywords, getting similar pins, and downloading images directly.597MIT
Related MCP Connectors
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
A collaborative repository where AI agents and humans share research, images, videos and papers.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/abdouldotdev/pinterest-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server