Blendkit MCP Server
An unofficial Model Context Protocol (MCP) server that provides AI agents with direct access to the BlenderKit 3D library. This server allows agents to seamlessly search for 3D assets (models, materials, HDRs, brushes) and retrieve native download URLs.
Features
- Asset Search: Easily query the Blendkit library for 3D models, PBR materials, HDRs, brushes, and scenes.
- Rich Context: Returns simplified, agent-friendly asset metadata including thumbnails, asset IDs, file sizes, and descriptions.
- Direct Downloads: Retrieves direct download URLs for asset files, including texture packs and
.blendfiles at varying resolutions, allowing the agent to download the assets natively using tools likecurlorwget.
Prerequisites
- Python 3.13+
- uv (Recommended, for fast dependency management)
- Blendkit API Key: While some assets are free, a Blendkit API key is highly recommended for higher rate limits and access to paid/private assets.
Installation
Clone the repository and install the dependencies:
git clone https://github.com/RN0000/blendkit-mcp.git
cd blendkit-mcp
# Using uv
uv sync
Configuration
The server requires a Blendkit API Key for authentication. You can pass it as an environment variable: BLENDERKIT_API_KEY.
Connecting to an MCP Client (e.g., Claude Desktop)
To use this server with an MCP-compatible client like Claude Desktop, add the following configuration to your client's config file (e.g. claude_desktop_config.json):
{
"mcpServers": {
"Blendkit": {
"command": "uv",
"args": [
"run",
"server.py"
],
"cwd": "/path/to/your/blendkit-mcp",
"env": {
"BLENDERKIT_API_KEY": "<your-blendkit-api-key>"
}
}
}
}
Note: Replace /path/to/your/blendkit-mcp with the absolute path to where you cloned this repository, and <your-blendkit-api-key> with your actual key.
Available Tools
The server exposes the following MCP tools to the agent:
search_blendkit_assets(query, asset_type, limit)- Description: Searches the Blendkit library for 3D assets.
- Arguments:
query(string): The search term (e.g., 'chair', 'wood').asset_type(string): Type of asset (model,material,scene,hdr,brush). Defaults tomodel.limit(int): Number of results to return (max 15).
get_asset_download_url(asset_id)- Description: Retrieves the download URLs for a specific asset using its ID. Useful if the direct URLs weren't retrieved during search or for targeted queries.
- Arguments:
asset_id(string): The UUID of the asset (idorassetBaseId).
Usage Examples
Once connected, you can ask your AI assistant:
- "Search Blendkit for a realistic wooden chair model."
- "Find me some 4K bark materials on Blendkit and get their download links."
- "Get the download URL for the Blendkit asset with ID ea74e54f-..."
Disclaimer
This is an unofficial community project and is not affiliated with, endorsed by, or sponsored by BlenderKit.