ShaderToy_MCP
MCP Server for ShaderToy, a website for creating, running and sharing GLSL shader (https://www.shadertoy.com/). It connects LLM like Claude with ShaderToy through Model Context Protocol (MCP), allowing the LLM to query and read the entire web page, allowing it to make increasingly complex shader it normally isn't capable of.
ShaderToy-MCP
MCP Server for ShaderToy, a website for creating, running and sharing GLSL shader (https://www.shadertoy.com/). It connects LLM like Claude with ShaderToy through Model Context Protocol (MCP), allowing the LLM to query and read the entire web page, allowing it to make increasingly complex shader it normally isn't capable of.
Example of the complex shader it generates:
Ocean (https://www.shadertoy.com/view/tXs3Wf)
Mountains (https://www.shadertoy.com/view/W3l3Df)
Matrix Digital Rain (https://www.shadertoy.com/view/33l3Df)
Features
- Retriving info on any shader on ShaderToy
- Search for shader available on ShaderToy through a search prompt
- Generate complex shaders by learning from existing shaders on ShaderToy
MCP Tools
- get_shader_info()
- search_shader()
Installation
On Mac, please install uv as
brew install uv
On Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
and then
set Path=C:\\Users\\nntra\\.local\\bin;%Path%
Otherwise installation instructions are on their website: Install uv
Claude Desktop Integration
Git clone the project with git clone https://github.com/wilsonchenghy/ShaderToy-MCP.git
Go to Claude > Settings > Developer > Edit Config > claude_desktop_config.json to include the following:
{
"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" // Replace with your API key
}
}
}
}
Once the config file has been set on Claude, you will see a hammer icon for the MCP. Test with the example commands to see if it correctly utilize the MCP tools.
Example Commands
Generate shader code of a {object}, if it is based on someone's work on ShaderToy, credit it, make the code follow the ShaderToy format: void mainImage( out vec4 fragColor, in vec2 fragCoord ) {}
Recommend MCP Servers 💡
stanislavlysenko0912/todoist-mcp-server
A Model Context Protocol server that integrates Todoist with AI assistants for natural language task management
ggRMCP
A Go-based gateway that converts gRPC services into MCP-compatible tools, enabling AI models to call gRPC services seamlessly.
@crunchloop/mcp-teamtailor
An MCP server integrating with the Teamtailor API to manage candidates and provide recruitment context.
llm-context
Share code with LLMs via Model Context Protocol or clipboard. Rule-based customization enables easy switching between different tasks (like code review and documentation). Includes smart code outlining.
albertdow/mcp-datapi
An MCP server providing LLM interface to retrieve ECWMF CDS catalogue data and manage job statuses
@notainc/gyazo-mcp-server
An official Model Context Protocol server for Gyazo, enabling AI assistants to access, search, fetch, and upload images and their metadata (including OCR data) via the Gyazo API.