freepik-mcp

An MCP server implementation for interacting with Freepik's API, providing access to stock photos and Mystic AI image generation capabilities.

Visit Server
Added on 3/28/2025

Freepik MCP Server

An MCP server implementation for interacting with Freepik's API, providing access to stock photos and Mystic AI image generation capabilities.

Features

  • Search Freepik resources (photos, vectors, PSDs)
  • Get detailed resource information
  • Download resources
  • Generate images using Mystic AI
  • Check image generation status

Prerequisites

Installation

# Create a new directory for your MCP servers
mkdir mcp-servers
cd mcp-servers

# Clone the repository
git clone https://github.com/MCERQUA/freepik-mcp.git
cd freepik-mcp

# Install dependencies
npm install

# Build the server
npm run build

Configuration

  1. First, obtain your Freepik API key by following the instructions in API_SETUP.md

  2. Add the server to your MCP settings file:

{
  "mcpServers": {
    "freepik": {
      "command": "node",
      "args": ["path/to/freepik-mcp/build/index.js"],
      "env": {
        "FREEPIK_API_KEY": "your-api-key-here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Available Tools

search_resources

Search for Freepik resources with various filters:

{
  term?: string;          // Search term
  limit?: number;         // Results per page
  order?: 'relevance' | 'recent';
  filters?: {
    orientation?: {
      landscape?: boolean;
      portrait?: boolean;
      square?: boolean;
      panoramic?: boolean;
    };
    content_type?: {
      photo?: boolean;
      psd?: boolean;
      vector?: boolean;
    };
    license?: {
      freemium?: boolean;
      premium?: boolean;
    };
  };
}

get_resource

Get detailed information about a specific resource:

{
  id: number;  // Resource ID to get details for
}

download_resource

Get download URL for a specific resource:

{
  id: number;  // Resource ID to download
}

generate_image

Generate an image using Freepik Mystic AI:

{
  prompt: string;         // Text description of the image to generate
  resolution?: '2k' | '4k';
  aspect_ratio?: 'square_1_1' | 'classic_4_3' | 'traditional_3_4' | 
                 'widescreen_16_9' | 'social_story_9_16';
  realism?: boolean;      // Enable realistic style
  engine?: 'automatic' | 'magnific_illusio' | 'magnific_sharpy' | 'magnific_sparkle';
  creative_detailing?: number;  // 0-100
}

check_status

Check the status of a Mystic image generation task:

{
  task_id: string;  // ID of the generation task to check
}

Development

# Install dependencies
npm install

# Build the server
npm run build

# Run in development mode
npm run dev

Error Handling

The server implements comprehensive error handling:

  • API errors are logged with detailed information
  • Input validation using Zod schemas
  • Proper error responses with context
  • Rate limiting awareness

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

MIT