MCP Video Recognition Server
The MCP Video Recognition Server provides tools for analyzing and describing media using Google's Gemini AI:
Image Recognition: Analyze and describe images with custom prompts
Audio Recognition: Transcribe and analyze audio files
Video Recognition: Describe and analyze video content
You can specify the media file path, provide custom prompts for analysis, and select which Google Gemini model to use.
Provides tools for image, audio, and video recognition using Google's Gemini AI models, allowing analysis and description of images, transcription of audio, and description of video content.
Click on "Install 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., "@MCP Video Recognition Serverdescribe what's happening in this video: /videos/hiking.mp4"
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.
MCP Video Recognition Server
An MCP server that describes images, transcribes audio, and summarizes video from local files. It uses Google Gemini by default, or any OpenAI-compatible endpoint such as OpenRouter.
Features
Pick your provider: Google Gemini (default) or an OpenAI-compatible endpoint
Three MCP tools for local images, audio, and video
Optional Gemini model fallback, plus a final OpenAI-compatible backup
Model support varies. Choosing the OpenAI-compatible provider does not mean every endpoint or model handles every media type, and the server never substitutes a model or provider for you.
Related MCP server: Puter MCP Server
Prerequisites
Node.js 18.0.0 or later
An API key for your provider:
Gemini:
GOOGLE_API_KEYOpenAI-compatible:
OPENAI_COMPATIBLE_API_KEY
Install
git clone https://github.com/yourusername/mcp-video-recognition.git
cd mcp-video-recognition
npm install
npm run buildQuickstart
Add the server to your MCP client config and point it at the built dist/index.js:
{
"mcpServers": {
"video-recognition": {
"command": "node",
"args": ["/path/to/mcp-video-recognition/dist/index.js"],
"env": {
"GOOGLE_API_KEY": "your_google_api_key"
}
}
}
}On Windows, use forward slashes or doubled backslashes (\\) in the path. Save the file and reconnect your MCP client.
For OpenRouter or another OpenAI-compatible endpoint, set RECOGNITION_PROVIDER=openai-compatible plus its variables. See Configuration for a ready-made example.
With FLUJO:
Click Add Server.
Paste the GitHub URL.
Click Parse, Clone, Install, Build and Save.
Configuration
The server reads environment variables. The most common ones:
Variable | Default | Purpose |
|
|
|
| none | Gemini API key |
|
| Gemini model to use |
| none | OpenAI-compatible API key |
| none | Endpoint base URL |
| xiaomi/mimo-v2.5 | Model to use |
| none | Media directories for the OpenAI-compatible provider and Gemini backup |
Bad values stop startup; they are not fixed silently.
For the full variable list, validation rules, the OpenRouter example, and supported media types, see the Configuration Reference.
For Gemini model fallback and the final backup, see the Provider Recovery Reference.
Tools
The server provides three MCP tools. Each takes a local filepath, an optional prompt (default Describe this content), and an optional modelname override.
image_recognition— describe an imageaudio_recognition— transcribe or describe audiovideo_recognition— describe a video
Example:
{
"name": "video_recognition",
"arguments": {
"filepath": "/path/to/video.mp4",
"prompt": "Describe what happens in this video"
}
}Security
HTTPS is required by default. Plain HTTP is allowed only for an explicitly enabled local endpoint.
The OpenAI-compatible provider and Gemini backup read media only from directories you list in
ALLOWED_MEDIA_ROOTS.Keys stay in the process environment. Do not commit real keys.
For endpoint rules, resource limits, and incident response, see the Security Reference.
Development
# Run in development mode
GOOGLE_API_KEY=your_api_key npm run dev
# Build and run the provider foundation tests
npm run verify:provider-foundationProject Structure
src/index.ts: entry point and provider constructionsrc/server.ts: MCP server and transportsrc/tools/: the three recognition toolssrc/services/: Gemini and OpenAI-compatible providerssrc/types/: shared typessrc/utils/: helpers
License
MIT
Maintenance
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables text-to-image generation, style transfer, background removal, and automatic image cropping using Google's Imagen AI models through the Model Context Protocol.
- AlicenseNot gradedqualityCmaintenanceProvides AI-powered media generation tools including image, speech, video, OCR, and voice conversion via the Model Context Protocol.20MIT
- AlicenseAqualityCmaintenanceProvides AI-powered image and video analysis using Google Gemini and Vertex AI models through the Model Context Protocol.514172MIT
- AlicenseNot gradedqualityBmaintenanceProvides image analysis, inspection, cropping, OCR, and comparison capabilities via the Model Context Protocol, allowing AI agents to process and manipulate images using vision models.2MIT
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Transform video, audio and images, and generate media from prompts. FFmpeg, captions, models.
A Model Context Protocol server for Wix AI tools
Appeared in Searches
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/mario-andreschak/mcp_video_recognition'
If you have feedback or need assistance with the MCP directory API, please join our Discord server