- Home
- MCP servers
- ShaderToy
ShaderToy
- python
38
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"wilsonchenghy-shadertoy-mcp": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"<path_to_project>/ShaderToy-MCP/src/ShaderToy-MCP/server.py"
],
"env": {
"SHADERTOY_APP_KEY": "YOUR_API_KEY"
}
}
}
}ShaderToy MCP enables you to connect ShaderToy shaders with a Claude-style LLM through the Model Context Protocol. This lets the LLM read shader pages and synthesize increasingly complex GLSL shaders by learning from existing ShaderToy content, while crediting original works as needed and running through MCP tooling.
How to use
You use ShaderToy MCP by configuring an MCP client (such as Claude Desktop) to run the ShaderToy MCP server locally. Once set up, the MCP client can query ShaderToy shaders, search for shaders, and generate complex shader code by leveraging the model’s context about ShaderToy pages.
To start using it, you enable the ShaderToy MCP in your MCP client settings (look for an MCP integration or server configuration area). When the MCP is active, you will see a hammer icon or equivalent indicator that signals the MCP is ready to handle ShaderToy prompts. From there you can issue prompts like asking for shader ideas or code patterns, and the MCP will provide shader code consistent with ShaderToy’s format.
How to install
Prerequisites you need before installing:\n- A command-line runtime capable of running MCP servers (UVX is used in this setup).\n- A code editor and a terminal.\n- Node.js and Python are not strictly required for the MCP server itself in this configuration, but you need a runner capable of executing the server command as shown.
Install the UV runtime on your platform to run the MCP server. On macOS you can install UV with Homebrew:\nbash\nbrew install uv\n
On Windows, install UV using the provided PowerShell script and adjust your PATH afterward:\npowershell\npowershell -c "irm https://astral.sh/uv/install.ps1 | iex" \n `and then ensure the path includes your local bin directory, for example:\ntext\nset Path=C:\Users\<YourUsername>\.local\bin;%Path%\n
Set up the MCP client integration by configuring the ShaderToy MCP server within your Claude Desktop environment. Create or edit the configuration to include the following MCP server entry (replace <path_to_project> with your actual project path):
{
"mcpServers": {
"ShaderToy_MCP": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"<path_to_project>/ShaderToy-MCP/src/ShaderToy-MCP/server.py"
],
"env": {
"SHADERTOY_APP_KEY": "your_actual_api_key"
}
}
}
}
Notes on usage and testing
After you configure the MCP, test basic commands to ensure the integration works. Use the MCP client to request shader information, search for shaders, or generate shader code. If the server runs correctly, the client should be able to query ShaderToy pages and return shader code formatted for ShaderToy's GLSL entry point, such as the standard function signature used in ShaderToy: void mainImage( out vec4 fragColor, in vec2 fragCoord ) {}.
Available tools
get_shader_info
Retrieve detailed information about a specific shader on ShaderToy, including author, tags, and metadata.
search_shader
Search ShaderToy shaders using prompts or keywords and return matching shader results.