Theta EdgeCloud On-Demand API MCP Server
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Theta EdgeCloud On-Demand API MCP Server Generate an image of a cat in space"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Theta EdgeCloud On-Demand API MCP Server
Official Model Context Protocol (MCP) server for Theta EdgeCloud's On-Demand Model APIs. Access 20+ AI models directly from Claude Desktop, Claude Code, Cursor, and other MCP-compatible clients.
Features
20+ AI Models - Image generation, audio transcription, LLMs, and more
Simple Integration - Works with any MCP-compatible client
Sync & Async - Get results immediately or poll for long-running tasks
File Uploads - Upload local files for processing
Related MCP server: Wiro MCP Server
Installation
For Claude Desktop
Add to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"theta-edgecloud": {
"command": "npx",
"args": ["@thetalabs/on-demand-api-mcp"],
"env": {
"THETA_API_KEY": "your-api-key-here"
}
}
}
}For Claude Code
claude mcp add theta-edgecloud -e THETA_API_KEY=your-api-key-here -- npx @thetalabs/on-demand-api-mcpReplace your-api-key-here with your actual API key.
Verify it's working:
claude mcp listYou should see theta-edgecloud with status ✓ Connected.
Getting Your API Key
Create a new API key
Add it to your MCP configuration
Available Tools
list_services
Discover available AI models and their capabilities.
list_services()
list_services(category="image")infer
Run AI inference on any model.
# Transcribe audio
infer(service="whisper", input={"audio_filename": "https://example.com/audio.wav"})
# Generate an image
infer(service="flux-1-schnell", input={"prompt": "A sunset over mountains"})
# Chat with an LLM
infer(service="llama-3-1-8b", input={"messages": [{"role": "user", "content": "Hello!"}]})Parameters:
service(required) - Service alias (e.g., "whisper", "flux-1-schnell")input(required) - Input parameters (varies by service)wait(optional) - Seconds to wait for result (0-60, default 30)variant(optional) - Model variant if available (e.g., "turbo")
get_request_status
Check the status of an async inference request.
get_request_status(request_id="infer_abc123")get_upload_url
Get a presigned URL to upload a local file.
get_upload_url(service="whisper", input_field="audio_filename")Example Conversations
User: "What AI models are available on Theta EdgeCloud?"
Claude: calls list_services() "Here are the available models..."
User: "Transcribe this audio file: https://example.com/meeting.wav"
Claude: calls infer(service="whisper", input={"audio_filename": "..."}) "Here's the transcription..."
User: "Generate an image of a cyberpunk cityscape"
Claude: calls infer(service="flux-1-schnell", input={"prompt": "cyberpunk cityscape at night, neon lights"}) "Here's your image: [URL]"
Configuration
Environment Variables
Variable | Description | Required |
| Your Theta EdgeCloud API key | Yes |
| API base URL (default: https://api.thetaedgecloud.com) | No |
Development
# Clone the repo
git clone https://github.com/thetalabs/on-demand-api-mcp
cd on-demand-api-mcp
# Install dependencies
npm install
# Build
npm run build
# Run locally
THETA_API_KEY=your-key npm startPublishing
1. Publish to npm
# Login to npm (if not already)
npm login
# Publish the package
npm publish --access publicThe package will be available as @thetalabs/on-demand-api-mcp on npm.
2. Register with MCP Registry
The MCP Registry is the official directory for MCP servers. Registering makes the server discoverable by MCP-compatible clients.
# Clone the registry repo
git clone https://github.com/modelcontextprotocol/registry
cd registry
# Build the publisher tool
make publisher
# Publish your server (requires authentication)
./bin/mcp-publisher --helpNamespace options:
Namespace Type | Example | Verification |
GitHub-based |
| GitHub OAuth |
Domain-based |
| DNS or HTTP challenge |
3. Automated Publishing (CI/CD)
For GitHub Actions, use GitHub OIDC authentication:
# .github/workflows/publish.yml
name: Publish to MCP Registry
on:
release:
types: [published]
jobs:
publish:
runs-on: ubuntu-latest
permissions:
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci && npm run build
- run: npm publish --access public
# Add MCP registry publishing step hereLicense
MIT
Links
Available Tools
4 toolsget_request_statusA
Check the status of an inference request. Use this to get results of async requests.
Inputs: request_id (required).
get_upload_urlA
Get a presigned URL to upload a file for inference. Use this when you need to upload a local file (audio, image, etc.) before running inference.
Inputs: service (required), input_field (required).
inferB
Run AI inference on a Theta EdgeCloud model. Supports image generation, audio transcription, text generation, and more. IMPORTANT: Call list_services first to see available services and their required inputs.
Inputs: input (required), service (required), wait, variant, +1 more.
list_servicesA
List all available AI models and services on Theta EdgeCloud. Returns service names, descriptions, and input/output specifications.
Inputs: category.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: listing services, running inference, checking request status, and obtaining upload URLs. There is no meaningful overlap or ambiguity between them.
Most tools follow a verb_noun pattern (list_services, get_request_status, get_upload_url), but infer is a single verb without an object. This is a minor deviation and the overall naming is still clear and predictable.
Four tools is well-scoped for this server's purpose: service discovery, inference execution, asynchronous status checking, and upload support. Each tool earns its place without unnecessary bloat.
The tool surface covers the full lifecycle of an on-demand inference request: discover services, upload inputs when needed, trigger inference, and poll for results. No obvious gaps exist for the stated domain.
Maintenance
Related MCP Connectors
Generate images, video, audio and short films with 140+ AI models from any MCP client.
MCP server for OpenAI API (chat completions, image generation, embeddings) via AceDataCloud
MCP server for Wan AI video generation
Chat, image, video, and audio models from many vendors behind one remote MCP server and one key.
Related MCP Servers
- AlicenseAqualityFmaintenanceProduction-grade MCP server for image and video understanding and generation across Gemini, OpenAI, and Grok.5114 PyPI4Apache 2.0

Wiro MCP Serverofficial
AlicenseAqualityBmaintenanceOfficial MCP server for Wiro AI that provides access to hundreds of AI models for generation, editing, and analysis from any MCP-compatible assistant.501,371 npm5MIT- AlicenseAqualityDmaintenanceMCP server for AI-powered media generation: images, videos, audio, and upscaling using 99 AI models.6MIT
- AlicenseAqualityDmaintenanceMulti-provider AI video, speech, music, and transcription MCP server enabling video generation, image-to-video, TTS, music creation, and speech-to-text via a unified interface.3MIT