pinterest-vision-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VISION_API_KEY | Yes | API key for your LLM provider (OpenAI-compatible vision API) | |
| CHROMA_PERSIST_DIR | No | ChromaDB vector storage path | ./data/chroma |
| PINTEREST_DATA_DIR | No | Directory for downloaded images | ./data |
| VISION_API_BASE_URL | No | Base URL for the vision API (any OpenAI-compatible API) | https://openrouter.ai/api/v1 |
| PINTEREST_VISION_MODEL | No | Vision-capable model to use | anthropic/claude-sonnet-4-6 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pinterest_searchA | Search Pinterest for visual references. Returns list of pins with image URLs and metadata. Args: query: e.g. 'quiet luxury beige coat editorial' limit: max pins to return (default 20) |
| pinterest_downloadA | Download images from a pinterest_search result to local filesystem. Saves to {PINTEREST_DATA_DIR}/pinterest/{date}/{query_slug}/ Args: search_result: output dict from pinterest_search max_images: max images to download (default 10) |
| pinterest_analyzeA | Analyze images with LLM vision. Returns structured visual tags per image. Tags: lighting_type, composition_type, camera_distance, mood, palette, segment, shot_type, garment_focus, styling_signals, brand_feel, overall_quality. Args: image_paths: local file paths to images model: optional OpenRouter model override (default from PINTEREST_VISION_MODEL env) |
| pinterest_ingestA | Store visual analyses in ChromaDB vector base for future semantic retrieval. Note: on first run, ChromaDB will download an embedding model (~90 MB). Args: analyses: output list from pinterest_analyze query: optional label for what was searched |
| pinterest_pipelineA | Full visual intelligence pipeline: search → download → analyze → store. Note: on first run with ingest=True, ChromaDB will download an embedding model (~90 MB). Args: query: search query, e.g. 'minimal editorial white shirt studio' limit: max pins to search (default 15) max_download: max images to download and analyze (default 8) analyze: run LLM vision analysis (default True) ingest: store results in vector base (default True) |
| visual_searchA | Semantic search across stored visual references. Find past analyses by style, mood, segment, or free-text description. Args: query: e.g. 'dark editorial masculine streetwear close-up' n_results: number of results to return (default 10) segment: optional filter (luxury / premium / contemporary / streetwear) shot_type: optional filter (campaign editorial / e-commerce product / lookbook / ...) mood: optional filter by mood string |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool has a distinct purpose: search retrieves pins, download saves images, analyze extracts visual tags, ingest stores results, pipeline runs the full workflow, and visual_search queries stored analyses. No overlap in functionality.
All tools follow a consistent verb_noun pattern: 'pinterest_search', 'pinterest_download', 'pinterest_analyze', 'pinterest_ingest', 'pinterest_pipeline', and 'visual_search'. No mixing of conventions.
With 6 tools, the server is well-scoped for its purpose of Pinterest-based visual analysis and retrieval. Each tool covers a necessary step in the pipeline without redundancy.
The tool set covers the full workflow from search to semantic querying. However, there is no tool for deleting or updating stored analyses, which could be considered a minor gap.