@tabor8/mcp
An MCP server that connects an MCP-compatible AI agent - Claude Desktop, Claude Code, Cursor, Windsurf and others - to your Tabor8 account. Your agent can list your projects, find persons, and get download links, using only your account's data. Cross-account access is not possible.
What your agent can do
- List all your Tabor8 projects, or get one by slug
- List the persons detected in a project
- List clips in a project, optionally filtered to one person
- Get a presigned download URL for any clip (valid one hour)
- Get a presigned face-thumbnail URL for any person (valid one hour)
Read-only. This version cannot upload, delete, rename or modify anything.
Before you start
- A Tabor8 account at tabor8.com.
- An API key from Dashboard → Settings → API Keys. Keys start
cm_live_and are revocable instantly from the same page. - Node.js 18 or newer, for
npxto run the server.
Install
Claude Desktop - add to claude_desktop_config.json (~/Library/Application Support/Claude/ on macOS, %APPDATA%\\Claude\\ on Windows):
{
"mcpServers": {
"tabor8": {
"command": "npx",
"args": ["-y", "@tabor8/mcp"],
"env": {
"TABOR8_API_KEY": "cm_live_your_key_here"
}
}
}
}Claude Code - add the same mcpServers block to your project's .claude/settings.json, or run:
claude mcp add tabor8 -- npx -y @tabor8/mcp
# then set the key in the environment
export TABOR8_API_KEY=cm_live_your_key_hereCursor / Windsurf - add the same block to the MCP settings file (.cursor/mcp.json or the editor's equivalent).
Environment variables
| Variable | Required | Default | Description |
|---|---|---|---|
| TABOR8_API_KEY | Yes | - | Your Tabor8 API key (starts cm_live_) |
| TABOR8_API_URL | No | https://tabor8.com/api | Override for local development |
Tools
| Tool | What it returns |
|---|---|
| list_projects | All projects for the account |
| get_project | A single project by slug |
| list_persons | Persons detected in a project |
| list_clips | Clips in a project, with an optional person_id filter |
| get_clip_url | Presigned download URL for a clip - valid 1 hour, capped at 50 per hour per key |
| get_face_thumbnail | Presigned face-thumbnail URL for a person - valid 1 hour |
Security model
- API keys are scoped to your account only - no cross-user access is possible.
- All responses use a typed data envelope (
_type+data) so a filename or a person label cannot act as a prompt injection. - Download cap: 50 clips per hour per API key.
- Requests are rate-limited to 60 per minute and written to your account's audit log.
- Revoke a key instantly from Dashboard → Settings → API Keys.
Local development
Point the server at a local Tabor8 instance with TABOR8_API_URL:
TABOR8_API_KEY=cm_live_... \
TABOR8_API_URL=http://localhost:3000/api \
npx @tabor8/mcpSource and issues: github.com/effective-ai-sil/tabor8-mcp. Package: @tabor8/mcp on npm. MIT licensed.
Uploading from a script rather than reading? See @tabor8/uploader.