Mirage Brand Extract
FreeNot checkedExtracts brand identity (colors, typography, spacing) from any website and generates HTML/CSS replicas or applies branding to templates.
About
Extracts brand identity (colors, typography, spacing) from any website and generates HTML/CSS replicas or applies branding to templates.
README
An MCP (Model Context Protocol) server that extracts brand identity from any website and recreates it programmatically.
Features
- Extract Brand - Analyze any website to extract colors, typography, spacing, and button styles
- Generate Replica - Create HTML/CSS components using extracted brand data
- Replicate Website - One-step extraction and generation
- Compare Brands - Compare brand identities between two websites
- Apply to Template - Generate pre-built templates with extracted branding
Requirements
- Python 3.11+
- Firecrawl API key (get one here)
- Google Generative AI API key (get one here)
Installation
Using uv (recommended)
cd mcp-mirage-brand-extract
uv pip install -e .
Using pip
cd mcp-mirage-brand-extract
pip install -e .
Configuration
- Copy the environment template:
cp .env.example .env
- Add your API keys to
.env:
FIRECRAWL_API_KEY=your_firecrawl_key
GOOGLE_API_KEY=your_google_key
Usage
Running the Server
# With uv
uv run python server.py
# Or directly
python server.py
Testing with MCP Inspector
mcp dev server.py
Adding to Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"mirage-brandextract": {
"command": "python",
"args": ["/path/to/mirage-brandextract-mcp/server.py"],
"env": {
"FIRECRAWL_API_KEY": "your_key",
"GOOGLE_API_KEY": "your_key"
}
}
}
}
Tools
extract_brand
Extract complete brand identity from a website.
# Parameters
url: str # Target website URL
include_screenshots: bool # Include visual screenshots (default: False)
# Returns
{
"colors": {
"primary": "#FF5A5F",
"secondary": "#00A699",
"palette": [...]
},
"typography": {
"headings": "Circular",
"body": "Circular",
"weights": [400, 500, 700]
},
"spacing": {...},
"buttons": {...},
"url": "original_url"
}
generate_replica
Generate HTML/CSS using extracted brand data.
# Parameters
brand_data: dict # Output from extract_brand
component_type: str # "landing_page", "email", "button", "card"
customization: str # Additional instructions
# Returns
{
"html": "<div>...</div>",
"css": "/* styles */",
"preview_url": "data:text/html;base64,..."
}
replicate_website
Complete workflow: extract brand + generate replica in one step.
# Parameters
url: str # Target website URL
component_type: str # What to generate
customization: str # Additional instructions
# Returns
{
"brand_data": {...},
"generated": {
"html": "...",
"css": "..."
}
}
compare_brands
Compare brand identities from two websites.
# Parameters
url1: str # First website URL
url2: str # Second website URL
# Returns
{
"site1": {...brand_data...},
"site2": {...brand_data...},
"comparison": {
"color_similarity": 0.85,
"typography_match": true,
"font_overlap": ["Inter"],
"differences": [...]
}
}
apply_brand_to_template
Apply brand to pre-built templates.
# Parameters
url: str # Source website for branding
template_type: str # "hero_section", "pricing_table", "feature_grid", "testimonial", "cta"
# Returns
{
"html": "...",
"css": "...",
"preview_url": "...",
"template_type": "hero_section"
}
Example Use Cases
1. Extract Airbnb branding and create a hero section
extract_brand(url="https://airbnb.com")
generate_replica(brand_data=result, component_type="landing_page", customization="Focus on hero section")
2. Compare competitor websites
compare_brands(url1="https://airbnb.com", url2="https://vrbo.com")
3. Quick template generation
apply_brand_to_template(url="https://stripe.com", template_type="pricing_table")
Development
Running Tests
pytest tests/ -v
Code Formatting
black src/ tests/
ruff check src/ tests/
License
MIT
Built autonomously by GRIMLOCK - Autonomous MCP Server Factory
Installing Mirage Brand Extract
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/m2ai-mcp-servers/mcp-mirage-brand-extractFAQ
Is Mirage Brand Extract MCP free?
Yes, Mirage Brand Extract MCP is free — one-click install via Unyly at no cost.
Does Mirage Brand Extract need an API key?
No, Mirage Brand Extract runs without API keys or environment variables.
Is Mirage Brand Extract hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Mirage Brand Extract in Claude Desktop, Claude Code or Cursor?
Open Mirage Brand Extract on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Mirage Brand Extract with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
