npm @primate-intelligence/mcpstreamable-httpMITupdated 1mo ago
MCP (Model Context Protocol) server for the Primate Vision video analysis API — a video understanding API by Primate Intelligence (docs · llms.txt).
O que dá para fazer com primateintelligence?
@primate-intelligence/mcp
MCP (Model Context Protocol) server for the Primate Vision video analysis API — a video understanding API by Primate Intelligence (docs · llms.txt).
Gives AI agents video scene understanding as tools: register a video, ask a question in plain English, get a deterministic answer with a confidence score and clip timestamps. No hallucinated descriptions — the answer is yes / no / indeterminate with evidence.
Try it for free
A free test key requires no email, no card, no signup:
curl -X POST https://api.primateintelligence.ai/v1/sandbox
Your AI agent can do this for you — right from Claude. Point it at primateintelligence.ai/llms.txt and it can discover, provision, integrate, and self-verify with zero human steps.
Two ways to connect
1. Remote server (recommended) — OAuth, nothing to install
Streamable HTTP endpoint with full OAuth 2.1 + Dynamic Client Registration + PKCE:
https://api.primateintelligence.ai/mcp
In Claude.ai / Claude Desktop: Settings → Connectors → Add custom connector, paste the URL, sign in. No API key handling — the OAuth flow issues and rotates tokens for you.
2. Local stdio server
// claude_desktop_config.json · .mcp.json · mcp.json · .cursor/mcp.json
{
"mcpServers": {
"primate-intelligence": {
"command": "npx",
"args": ["-y", "@primate-intelligence/mcp"],
"env": { "PRIMATE_API_KEY": "pv_live_…" }
}
}
}
Tools
| Tool | Does | Read-only |
|---|---|---|
create_video_from_url |
Register a video from a public https URL (POST /v1/videos) |
— |
create_analysis |
Ask a question about a video (POST /v1/analyses) |
— |
validate_analysis |
Dry-run a prompt: assessability + cost estimate, zero credits (validate_only: true) |
✓ |
create_analysis_batch |
2–10 prompts on one video; each after the first billed at 50% (POST /v1/analyses/batch) |
— |
get_analysis |
Fetch analysis status/result (GET /v1/analyses/{id}) |
✓ |
wait_for_analysis |
Poll until terminal state; returns { analysis, retry } |
✓ |
list_models |
List available models (GET /v1/models) |
✓ |
get_usage |
Credit balance + period meters (GET /v1/usage) |
✓ |
get_credits |
Balance + per-analysis transaction ledger (GET /v1/credits) |
✓ |
get_test_fixture |
Stable fixture for integration self-verification (GET /v1/test-fixture) |
✓ |
Every tool carries MCP annotations (title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint), declares an outputSchema, and returns structuredContent conforming to it. No tool deletes data. Tool descriptions and schemas mirror the OpenAPI document at GET /v1/openapi.json — the spec is the source of truth.
Typical agent flow
get_test_fixture→ verify the integration works (test keys return deterministic results, no quota burn)create_video_from_urlwith the video URLvalidate_analysis→ confirm the prompt is assessable + previewestimated_cost_usd(free)create_analysiswith the question — "Is there a person in this video?" — orcreate_analysis_batchfor severalwait_for_analysis→result.answer(yes|no|indeterminate) +result.confidence+result.clips+result.detected_count(count queries) +result.indeterminate_reason- On
insufficient_credits: callget_credits, report the balance + recent debits, point the human at billing
Security contract
The API key is read from the PRIMATE_API_KEY environment variable only. No tool accepts a key, token, or secret as an argument — so credentials never land in agent transcripts, tool-call logs, or model context. This is enforced by a unit test that fails the build if any tool schema grows a credential-shaped parameter.
Errors surface the machine-readable error code, a docs_url, and the request_id so an agent can self-correct without a human in the loop.
Configuration
| Var | Required | Default |
|---|---|---|
PRIMATE_API_KEY |
yes | — |
PRIMATE_BASE_URL |
no | https://api.primateintelligence.ai |
Development
npm install
npm test # vitest — tool surface, security contract, polling, error shape
npm run build # tsc → dist/
Links
- Quickstart for AI agents — the zero-human-intervention integration path
- API docs
- OpenAPI 3.1 spec
- Error registry
- llms.txt — machine-readable index for agents
- Privacy policy · Terms
License
MIT © Primate AI, Inc.
Instalação
Adicione primateintelligence ao seu cliente. Escolha o que você usa.
{
"servers": {
"mcp": {
"type": "http",
"url": "https://api.primateintelligence.ai/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add mcp -- npx -y @primate-intelligence/mcpcodex mcp add mcp -- npx -y @primate-intelligence/mcpamp mcp add mcp -- npx -y @primate-intelligence/mcp{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"@primate-intelligence/mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @primate-intelligence/mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
10 ferramentas
primateintelligence expõe 10 ferramentas a um agente conectado.
- create_video_from_url
- Register a video from a public https URL (`POST /v1/videos`)
- create_analysis
- Ask a question about a video (`POST /v1/analyses`)
- validate_analysis
- Dry-run a prompt: assessability + cost estimate, zero credits (`validate_only: true`)
- create_analysis_batch
- 2–10 prompts on one video; each after the first billed at 50% (`POST /v1/analyses/batch`)
- get_analysis
- Fetch analysis status/result (`GET /v1/analyses/{id}`)
- wait_for_analysis
- Poll until terminal state; returns `{ analysis, retry }`
- list_models
- List available models (`GET /v1/models`)
- get_usage
- Credit balance + period meters (`GET /v1/usage`)
- get_credits
- Balance + per-analysis transaction ledger (`GET /v1/credits`)
- get_test_fixture
- Stable fixture for integration self-verification (`GET /v1/test-fixture`)
Pontuação
86 / 100
Excelente
- Documentação25/25
- Manutenção22/25
- Confiança16/20
- Capacidade8/15
- Instalação15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 30 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 10 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Histórico de versões
| Versões | Publicada |
|---|---|
| 0.4.0Mais recente | 1 de ago. de 2026 |
| 0.1.3 | 24 de jul. de 2026 |
| 0.1.2 | 23 de jul. de 2026 |