Freepik MCP
π MCP Server for seamless Freepik API integration
π― What is this?
A Model Context Protocol (MCP) server that connects your AI assistants (Claude, Cursor, etc.) directly with Freepik's powerful APIs. Generate, search, and manage visual content without leaving your AI workflow.
π οΈ What tools are available?
- π¨ Icon Search & Download - Find and download icons in multiple formats
- π Resource Management - Access and manage multimedia content
- π€ AI Image Classification - Automatically classify and analyze images
- πΌοΈ Image Generation - Create custom images using Mystic AI
π Prerequisites
Before you start, make sure you have:
- Python 3.12+ installed
- uv dependency manager (install here)
- Freepik API Key (get yours here)
π Installation
1. Clone and navigate
bashgit clone <REPOSITORY_URL> cd freepik-mcp
2. Install using Makefile
bash# Install dependencies make install # Verify installation make version
3. Configure your API Key
bashecho "FREEPIK_API_KEY=your_api_key_here" > .env
π‘ Get your API Key at: freepik.com/api
βοΈ Configuration for AI Assistants
For Claude Desktop or Cursor on Linux
Add this to your config.json file:
β οΈ For Windows users: If you're on Windows, you need to use WSL (Windows Subsystem for Linux) to run this MCP server.
json{ "mcpServers": { "freepik-fastmcp": { "command": "uv", "args": [ "run", "--directory", "/FULL/PATH/TO/freepik-mcp", "main.py" ], "env": { "FREEPIK_API_KEY": "your_actual_api_key_here" } } } }
π§ Important Configuration Steps
-
Find your full path:
bashpwd # Copy the output and replace /FULL/PATH/TO/ in the config -
Replace with your API key:
- Get it from freepik.com/api
- Replace
your_actual_api_key_here
πββοΈ Quick Start
bash# Development mode (auto-reload) make dev # Production mode make run # Check code quality make lint # Format code make format # Clean temporary files make clean # See all commands make help
π€ Contributing
We welcome contributions! Please follow these guidelines:
π Commit Convention
This project uses Conventional Commits. Format your commits as:
<type>(<scope>): <description> [optional body] [optional footer(s)]
Types:
feat: New featurefix: Bug fixdocs: Documentation changesstyle: Code style changes (formatting, etc.)refactor: Code refactoringtest: Adding or updating testschore: Maintenance tasks
Examples:
bashfeat(icons): add search filtering by category fix(api): resolve authentication timeout issue docs(readme): update installation instructions refactor(mystic): improve error handling logic
π Contribution Workflow
- Fork the repository
- Create a feature branch:
git checkout -b feat/amazing-feature - Commit using conventional format:
git commit -m "feat: add amazing feature" - Push to your branch:
git push origin feat/amazing-feature - Open a Pull Request
π Development Commands
| Command | Description |
|---|---|
make help | Show all available commands |
make install | Install dependencies |
make dev | Run in development mode |
make run | Run in production mode |
make lint | Check code quality |
make format | Format code automatically |
make clean | Clean temporary files |
make version | Check FastMCP version |
π‘οΈ Security
- β οΈ Never commit your API Key
- β
Use
.envfiles for sensitive data - β
The
.envfile is in.gitignore
π API Documentation
For detailed API information:
π Troubleshooting
Common issues:
- "Command not found" β Install
uvdependency manager - "Invalid API Key" β Check your key at freepik.com/api
- "Path not found" β Verify the full path in your config
- "Connection refused" β Make sure the server is running with
make dev
Still having issues? Open an issue on GitHub with:
- Your OS and Python version
- Full error message
- Configuration file (without API key)
Ready to create amazing content with AI? π¨β¨


