{"slug": "give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server", "title": "Give Claude Code an unrestricted image and video API with one MCP server", "summary": "A developer published a guide showing how to connect Claude Code, Cursor, Codex and other MCP clients to SpicyAPI's official MCP server, giving coding agents a single tool to browse 200+ image, video and voice generation models, price a request and execute it. The setup registers the server via `claude mcp add` or a user-level `mcp.json` entry, and paid generations require MCP elicitation so the user confirms the exact request before any charge, with quotes valid for five minutes.", "body_md": "Most image and video models live behind their own account, SDK and billing page, and most hosted APIs add a moderation layer of their own on top of the model. If you want your coding agent to make a product shot, a short clip or a voice-over while it works, wiring each provider up by hand gets old fast, and having a request refused by a filter you never asked for gets old even faster.\n\nThis post shows how to give Claude Code (or Cursor, Codex, VS Code and other MCP clients) one tool that can browse 200+ generation models, price a request, and run it, with the agent stopping to ask you before anything costs money. It uses the official MCP server for [SpicyAPI](https://spicyapi.ai), an unrestricted AI API: the platform adds no content filter of its own, so what you can generate depends only on the model you pick, and the catalog marks which models are uncensored.\n\n`node --version`).` sk-spicy-` and are shown once. Under Export your key in the terminal you will run the command from, then register the server:\n\n```\nexport SPICY_API_KEY=\"sk-spicy-...\"\n\nclaude mcp add spicyapi \\\n  -e SPICY_API_KEY=$SPICY_API_KEY \\\n  -- npx --yes --package=@spicyapi/mcp spicyapi-mcp\n```\n\nThe `--package` flag matters: the package ships two binaries, so plain `npx @spicyapi/mcp` cannot tell which one to run.\n\nCheck it with `claude mcp list` or `/mcp` inside a session. Add `--scope user` if you want it in every project, and avoid `--scope project`, which would write your key into a `.mcp.json` in the repository.\n\nCursor reads `~/.cursor/mcp.json` (Windsurf and Gemini CLI use the same shape in their own files):\n\n```\n{\n  \"mcpServers\": {\n    \"spicyapi\": {\n      \"command\": \"npx\",\n      \"args\": [\"--yes\", \"--package=@spicyapi/mcp\", \"spicyapi-mcp\"],\n      \"env\": { \"SPICY_API_KEY\": \"YOUR_SPICY_API_KEY\" }\n    }\n  }\n}\n```\n\nKeep this in your user-level file, not a project file that gets committed.\n\n`spicyapi_`.\nUse SpicyAPI to list the image models I can call, pick an inexpensive one, generate a cinematic night portrait, and give me the result link when it finishes.\n\nBehind the scenes the agent:\n\nA few more that work well:\n\nPaid tools use MCP **elicitation**: the confirmation is rendered by your client and answered by you, not by the model. The answer is bound to the exact request, so if the model or input changes after the question, nothing is created. Declining means no task, no hold and no charge. Quotes are valid for five minutes, and a client that does not support elicitation simply cannot create paid tasks; the read-only tools still work.\n\n`spicyapi_upload_file` takes an absolute path, uploads the file and returns a `spicy://` URI the agent can pass to a model. By default it only reads under your home directory, which protects you from a path smuggled in through a web page or an email. Results come back as ready-to-use links; generated files are kept for about 14 days, so download anything you want to keep.\n\n`npx skills add spicyapi-ai/spicy-skill`", "url": "https://wpnews.pro/news/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server", "canonical_source": "https://dev.to/spicyapi/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server-1ba4", "published_at": "2026-10-06 17:10:22+00:00", "updated_at": "2026-10-06 17:19:11.874363+00:00", "lang": "en", "topics": ["ai-agents", "agent-protocols", "developer-tools", "ai-tools", "generative-ai"], "entities": ["Claude Code", "Cursor", "Codex", "VS Code", "SpicyAPI", "MCP", "Windsurf", "Gemini CLI"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server", "markdown": "https://wpnews.pro/news/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server.md", "text": "https://wpnews.pro/news/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server.txt", "jsonld": "https://wpnews.pro/news/give-claude-code-an-unrestricted-image-and-video-api-with-one-mcp-server.jsonld"}}