DeepInfra API
Provides a full suite of AI tools via DeepInfra’s OpenAI-compatible API, including image generation, text processing, embeddings, and speech recognition.
MCP DeepInfra AI Tools Server
This is a Model Context Protocol (MCP) server that provides various AI capabilities using the DeepInfra OpenAI-compatible API, including image generation, text processing, embeddings, speech recognition, and more.
Project Structure
mcp-deepinfra/
├── src/
│ └── mcp_deepinfra/
│ ├── __init__.py # Package initialization
│ └── server.py # Main MCP server implementation
├── tests/
│ ├── conftest.py # Pytest fixtures and configuration
│ ├── test_server.py # Server initialization tests
│ └── test_tools.py # Individual tool tests
├── pyproject.toml # Project configuration and dependencies
├── uv.lock # Lock file for uv package manager
├── run_tests.sh # Convenience script for running tests
└── README.md # This file
Setup
-
Install uv if not already installed:
curl -LsSf https://astral.sh/uv/install.sh | sh -
Clone or download this repository.
-
Install dependencies:
uv sync -
Set up your DeepInfra API key: Create a
.envfile in the project root:DEEPINFRA_API_KEY=your_api_key_here
Configuration
You can configure which tools are enabled and set default models for each tool using environment variables in your .env file:
-
ENABLED_TOOLS: Comma-separated list of tools to enable. Use "all" to enable all tools (default: "all"). Example:ENABLED_TOOLS=generate_image,text_generation,embeddings -
MODEL_GENERATE_IMAGE: Default model for image generation (default: "Bria/Bria-3.2") -
MODEL_TEXT_GENERATION: Default model for text generation (default: "meta-llama/Llama-2-7b-chat-hf") -
MODEL_EMBEDDINGS: Default model for embeddings (default: "sentence-transformers/all-MiniLM-L6-v2") -
MODEL_SPEECH_RECOGNITION: Default model for speech recognition (default: "openai/whisper-large-v3") -
MODEL_ZERO_SHOT_IMAGE_CLASSIFICATION: Default model for zero-shot image classification (default: "openai/gpt-4o-mini") -
MODEL_OBJECT_DETECTION: Default model for object detection (default: "openai/gpt-4o-mini") -
MODEL_IMAGE_CLASSIFICATION: Default model for image classification (default: "openai/gpt-4o-mini") -
MODEL_TEXT_CLASSIFICATION: Default model for text classification (default: "microsoft/DialoGPT-medium") -
MODEL_TOKEN_CLASSIFICATION: Default model for token classification (default: "microsoft/DialoGPT-medium") -
MODEL_FILL_MASK: Default model for fill mask (default: "microsoft/DialoGPT-medium")
The tools always use the models specified via environment variables. Model selection is configured at startup time through the environment variables listed above.
Running the Server
To run the server locally:
uv run mcp_deepinfra
Or directly with Python:
python -m mcp_deepinfra.server
Using with MCP Clients
Configure your MCP client (e.g., Claude Desktop) to use this server.
For Claude Desktop, add to your claude_desktop_config.json:
{
"mcpServers": {
"deepinfra": {
"command": "uv",
"args": ["run", "mcp_deepinfra"],
"env": {
"DEEPINFRA_API_KEY": "your_api_key_here"
}
}
}
}
Tools Provided
This server provides the following MCP tools:
generate_image: Generate an image from a text prompt. Returns the URL of the generated image.text_generation: Generate text completion from a prompt.embeddings: Generate embeddings for a list of input texts.speech_recognition: Transcribe audio from a URL to text using Whisper model.zero_shot_image_classification: Classify an image into provided candidate labels using vision model.object_detection: Detect and describe objects in an image using multimodal model.image_classification: Classify and describe contents of an image using multimodal model.text_classification: Analyze text for sentiment and category.token_classification: Perform named entity recognition (NER) on text.fill_mask: Fill masked tokens in text with appropriate words.
Testing
To test the server locally, run the pytest test suite:
# Install test dependencies
uv sync --extra test
# Run all tests
pytest
# Run with verbose output
pytest -v
# Run specific test file
pytest tests/test_tools.py
# Use the convenience script
./run_tests.sh
The tests include:
- Server initialization and tool listing
- Individual tool functionality tests via JSON-RPC protocol
- All tests run synchronously without async/await complexity
Running with uvx
uvx is designed for running published Python packages from PyPI or GitHub. For local development, use the uv run command as described above.
If you publish this package to PyPI (e.g., as mcp-deepinfra), you can run it with:
uvx mcp-deepinfra
And configure your MCP client to use:
{
"mcpServers": {
"deepinfra": {
"command": "uvx",
"args": ["mcp-deepinfra"],
"env": {
"DEEPINFRA_API_KEY": "your_api_key_here"
}
}
}
}
For local development, stick with the uv run approach.
เซิร์ฟเวอร์ที่เกี่ยวข้อง
Scout Monitoring MCP
ผู้สนับสนุนPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
ผู้สนับสนุนAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Digma
A code observability MCP enabling dynamic code analysis based on OTEL/APM data to assist in code reviews, issues identification and fix, highlighting risky code etc.
Claude Memory MCP Server
A persistent memory server for Large Language Models, designed to integrate with the Claude desktop application. It supports tiered memory, semantic search, and automatic memory management.
Code Editor
Enables AI assistants to write, edit, and manage code files directly in a specified directory, respecting .gitignore patterns.
Hashkey MCP Server
Provides onchain tools for AI applications to interact with the Hashkey Network.
Remote MCP Server (Authless)
An example of a remote MCP server without authentication, deployable on Cloudflare Workers.
ID Generator MCP
Generate unique IDs using various algorithms like UUID, CUID2, Nanoid, and ULID.
BaseCreative MCP
A template for deploying a remote MCP server on Cloudflare Workers without authentication.
Sequa MCP
A proxy that connects local STDIO with remote MCP servers, enabling IDEs to use MCP without extra infrastructure.
godoc-mcp-server
MCP server to provide golang packages and their information from pkg.go.dev
Bitrise
Manage apps, builds, and artifacts on Bitrise, a Continuous Integration and Delivery (CI/CD) platform.