Generates 3D-style cartoon images using Google's Gemini AI and provides secure file system operations.
A professional-grade server that provides two major capabilities:
git clone https://github.com/falahgs/mcp-3d-style-cartoon-gen-server.git
cd mcp-3d-style-cartoon-gen-server
npm install
.env
file in the root directory:GEMINI_API_KEY=your_api_key_here
ALLOWED_DIRECTORIES=/path/to/allowed/dir1,/path/to/allowed/dir2
npm run build
To integrate this combined server with Claude Desktop:
Locate the Configuration File:
%APPDATA%\Claude\claude_desktop_config.json
~/Library/Application Support/Claude/claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
Add the following configuration:
{
"mcpServers": {
"mcp-3d-cartoon-generator": {
"command": "node",
"args": [
"path/to/your/build/index.js"
],
"env": {
"GEMINI_API_KEY": "your_gemini_api_key_here",
"IS_REMOTE": "true",
"SAVE_TO_DESKTOP": "true",
"DETECT_OS_PATHS": "true",
"ALLOWED_DIRECTORIES": "C:\\Users\\YourUsername\\Desktop,C:\\Users\\YourUsername\\Documents",
"DEBUG": "false"
}
}
}
}
For Windows users, you can use the included fix_claude_config.ps1
script to automatically configure Claude Desktop:
powershell -ExecutionPolicy Bypass -File .\fix_claude_config.ps1
This will create or update the configuration file with proper encoding and settings.
{
"name": "generate_3d_cartoon",
"description": "Generates a 3D style cartoon image for kids based on the given prompt",
"inputSchema": {
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "The prompt describing the 3D cartoon image to generate"
},
"fileName": {
"type": "string",
"description": "The name of the output file (without extension)"
}
},
"required": ["prompt", "fileName"]
}
}
{
"name": "read_file",
"description": "Read the contents of a file",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Path to the file to read"
}
},
"required": ["path"]
}
}
{
"name": "write_file",
"description": "Write content to a file",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Path to the file to write"
},
"content": {
"type": "string",
"description": "Content to write to the file"
}
},
"required": ["path", "content"]
}
}
{
"name": "list_directory",
"description": "List the contents of a directory",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Path to the directory to list"
}
},
"required": ["path"]
}
}
{
"name": "create_directory",
"description": "Create a new directory",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Path to the directory to create"
}
},
"required": ["path"]
}
}
{
"name": "search_files",
"description": "Search for files matching a pattern",
"inputSchema": {
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Base directory to search from"
},
"pattern": {
"type": "string",
"description": "Search pattern (glob format)"
},
"excludePatterns": {
"type": "array",
"items": {
"type": "string"
},
"description": "Patterns to exclude from search (glob format)"
}
},
"required": ["path", "pattern"]
}
}
// Generate a 3D cartoon
{
"name": "generate_3d_cartoon",
"arguments": {
"prompt": "A friendly robot playing with a cat",
"fileName": "robot_cat_play"
}
}
// Read a file
{
"name": "read_file",
"arguments": {
"path": "C:/Users/YourUsername/Documents/example.txt"
}
}
// Write a file
{
"name": "write_file",
"arguments": {
"path": "C:/Users/YourUsername/Documents/new-file.txt",
"content": "This is the content of the file."
}
}
// List directory contents
{
"name": "list_directory",
"arguments": {
"path": "C:/Users/YourUsername/Documents"
}
}
// Create a directory
{
"name": "create_directory",
"arguments": {
"path": "C:/Users/YourUsername/Documents/new-folder"
}
}
// Search for files
{
"name": "search_files",
"arguments": {
"path": "C:/Users/YourUsername/Documents",
"pattern": "*.txt",
"excludePatterns": ["temp*", "*.tmp"]
}
}
The server implements several security measures:
ALLOWED_DIRECTORIES
environment variable can be accessed.Variable | Description | Default |
---|---|---|
GEMINI_API_KEY | Google Gemini API key for image generation | (Required) |
ALLOWED_DIRECTORIES | Comma-separated list of allowed file system paths | User's home dir, current dir |
IS_REMOTE | Run in remote mode without browser opening | false |
SAVE_TO_DESKTOP | Force saving to desktop directory | false |
DETECT_OS_PATHS | Enable OS-specific path detection | true |
DEBUG | Enable verbose debug logging | false |
JSON Parsing Errors in Claude:
DEBUG
is set to "false" to prevent logs from interfering with JSON communicationFile Access Denied:
ALLOWED_DIRECTORIES
Images Not Saving:
SAVE_TO_DESKTOP
to "true" to ensure images save to the desktopContributions are welcome! Please feel free to submit a Pull Request.
An MCP server for astrological chart calculations using the immanuel-python library.
Enables AI assistants to query, read, and move data on DICOM servers like PACS and VNA.
Access and manage your Monzo banking data, allowing you to check balances and view transactions.
Provides real-time prices for assets like precious metals and cryptocurrencies.
An MCP server for accessing Bazi (Chinese astrology) data, requiring an API key.
An integration for Claude Desktop to interact with Spotify using the Model Context Protocol (MCP).
An MCP server enabling AI agents to pay for services using HTTP 402 requests and MCP tools.
A server to buy and manage domains with Sherlock.
Provides current time and timezone conversion capabilities using IANA timezone names, with automatic system timezone detection.
Allows Large Language Models to interact with a GameBoy emulator via the serverboy MCP server.