by wilsonchenghy
ShaderToy-MCP is an MCP server that enables Large Language Models (LLMs) to interact with the ShaderToy API, facilitating the creation of complex GLSL shaders.
ShaderToy-MCP is a Model Context Protocol (MCP) server designed to bridge the gap between Large Language Models (LLMs) and ShaderToy, a popular online platform for creating, running, and sharing GLSL shaders. By connecting LLMs like Claude with ShaderToy, this project allows AI models to query and read entire web pages on ShaderToy, enabling them to learn from existing compute shader examples and generate increasingly complex and sophisticated GLSL shaders.
To use ShaderToy-MCP, you first need to install uv
(a Python package installer) on your system (Mac or Windows). After installation, you can clone the ShaderToy-MCP project from its GitHub repository. The next step involves integrating it with Claude Desktop by modifying the claude_desktop_config.json
file. This configuration includes setting up the mcpServers
entry for ShaderToy-MCP, specifying the command to run the server, and providing your ShaderToy API key. Once configured, you can test the integration using example commands within Claude to see how it utilizes the MCP tools.
get_shader_info()
and search_shader()
for programmatic interaction.Q: What is the purpose of ShaderToy-MCP? A: ShaderToy-MCP aims to enable LLMs to interact with the ShaderToy API, allowing them to learn from existing shaders and generate new, complex GLSL shaders.
Q: What LLMs are supported? A: The README specifically mentions integration with Claude, but the underlying MCP framework might allow for integration with other LLMs that support the protocol.
Q: Do I need a ShaderToy API key?
A: Yes, you need to replace the placeholder your_actual_api_key
with your actual ShaderToy API key in the configuration file for the server to function correctly.
Q: How do I know if the integration with Claude Desktop is successful? A: After configuring, you should see a hammer icon for the MCP in Claude. You can then test with the provided example commands to verify correct utilization of the MCP tools.
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)
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
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.
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 ) {}
Please log in to share your review and rating for this MCP.
Discover more MCP servers with similar functionality and use cases
by danny-avila
Provides a customizable ChatGPT‑like web UI that integrates dozens of AI models, agents, code execution, image generation, web search, speech capabilities, and secure multi‑user authentication, all open‑source and ready for self‑hosting.
by ahujasid
BlenderMCP integrates Blender with Claude AI via the Model Context Protocol (MCP), enabling AI-driven 3D scene creation, modeling, and manipulation. This project allows users to control Blender directly through natural language prompts, streamlining the 3D design workflow.
by pydantic
Enables building production‑grade generative AI applications using Pydantic validation, offering a FastAPI‑like developer experience.
by GLips
Figma-Context-MCP is a Model Context Protocol (MCP) server that provides Figma layout information to AI coding agents. It bridges design and development by enabling AI tools to directly access and interpret Figma design data for more accurate and efficient code generation.
by mcp-use
Easily create and interact with MCP servers using custom agents, supporting any LLM with tool calling and offering multi‑server, sandboxed, and streaming capabilities.
by sonnylazuardi
This project implements a Model Context Protocol (MCP) integration between Cursor AI and Figma, allowing Cursor to communicate with Figma for reading designs and modifying them programmatically.
by lharries
WhatsApp MCP Server is a Model Context Protocol (MCP) server for WhatsApp that allows users to search, read, and send WhatsApp messages (including media) through AI models like Claude. It connects directly to your personal WhatsApp account via the WhatsApp web multi-device API and stores messages locally in a SQLite database.
by idosal
GitMCP is a free, open-source remote Model Context Protocol (MCP) server that transforms any GitHub project into a documentation hub, enabling AI tools to access up-to-date documentation and code directly from the source to eliminate "code hallucinations."
by Klavis-AI
Klavis AI provides open-source Multi-platform Control Protocol (MCP) integrations and a hosted API for AI applications. It simplifies connecting AI to various third-party services by managing secure MCP servers and authentication.