Blendkit MCP Server
Allows searching and downloading 3D assets (models, materials, HDRs, brushes) from the BlenderKit library for use in Blender.
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., "@Blendkit MCP ServerSearch for a realistic wooden chair model."
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.
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.
Related MCP server: Blender MCP Server
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 syncConfiguration
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.
Available Tools
2 toolsget_asset_download_urlA
Get the download URLs for a specific asset by its ID.
Args: asset_id: The ID of the asset (either 'id' or 'assetBaseId').
Returns: Dictionary containing the download URLs for the asset files. Note: The Agent should use standard tools like curl/wget with the header 'Authorization: Bearer $BLENDERKIT_API_KEY' if downloading paid/private assets.
| Name | Required | Description | Default |
|---|---|---|---|
| asset_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the need for an authorization header when downloading paid/private assets, which is valuable. However, it does not clarify side effects, whether the tool is read-only, or behavior for free assets. It partially addresses transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences with a clear structure: purpose, args, returns, note. It is front-loaded with the main action. Some redundancy exists (e.g., 'download URLs' repeated), but it remains concise enough.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool without an output schema, the description covers the parameter, return type, and a usage note. It lacks error handling or examples but is reasonably complete for the complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero description coverage, so the description fully compensates by explaining that 'asset_id' can be either 'id' or 'assetBaseId'. This adds essential meaning beyond the schema's type definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get the download URLs for a specific asset by its ID,' specifying the verb 'get' and the resource 'download URLs' for an asset. It distinguishes from the sibling tool 'search_blendkit_assets' which is for searching, not retrieving URLs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives (e.g., after searching for an asset ID). The description implies usage after obtaining an asset ID but does not state prerequisites or exclude scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_blendkit_assetsA
Search for 3D assets in the Blendkit library.
Args: query: The search term (e.g. 'chair', 'wood'). asset_type: Type of asset to search for ('model', 'material', 'scene', 'hdr', 'brush'). limit: Number of results to return (max 15).
Returns: A dictionary containing a list of asset objects. Each asset contains its id, name, thumbnailUrls, and a 'files' array. Inside the 'files' array, you can find 'downloadUrl's that can be used to download the actual .blend or texture files.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| asset_type | No | model |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses return format (dictionary with asset objects) and important details like thumbnailUrls, files, downloadUrl. Mentions limit max 15. No annotations exist, so description carries full burden sufficiently.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with Args and Returns sections, front-loaded with main purpose. Could be slightly more concise, but every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, so return structure description is valuable. Covers purpose, parameters, and returns adequately. Missing error handling or rate limits, but sufficient for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but description compensates fully by explaining each parameter with examples (e.g., 'chair', 'wood'), enum values, and adding behavior like max limit of 15 not present in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches for 3D assets in the Blendkit library, with explicit mention of search term and asset type. Distinguishes from sibling 'get_asset_download_url', which is for downloading, not searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context for when to use (searching assets) and describes parameters. However, does not explicitly state when not to use or mention alternative tools beyond the sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v0.1.0- First observed
get_asset_download_url - First observed
search_blendkit_assets
TDQS
The two tools have clearly distinct purposes: one searches for assets, the other retrieves download URLs for a specific asset. There is no overlap or ambiguity.
Both tool names follow a consistent verb_noun pattern using snake_case: get_asset_download_url and search_blendkit_assets.
With only two tools, the surface feels limited for a 3D asset library. While search and download form a minimal workflow, additional tools for categories or asset details would improve scope.
The tools cover the essential search-to-download flow. Minor gaps exist, such as missing asset detail retrieval or category listing, but the core functionality is present.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search Assetzaar's catalog of UI components, agent skills, SaaS kits and automations.
Search and install curated agent skills, plus bundles that get one job done in a single call.
Discover, inspect and run 63,000+ agent tools from one balance. Pay per call, no subscriptions.
1Search, install and submit Markdown skills for AI agents; private Brain files when signed in.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceEnables AI agents to create, manage, and download 3D models, textures, images, rigged characters, and animations through natural conversation.5,09041MIT- AlicenseNot gradedqualityDmaintenanceEnables AI-powered 3D content creation in Blender through natural language, including text-to-3D, image-to-3D, animation, rigging, rendering, and export.2MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to create, manage, and download 3D models, textures, images, rigged characters, and animations through natural conversation using the Meshy AI platform.5,090MIT
- FlicenseAqualityCmaintenanceEnables AI clients to search, browse, inspect, and download 3D models from Sketchfab via the Model Context Protocol.51-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RN0000/blendkit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server