Venice MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | HTTP-mode listener port. | 3333 |
| VENICE_API_KEY | No | Your Venice API key. The simplest setup. | |
| VENICE_MCP_HOST | No | HTTP-mode bind address. Set to 0.0.0.0 for LAN/container exposure. | 127.0.0.1 |
| VENICE_SIWX_TOKEN | No | Base64 SIWE payload for x402 wallet-mode authentication. | |
| VENICE_DISABLE_NSFW | No | Set to '1' to remove NSFW capability notes from tool descriptions. | 0 |
| VENICE_MCP_AUTH_TOKEN | No | Bearer token required by /mcp whenever HTTP mode binds outside loopback. | |
| VENICE_HTTP_TIMEOUT_MS | No | HTTP timeout in milliseconds. | 60000 |
| VENICE_MCP_MAX_SESSIONS | No | Maximum active Streamable HTTP sessions. | 100 |
| VENICE_DEFAULT_ASR_MODEL | No | Default ASR model. | openai/whisper-large-v3 |
| VENICE_DEFAULT_TTS_MODEL | No | Default TTS model. | tts-kokoro |
| VENICE_DEFAULT_CHAT_MODEL | No | Default chat model. | venice-uncensored |
| VENICE_MCP_SESSION_TTL_MS | No | Idle Streamable HTTP session lifetime before cleanup. | 1800000 |
| VENICE_DEFAULT_IMAGE_MODEL | No | Default image model. | flux-2-pro |
| VENICE_MCP_ALLOW_UNAUTHENTICATED_HTTP | No | Emergency escape hatch for unauthenticated exposed HTTP mode. | 0 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| venice_chatB | Run an OpenAI-compatible chat completion via Venice's uncensored LLM catalog (Claude, GPT-5, Llama, DeepSeek, Qwen, GLM, Kimi, Venice Uncensored 1.1, etc.). Uncensored: NSFW prompts allowed where the model permits. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_responsesB | OpenAI-compatible Responses API. Single-turn or multi-turn with tool support. Uncensored: NSFW prompts allowed where the model permits. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_embeddingsA | Compute embeddings for text input (OpenAI-compatible). Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_image_generateA | Generate an image. Supports Flux 2 Pro/Max, Lustify SDXL, Anime (WAI), Qwen Image, GPT Image, Nano Banana Pro and others. Uncensored: NSFW prompts allowed where the model permits. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_image_editB | Edit an image with a prompt. Returns base64 PNG. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_image_multi_editA | Edit multiple images together with a single prompt (multi-image composition / outpainting). Returns base64 PNG. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_image_upscaleB | Upscale an image (1-4× scale). Endpoint requires base64 image; this tool fetches the URL and uploads it. Returns base64 PNG. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_image_remove_bgB | Remove image background; returns a transparent PNG (base64). Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_video_generateA | Queue a video generation. Supports Sora 2, Veo 3.1, Kling, Wan, LTX 2, Seedance, Runway Gen-4, and others. Pick a specific id like "veo3.1-fast-text-to-video", "veo3.1-fast-image-to-video", "kling-2.6-pro-text-to-video", "wan-2.6-text-to-video", "seedance-2-0-r2v" etc. Uncensored: NSFW prompts allowed where the model permits. Supports x402 wallet auth (no Venice account needed) and API key. Returns { model, queue_id }; poll with venice_video_status. NOTE: 'duration' is a string enum like '4s' / '6s' / '8s' (model-specific, see model card). |
| venice_video_statusB | Check status of a queued video job. Status enum: PROCESSING, COMPLETED. POST endpoint with body {model, queue_id}. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_video_completeB | Mark a completed video as downloaded; deletes server-side media. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_video_transcriptionsC | Transcribe a YouTube video URL. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_ttsB | Convert text to speech. Supports cloned voices + emotion tags ([whispers], [sarcastically], etc.). Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_asrC | Transcribe audio. Fetches the URL server-side and forwards as multipart/form-data file upload. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_voice_cloneA | Manage TTS voices. Action 'list' returns the static catalog of built-in voices grouped by TTS model (Venice does not expose a list endpoint). Action 'create' clones a voice from a sample audio URL via multipart upload to /v1/audio/voices. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_music_generateA | Queue music generation. Available models: ace-step-15, elevenlabs-music, minimax-music-v2/v25/v26, stable-audio-25, mmaudio-v2-text-to-audio, elevenlabs-sound-effects-v2. Uncensored: NSFW prompts allowed where the model permits. Supports x402 wallet auth (no Venice account needed) and API key. Returns { model, queue_id }; poll with venice_music_status. |
| venice_music_statusB | Check status of a queued music job (POST endpoint with body {model, queue_id}). Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_music_completeC | Mark a completed music job as downloaded. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_web_searchA | Search the web (Firecrawl-backed). Returns ranked results with snippets. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_web_scrapeA | Scrape one URL into markdown text. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_text_parserA | Extract text from a document URL. Fetches the URL server-side and uploads the file as multipart/form-data. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_crypto_rpcA | Proxy a JSON-RPC call to a supported blockchain network (eth_call, eth_blockNumber, etc.). Networks include "base-mainnet", "ethereum-mainnet", "polygon-mainnet", "arbitrum-mainnet", "optimism-mainnet", and others. List all via GET /api/v1/crypto/rpc/networks. Supports x402 wallet auth (no Venice account needed) and API key. |
| venice_list_modelsA | List the live model catalog with capabilities and prices. No authentication required. |
| venice_image_stylesA | List image style presets available for venice_image_generate. No authentication required. |
| venice_audio_quoteA | Get a price quote for a music generation BEFORE queuing. Useful for budgeting. No authentication required. |
| venice_video_quoteA | Get a price quote for a video generation BEFORE queuing. No authentication required. |
| venice_list_charactersB | List public Venice characters. API key required — this endpoint does not accept x402 wallet auth. |
| venice_chat_with_characterA | Chat with a Venice character by slug. Note: the character lookup itself is API-key-only, but the chat completion supports x402 — so x402 users may need to fetch character info via API key first. Uncensored: NSFW prompts allowed where the model permits. |
| venice_x402_balanceA | Check the prepaid x402 credit balance for a wallet address. SIWX-ONLY: this endpoint rejects API key auth and requires X-Sign-In-With-X (forwarded from VENICE_SIWX_TOKEN). The wallet in the path must match the SIWX-authenticated wallet. |
| venice_x402_top_up_infoA | Fetch step-1 top-up requirements (network, USDC token address, receiver wallet, min amount). Steps 2 (sign USDC authorization) and 3 (POST signed payment) require a wallet and happen OUTSIDE this MCP server. |
| venice_x402_transactionsA | List recent x402 top-up + debit transactions for a wallet. SIWX-ONLY: rejects API key, requires X-Sign-In-With-X (VENICE_SIWX_TOKEN). The wallet in the path must match the SIWX-authenticated wallet. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| uncensored-research | Set up a research session free of nanny refusals (security, medical, legal, journalism). |
| nsfw-creative-writing | Adult fiction / mature creative writing scaffold. |
| image-style-explorer | Generate the same prompt across multiple styles for comparison. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| models | Live catalog with prices and capability flags. Auth-free. |
| styles | Available image style presets for venice_image_generate. |
| voices | Available TTS voices including cloned voices. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/veniceai/venice-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server