> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getjumper.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Developers

> Build custom tools on top of Jumper's local analysis and search using the Public API or AI agents.

Jumper runs locally and handles the heavy work: analyzing footage, visual and speech search, face recognition, thumbnails, and exports. You build the workflow layer: a review UI, a batch tool, a facility pipeline, or an NLE plugin tailored to how you actually edit.

Everything stays on your machine. Your app talks to the Jumper backend over a local API at `http://localhost:6699/api/v1`.

## What Jumper handles vs what you build

**Jumper handles:**

* Visual, transcript, and image search across analyzed media
* Speech transcription and face clustering
* Thumbnails, metadata, and clip exports
* Watch folders and analysis data management

**You build:**

* The interface or automation that fits your workflow
* How results are reviewed, saved, renamed, or handed off
* Integrations with other tools you already use

Your app does not need to solve video AI, indexing, or media analysis. It calls Jumper and focuses on the part only you know: your bins, naming conventions, review rituals, and handoffs.

## How it fits together

```mermaid actions={false} theme={null}
  flowchart LR
    YourApp["Your app, script,\nor AI agent"]
    API["Jumper API\nlocalhost:6699"]
    Core["Analysis, search,\nfaces, export"]
    Media["Your footage +\nanalysis folder"]

    YourApp --> API --> Core --> Media
```

## Two ways to extend Jumper

<CardGroup cols={2}>
  <Card title="Custom apps (Public API)" icon="code" href="/developers/your-first-app">
    Build a persistent tool with its own UI or automation. Search, review, and export, wired to your workflow.
  </Card>

  <Card title="Agentic editing (MCP)" icon="robot" href="/core-concepts/agentic-editing">
    Describe tasks in plain language. An AI agent orchestrates Jumper for you: search, export, timeline round-trips.
  </Card>
</CardGroup>

Use the **Public API** when you want a standalone app, script, or integration that runs the same way every time. Use **MCP** when you want a conversational agent to figure out the steps on the fly.

## Who this is for

* **Editors** with a niche workflow that the main Jumper UI does not cover
* **Post supervisors and facility teams** automating recurring steps across a shop
* **Developers** building tools on top of local media analysis

You do not need to be a programmer to get started with the Public API. If you can describe what you want clearly, a coding agent (Cursor, Codex, Claude Code, or similar) can build a first version from the [API reference](/api-reference/introduction) and [OpenAPI spec](/api-reference/openapi-v1.yaml).

For a walkthrough of building and iterating on a custom app, see the Jumper blog:

* [Vibe Coding for Video Editors 101](https://getjumper.io/blog/vibe_coding_for_video_editors_101)
* [Vibe-Coding Your Own Video Editing Tools](https://getjumper.io/blog/vibe_coding_your_own_video_editing_tools)

## What people build

Common starting points:

* A custom search and review UI (timeline, deck, keyboard-driven selects)
* A batch export or rename tool for dailies or stringouts
* A facility script that searches analyzed media and writes results to shared storage
* A small local web app that combines Jumper results with another tool you already use

Start small. Prove the connection works, then add features one at a time.

## Before you begin

<Info>
  This requires a **Jumper Pro** license. Keep Jumper running while you test. The API is local.
</Info>

Have these ready:

* Your **Jumper Pro license key**: find it in the [Settings tab](/interface/settings-tab#license-key)
* The path to your **analysis folder**: configured in [Settings](/interface/settings-tab#analysis-folder)
* **Analyzed media**: search only works on footage Jumper has already processed. See [Processing](/core-concepts/processing).

## Get started

<CardGroup cols={2}>
  <Card title="Your first app" icon="rocket" href="/developers/your-first-app">
    Build a small search app with a coding agent. Step-by-step.
  </Card>

  <Card title="API reference" icon="braces" href="/api-reference/introduction">
    Authentication, workflow, endpoint groups, and examples.
  </Card>

  <Card title="OpenAPI spec" icon="file-code" href="/api-reference/spec-files">
    Raw YAML and JSON for generated clients and agent tooling.
  </Card>

  <Card title="Agentic editing tutorial" icon="wand-magic-sparkles" href="/tutorials/agentic-editing">
    Search and export clips via an AI agent instead of building your own app.
  </Card>
</CardGroup>

## Share what you build

Built something useful, chaotic, or both? We would like to see it.

<Card title="Email" icon="at" iconType="regular" horizontal href="mailto:hello@getjumper.io">
  Send us an email at [hello@getjumper.io](mailto:hello@getjumper.io)
</Card>

<Card title="Discord" icon="discord" iconType="regular" horizontal href="https://discord.getjumper.io">
  Join our Discord server
</Card>
