The FindMine Shopping Stylist MCP server integrates FindMine's fashion styling API with Claude and other MCP-compatible applications to provide AI-powered styling assistance.
Core Capabilities:
Style guidance: Access comprehensive fashion advice organized by category (color theory, body types, casual/formal styles, seasonal trends), specific occasions (weddings, office wear, date nights), and fashion seasons
Outfit recommendations: Get complete outfit suggestions for specific products with options for personalization (customer ID, gender, session tracking), stock/sale filtering, and control over whether to include the original product
Product discovery: Find visually similar products with flexible pagination, color-specific matching, and personalization options
Browse fashion content: Access detailed product information via
product:///URIs and complete outfit recommendations vialook:///URIsBuilt-in prompts: Use ready-made prompts for outfit completion, styling guidance, and tool assistance
Integration Features:
Session tracking: Maintain consistent personalization across user interactions
Customizable style guides: Modify content to match specific brand aesthetics
Performance optimization: Built-in response caching and API version control
Multi-region/language support: Configure default region and language settings
Flexible deployment: Install via npm, Docker, or from source with configurable API settings and development mode with sample data
Provides containerized deployment of the FindMine MCP server through Docker Hub, simplifying setup and configuration across environments.
Allows cloning and building the MCP server from source code hosted on GitHub.
Supports automatic configuration of Claude Desktop on macOS systems, with specific paths for configuration files.
Enables installation and distribution of the FindMine MCP server through npm, with support for global installation and direct execution.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FindMine Shopping Stylistshow me outfit ideas for this black dress"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FindMine Shopping Stylist
A Model Context Protocol (MCP) server that integrates FindMine's powerful product styling and outfitting recommendations with Claude and other MCP-compatible applications.
Overview
This MCP server connects to FindMine's styling API and exposes its functionality to Large Language Models through the Model Context Protocol. It allows users to:
Browse product and outfit information
Get outfit recommendations for specific products
Find visually similar products
Access style guidance and fashion advice
Related MCP server: Perplexity MCP Server
Features
Resources
Products: Detailed product information with
product:///URI schemeLooks: Complete outfit recommendations with
look:///URI scheme
Tools
get_style_guide: Access detailed fashion advice and styling guidelines
get_complete_the_look: Get outfit recommendations for a product
get_visually_similar: Find visually similar products
Prompts
outfit_completion: Get styling advice for complete outfits
styling_guide: Access comprehensive fashion styling guidelines
findmine_help: Learn how to use FindMine's tools and resources
Installation
Option 1: Install from npm
# Install and run directly (recommended)
npx findmine-mcp
# Or install globally
npm install -g findmine-mcp
findmine-mcpOption 2: Run with Docker
docker run -e FINDMINE_APP_ID=your_app_id findmine/mcp-server:latestOption 3: Clone and build from source
# Clone the repository
git clone https://github.com/findmine/findmine-mcp.git
cd findmine-mcp
# Install dependencies
npm install
# Build the server
npm run build
# For development with auto-rebuild
npm run watchConfiguration
Environment Variables
Variable | Description | Default |
| FindMine API base URL | |
| Your FindMine application ID | DEMO_APP_ID |
| API version to use | v3 |
| Default region code | us |
| Default language code | en |
| Enable response caching | true |
| Cache time-to-live in ms | 3600000 (1 hour) |
| Set to "development" for sample data | - |
Usage with Claude Desktop
The server automatically configures Claude Desktop during installation. To verify:
macOS:
cat ~/Library/Application\ Support/Claude/claude_desktop_config.jsonWindows:
type %APPDATA%\Claude\claude_desktop_config.jsonDevelopment
Available Scripts
# Build and watch
npm run build # Build the project
npm run watch # Watch for changes and rebuild
npm run typecheck # Run TypeScript type checking
# Testing
npm test # Run tests in watch mode
npm run test:run # Run tests once
npm run test:coverage # Run tests with coverage report
# Code quality
npm run lint # Run ESLint
npm run lint:fix # Run ESLint with auto-fix
npm run format # Format code with Prettier
npm run format:check # Check code formatting
# Development tools
npm run inspector # Run MCP inspector (http://localhost:5173)Testing
This project uses Vitest for testing. Tests are located in __tests__/ directories alongside source files.
# Run tests in watch mode
npm test
# Run tests once (useful for CI)
npm run test:run
# Generate coverage report
npm run test:coverageCode Quality
Before committing code:
# Run all checks
npm run typecheck && npm run lint && npm run format:check && npm run test:runThe project uses:
ESLint for linting with TypeScript support
Prettier for code formatting
Vitest for testing
GitHub Actions for CI/CD
Development Mode
Run the server with sample data:
NODE_ENV=development npm run build && node build/index.jsCustomizing the Style Guide
The style guide can be customized to match your brand's specific styling philosophies and fashion guidance. To customize the style guide:
Locate the style guides in
src/content/style-guides.tsModify the content for each category (
general,color_theory,body_types, etc.)Add new categories by extending the
styleGuidesobjectCustomize occasion-specific and seasonal advice
Example of adding a custom style guide category:
// In src/content/style-guides.ts
export const styleGuides: Record<string, string> = {
// Existing categories...
// Add your custom category
your_brand_style: `# Your Brand Style Guide
## Brand Aesthetic
- Key elements of your brand's visual identity
- Core style principles
- Signature looks and combinations
## Your Brand's Styling Do's
- Brand-specific styling recommendations
- Preferred color combinations
- Signature styling techniques
## Your Brand's Styling Don'ts
- Combinations to avoid
- Styling approaches that don't align with brand identity
- Common styling mistakes to avoid
`
};For complete customization, you can modify the entire get_style_guide handler in src/handlers/tools.ts.
Project Structure
src/
├── index.ts # MCP server bootstrap and initialization
├── config.ts # Environment configuration
├── api/ # FindMine API client
│ └── findmine-client.ts
├── handlers/ # MCP protocol handlers
│ ├── tools.ts # Tool execution handlers
│ ├── resources.ts # Resource handlers
│ └── prompts.ts # Prompt handlers
├── tools/ # Tool definitions with MCP annotations
│ └── index.ts
├── schemas/ # Zod validation schemas
│ ├── tool-inputs.ts # Input validation for all tools
│ └── index.ts
├── content/ # Static content
│ └── style-guides.ts # Style guide content
├── prompts/ # Prompt definitions
│ ├── findmine-help.ts
│ ├── outfit-completion.ts
│ ├── styling-guide.ts
│ └── index.ts
├── services/ # Business logic layer
│ └── findmine-service.ts
├── types/ # TypeScript type definitions
│ ├── findmine-api.ts
│ └── mcp.ts
└── utils/ # Utility functions and helpers
├── cache.ts
├── formatters.ts
├── logger.ts
├── mock-data.ts
└── resource-mapper.tsTechnical Details
This server is built with:
MCP SDK 1.24.2 with full spec compliance (2025-11-25)
Tool annotations for read-only, destructive, and open-world hints
Zod validation for all tool inputs
Modular architecture with separated concerns
100% test coverage on utility functions
API Examples
Get Style Guide
{
"name": "get_style_guide",
"arguments": {
"category": "color_theory",
"occasion": "wedding"
}
}Get Complete the Look
{
"name": "get_complete_the_look",
"arguments": {
"product_id": "P12345",
"product_color_id": "C789"
}
}Get Visually Similar Products
{
"name": "get_visually_similar",
"arguments": {
"product_id": "P12345",
"product_color_id": "C789",
"limit": 5
}
}Publishing
Publishing to npm
# Login to npm
npm login
# Publish the package
npm publish
# Update the version for future releases
npm version patchPublishing to Docker Hub
# Build the Docker image
docker build -t findmine/mcp-server:latest .
# Login to Docker Hub
docker login
# Push the image
docker push findmine/mcp-server:latestLicense
This project is licensed under the MIT License.