Server data from the Official MCP Registry
35 AI tools for image/video generation, TTS, transcription, OCR & embeddings via deAPI
35 AI tools for image/video generation, TTS, transcription, OCR & embeddings via deAPI
Remote endpoints: streamable-http: https://mcp.deapi.ai/mcp
A well-structured MCP server for the deAPI AI service with proper OAuth 2.0 authentication and secure credential handling. The codebase demonstrates good security practices with no hardcoded credentials and appropriate permissions for its AI API integration purpose. Supply chain analysis found 12 known vulnerabilities in dependencies (0 critical, 6 high severity).
3 files analyzed · 14 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
From the project's GitHub README.
Production-ready Model Context Protocol (MCP) server for the deAPI REST API. This server exposes all deAPI AI capabilities as MCP tools, enabling LLMs to perform audio transcription, image generation, OCR, video generation, text-to-speech, and more.
audio_transcription - Transcribe audio files to text using Whisper modelsaudio_transcription_price - Calculate transcription costtext_to_audio - Convert text to natural speech (TTS)text_to_audio_price - Calculate TTS costtext_to_music - Generate music from text description and lyricstext_to_music_price - Calculate music generation costaudio_url_transcription - Transcribe audio from URLs of completed Twitter Spacesaudio_url_transcription_price - Calculate Twitter Spaces transcription costvideo_file_transcription - Transcribe video files to textvideo_file_transcription_price - Calculate video file transcription costvideo_url_transcription - Transcribe videos from URLs (YouTube, Twitter/X, Twitch, Kick)video_url_transcription_price - Calculate video URL transcription costtext_to_image - Generate images from text promptsimage_to_image - Transform images with text guidanceimage_to_text - Extract text from images (OCR)image_remove_background - Remove background from imagesimage_upscale - Upscale images to higher resolutiontext_to_image_price - Calculate image generation costimage_to_image_price - Calculate image transformation costimage_to_text_price - Calculate OCR costimage_remove_background_price - Calculate background removal costimage_upscale_price - Calculate upscaling costtext_to_video - Generate videos from text promptsimage_to_video - Animate static images into videosaudio_to_video - Generate video conditioned on audio contentvideo_replace - Replace a person in a video with a character from a reference imagetext_to_video_price - Calculate text-to-video costimage_to_video_price - Calculate image-to-video costaudio_to_video_price - Calculate audio-to-video costvideo_replace_price - Calculate video character replacement costtext_to_embedding - Generate text embeddings for semantic searchtext_to_embedding_price - Calculate embedding costget_balance - Check account balanceget_available_models - List available AI models with specificationscheck_job_status - Query async job status by IDFor running the MCP server:
uv, pip, or conda for package managementFor a deAPI account:
git clone https://github.com/deapi-ai/mcp-server-deapi.git
cd mcp-server-deapi
Option A: Using uv (recommended - fastest)
uv pip install -e .
Option B: Using pip
pip install -e .
Option C: Using conda
# Create conda environment
conda create -n mcp-server-deapi python=3.11
conda activate mcp-server-deapi
# Install dependencies
pip install -e .
.env file for configuration:# Copy the example file
cp .env.example .env
# Edit with your preferences (optional - defaults work fine)
# DEAPI_API_BASE_URL=https://api.deapi.ai
# DEAPI_HTTP_TIMEOUT=30.0
# DEAPI_MAX_RETRIES=3
The server can run in two modes:
Local Mode (for use with Claude Desktop on the same machine):
python -m src.server_remote
The server will start on http://localhost:8000 by default.
Remote Mode (for deployment to a remote server):
# Set host to accept external connections
MCP_HOST=0.0.0.0 MCP_PORT=8000 python -m src.server_remote
See the Remote Deployment section for production deployment options.
Both Claude Desktop and Claude.ai support MCP connectors with built-in OAuth authentication.
Name: deAPI
Remote MCP server: https://your-server-domain:8000/mcp
▼ Advanced settings
OAuth Client ID: deapi-mcp
OAuth Client Secret: YOUR_DEAPI_TOKEN
For details on the OAuth flow, see AUTH.md.
Best for: Server running on the same machine, quick setup without OAuth.
Edit your Claude Desktop config file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": {
"deapi": {
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer YOUR_DEAPI_TOKEN"
}
}
}
}
Replace YOUR_DEAPI_TOKEN with your actual deAPI token. Save the file and restart Claude Desktop.
Authentication is handled at the connection level, not per-tool-call. Tools do NOT accept a deapi_api_token parameter.
Here's an example workflow:
Use get_available_models to see available models
Use get_balance to check remaining credits
Use text_to_image with:
- prompt: "A beautiful sunset over mountains"
- model: "Flux1schnell"
Use audio_transcription with:
- audio: "base64-encoded-audio-or-url"
- include_ts: true
Note: When calling tools via Claude Desktop or MCP SDK, authentication is handled automatically through the server connection (OAuth or HTTP headers). See AUTH.md for detailed OAuth setup.
src/deapi_client.py): HTTP client with auth forwarding and retry logicsrc/polling_manager.py): Smart adaptive polling for async jobssrc/schemas.py): Pydantic models for type safetysrc/tools/): Organized tool implementations
audio.py - Audio transcription, TTS & music generation toolsimage.py - Image generation, transformation, OCR, background removal & upscalingvideo.py - Video generation, audio-to-video & video replace toolsembedding.py - Text embedding toolsutility.py - Balance, models, status toolsThe server uses job-type-specific polling strategies:
| Job Type | Initial Delay | Max Delay | Timeout |
|---|---|---|---|
| Audio | 1s | 5s | 5 min |
| Image | 2s | 8s | 5 min |
| Video | 5s | 30s | 15 min |
Polling uses exponential backoff with a configurable multiplier (default: 1.5x).
Configuration can be set via environment variables (prefixed with DEAPI_):
# API Configuration
DEAPI_API_BASE_URL=https://api.deapi.ai
DEAPI_API_VERSION=v1
# HTTP Client
DEAPI_HTTP_TIMEOUT=30.0
DEAPI_MAX_RETRIES=3
DEAPI_RETRY_BACKOFF_FACTOR=2.0
# Polling Configuration (override defaults)
DEAPI_POLLING_AUDIO__INITIAL_DELAY=1.0
DEAPI_POLLING_AUDIO__MAX_DELAY=5.0
DEAPI_POLLING_AUDIO__TIMEOUT=300.0
mcp-server-deapi/
├── src/
│ ├── server_remote.py # Streamable-HTTP MCP server
│ ├── deapi_client.py # HTTP client with auth forwarding
│ ├── polling_manager.py # Smart adaptive polling logic
│ ├── schemas.py # Pydantic models
│ ├── config.py # Configuration management
│ ├── auth.py # Authentication middleware
│ ├── fastmcp_auth.py # FastMCP OAuth provider
│ ├── oauth_endpoints.py # OAuth 2.0 endpoints
│ └── tools/ # Tool implementations
│ ├── audio.py # Audio transcription, TTS & music generation
│ ├── image.py # Image generation, OCR & processing
│ ├── video.py # Video generation, audio-to-video & video replace
│ ├── embedding.py # Text embeddings
│ ├── utility.py # Balance, models, status
│ └── _price_helpers.py # Price calculation helpers
├── tests/ # Test suite
│ ├── __init__.py
│ └── conftest.py # Pytest fixtures
├── pyproject.toml # Dependencies
├── Dockerfile # Container build
├── docker-compose.yml # Container orchestration
├── .env.example # Environment config template
├── README.md # This file
├── DEPLOYMENT.md # Deployment guide
├── AUTH.md # OAuth authentication setup
└── CLAUDE.md # Claude Code guidance
Install dev dependencies:
uv pip install -e ".[dev]"
Run tests:
pytest
Run smoke tests (requires a running server):
python tests/smoke_test.py
Format code with Black:
black src/
Lint with Ruff:
ruff check src/
Important: The MCP server does NOT store API tokens. Authentication works as follows:
deapi_api_token parameters - authentication is managed at the connection levelAlways keep your API tokens secure and never commit them to version control. See AUTH.md for detailed OAuth setup.
For production environments or when you want to host the MCP server on a remote machine, use the remote server mode.
docker build -t mcp-server-deapi .
docker run -d -p 8000:8000 --name mcp-server-deapi mcp-server-deapi
docker-compose up -d
{
"mcpServers": {
"deapi": {
"url": "http://your-server-ip:8000/mcp"
}
}
}
git clone https://github.com/deapi-ai/mcp-server-deapi.git
cd mcp-server-deapi
pip install -e .
python -m src.server_remote
# Create /etc/systemd/system/mcp-server-deapi.service
sudo systemctl enable mcp-server-deapi
sudo systemctl start mcp-server-deapi
server {
listen 443 ssl http2;
server_name mcp.yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:8000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_buffering off;
proxy_cache off;
proxy_read_timeout 86400;
}
}
fly launch && fly deployheroku create && git push heroku mainFor detailed deployment instructions, security considerations, monitoring, and troubleshooting, see DEPLOYMENT.md.
If the server fails to connect:
If jobs are timing out:
get_balancecheck_job_status to check if the job is still processingIf you get model errors:
get_available_models to see available modelsIf remote MCP connection fails:
curl -N http://your-server:8000/mcpdocker logs mcp-server-deapi or journalctl -u mcp-server-deapiThis project is licensed under the MIT License - see the LICENSE file for details.
For issues related to:
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.