An agent can connect on its own if it already holds X_REKA_API_KEY, X_REKA_API_KEY.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
Endpoints
remote
auth
reachable
uptime 30d
p50
protocol
last ok
https://mcp.reka.ai/mcpstreamable-http
api_key ${X_REKA_API_KEY}
yes
100%
512 ms
2025-11-25
2026-10-19
package
registry
version
runtime
secrets
reka-mcp
pypi
0.1.10
–
Tools (17)
ask_videoread-only
Ask a question about one or more videos with visual analysis. Most effective on focused time ranges — use start/end to specify the segment to analyze.
BEFORE calling this tool, read the reka://docs/guide resource for recommended workflows. In most cases, you should first:
- search_videos to find WHEN something happens, then pass those timestamps here as start/end
- segment_video to detect and locate specific objects
- get_transcript to read what was said
For single-video questions, pass video_id with start/end. For cross-video questions, pass videos — a list of video references with start/end each.
For follow-up questions, pass conversation_id from the previous response. You can add start/end to drill into a specific moment while keeping the conversation context.
Requires qa_only or full pipeline.
create_group
Create a new video group. Groups organize videos into collections. Returns the new group's ID and name.
delete_groupdestructive
Delete a video group. Videos in the group are not deleted — they are simply removed from the group.
delete_videodestructive
Permanently delete a video and all its indexed data (transcript, captions, embeddings, etc.). This cannot be undone.
get_captionsread-only
Get AI-generated visual descriptions of what happens on screen. Use this to understand the visual content without watching — each caption describes a short segment with timestamps.
Use start/end to narrow results.
Requires the captions feature (qa_only or full pipeline).
get_feature_catalogread-only
List available video analysis features with their dependencies and descriptions. Use this to understand what features exist and what pipelines to use with index_video.
get_scenesread-only
Get detected scene boundaries with start/end timestamps. Use this to understand the video's structure, then pass scene timestamps as start/end to:
- ask_video for per-scene contextual analysis
- segment_video to detect specific objects per scene (scenes typically fit in segment_video's 15s max range)
Requires transcript indexed with scene detection (on by default; skipped only if index_video was called with scene_detection=False).
get_transcriptread-only
Get the spoken words in a video. Use this instead of ask_video when you need to read what was said — it returns the actual text, not a summary.
Use start/end to narrow results for long videos.
Requires the transcript feature to be indexed.
get_videoread-only
Get detailed information about a video including upload status, metadata (duration, resolution, fps), and per-feature indexing status. Use this to check if upload or indexing is complete. The 'url' field is a short-lived HTTPS presigned URL (expires within hours) — fetch immediately and do not store; call get_video again for a fresh URL when needed.
index_video
Index a video for search, QA, or full analysis. Processes the video through a pipeline of AI features. Typically takes 3-7 minutes; longer for long videos or the 'full' pipeline. Times out after 10 minutes by default.
Pipelines:
- search_only: transcription + captions + embeddings (enables search_videos)
- qa_only: transcription + captions (enables ask_video)
- full: transcription + captions + embeddings (enables all tools)
Scene detection is enabled by default and produces scene boundaries for get_scenes. Pass scene_detection=False to skip it.
Prerequisites: if using video_id, the video must be in 'uploaded' status. Use get_video to check status before calling this tool.
list_groupsread-only
List all video groups. Use list_videos with a group_id to see videos in a specific group.
list_videosread-only
List all videos in your account, or filter to a specific group by passing group_id. Shows upload status and which features have been indexed for each video. Each video's 'url' is a short-lived HTTPS presigned URL (expires within hours) — fetch immediately and do not store; call list_videos or get_video again for a fresh URL when needed.
search_videosread-only
Find WHEN and WHERE something happens across your videos. Returns timestamped results ranked by relevance — use these timestamps as start/end in ask_video for focused analysis.
This is the recommended first step for most questions. Instead of asking ask_video about the entire video, search first to narrow down the relevant moments.
Each result's 'video_url' is a short-lived HTTPS presigned URL (expires within hours) — fetch immediately and do not store; call search_videos or get_video again for a fresh URL when needed.
Requires search_only or full pipeline.
segment_videoread-only
Detect objects in a video segment using text prompts. Describe what to look for and get per-frame detections with bounding boxes and confidence scores.
Prompt tips:
- Use broad, visual categories: 'animal', 'vehicle', 'person', 'text on screen'
- Specific labels ('rabbit', 'Toyota') are less reliable — the detector matches visual patterns, not semantic concepts
- Best for confirming whether a category of object appears in a time window, not for precise identification
How to pick a time range:
- Use search_videos to find WHEN something appears, then pass those timestamps here
- Use get_scenes to scan systematically — call segment_video once per scene (scenes typically fit in the 15s window)
- Or pass any range you already know
Maximum range is 15 seconds per call; for longer spans, make multiple calls with consecutive windows.
Does NOT require any feature indexing — works on any uploaded video.
summarize_videoread-only
Start here. Get a compact overview of a video: metadata, which features are indexed, a transcript preview, and scene count. Use this to decide which tools to call next — then use segment_video to detect specific objects in time ranges of interest.
update_video
Update a video's display name, title, description, or move it to a different group. At least one field must be provided. To remove a video from its group, pass group_id as null.
upload_video
Upload a video from a URL. Returns a video_id. Local file paths are not accepted; upload files outside the MCP server and pass a reachable video_url. The upload runs asynchronously — poll get_video until status is 'uploaded', then call index_video to enable search and analysis.