Compeller
REMOTE · COMPELLER.AI · SCANNED AUG 3
Create and track AI music videos and audio-reactive visuals from songs.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security63
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (delete_webhook). See how to fix → View diagnostics → Fail
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability70
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 2432 tokens (~81/item across 30 items; 30 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage97
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 92% of tool parameters carry a description.Partial
Capabilities20
- Spec-recency check failed: implements MCP spec 2024-11-05; the latest is 2026-07-28. See how to fix → Fail
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · compeller.ai
claude mcp add --transport http ai-compeller-compel https://compeller.ai/api/mcp
[mcp_servers.ai-compeller-compel] url = "https://compeller.ai/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ai-compeller-compel": {
"type": "remote",
"url": "https://compeller.ai/api/mcp",
"enabled": true
}
}
} openclaw mcp add ai-compeller-compel --url https://compeller.ai/api/mcp --transport streamable-http
mcp_servers:
ai-compeller-compel:
url: "https://compeller.ai/api/mcp" {
"mcpServers": {
"ai-compeller-compel": {
"type": "http",
"url": "https://compeller.ai/api/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Jul 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 26 Jul 26 59
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://compeller.ai/api/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=*.compeller.ai | CN=YE1,O=Let's Encrypt,C=US | 28 Jul 2026 | 26 Oct 2026 | ECDSA 256 | ECDSA-SHA384 | 6118174ff6fb010db4e1aca660002b548c1 |
| SANs: *.compeller.ai, compeller.ai | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
DNSSEC insecure
Validation of compeller.ai. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| ai. | present | 3799 | 8 | Verified |
| compeller.ai. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | geolocation=() |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://compeller.ai/api/mcp | Verified | 200 | |
| http (plaintext) | http://compeller.ai/api/mcp | HTTPS enforced | 301 | https://compeller.ai/api/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
ack_lighting_cue ~114
REACT/BAE acknowledgement for a launch_id. Idempotently records whether the executor accepted or rejected the cue and which executor observed it.
| Name | Type | Req | Description |
|---|---|---|---|
| accepted | boolean | yes | true when REACT/BAE accepted the cue for execution |
| executor_id | string | — | Stable REACT/BAE executor instance id |
| launch_id | string | yes | The launch_id to acknowledge |
| observed_at | string | — | Executor observation timestamp |
| rejected_reason | string | — | Required by convention when accepted=false |
No output schema declared.
No examples provided.
cancel_compel ~84
Cancel an in-progress compel. Dequeues it if still queued, otherwise cancels any active external (AI provider) tasks and transitions it to CANCELLED. Idempotent - cancelling an already-CANCELLED compel succeeds. Use to stop a mis-prompted or runaway job before it consumes more render minutes.
| Name | Type | Req | Description |
|---|---|---|---|
| compel_id | integer | yes | The compel ID to cancel |
No output schema declared.
No examples provided.
create_compel ~168
Create a Compeller generation job from primary audio media and optional reference media. Returns compel id, status, and links to track progress and retrieve renderings.
| Name | Type | Req | Description |
|---|---|---|---|
| artist_context | string | — | Additional creative context about the artist or song |
| aspect_ratio | string | — | Explicit aspect ratio override (takes precedence over target_platform). |
| primary_media_id | integer | yes | ID of the uploaded audio media to use as the primary track |
| style | string | — | Visual style. Use one of the exact ids returned by list_styles (e.g. "Cinematic Realistic", "Anime / Manga"). Omit to use the account default. |
| target_platform | string | — | Target platform; sets the aspect ratio when aspect_ratio is omitted. |
| title | string | yes | Title for the compel |
No output schema declared.
No examples provided.
create_compel_from_music ~158
Create a compel from a selected Deezer preview track. If the user provides an audio file instead, upload that file and use create_compel.
| Name | Type | Req | Description |
|---|---|---|---|
| artist_context | string | — | Additional creative context |
| aspect_ratio | string | — | Explicit aspect ratio override (takes precedence over target_platform). |
| style | string | — | Visual style. Use one of the exact ids returned by list_styles (e.g. "Cinematic Realistic", "Anime / Manga"). Omit to use the account default. |
| target_platform | string | — | Target platform; sets the aspect ratio when aspect_ratio is omitted. |
| title | string | — | Optional compel title override |
| track_id | integer | yes | Deezer track id returned by search_music |
No output schema declared.
No examples provided.
delete_webhook ~44
Delete a webhook endpoint by id. Removes the registration and stops future deliveries.
| Name | Type | Req | Description |
|---|---|---|---|
| webhook_id | integer | yes | The webhook id returned by register_webhook or list_webhooks |
No output schema declared.
No examples provided.
get_account_credits ~56
Get the authenticated account's render-minute balance and plan: minutes remaining (free + paid), monthly allowance, plan code, and whether the quota is exceeded. Call before starting an expensive render so an agent can make cost-aware decisions.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_capabilities ~22
Get Compeller platform capabilities, supported features, and API version.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_compel ~38
Get the current status, progress, and details of a Compeller generation job.
| Name | Type | Req | Description |
|---|---|---|---|
| compel_id | integer | yes | The compel ID to check |
No output schema declared.
No examples provided.
get_lighting_cue ~58
Fetch a single live lighting cue by its launch_id, including resolved variables, launch_contract, and REACT feedback.
| Name | Type | Req | Description |
|---|---|---|---|
| launch_id | string | yes | The launch_id returned by launch_lighting_cue or list_lighting_cues |
No output schema declared.
No examples provided.
get_pricing ~18
Get current Compeller subscription plans and pricing.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_rendering ~30
Get details of a specific video rendering.
| Name | Type | Req | Description |
|---|---|---|---|
| rendering_id | integer | yes | The rendering ID to retrieve |
No output schema declared.
No examples provided.
launch_lighting_cue ~235
Launch a starter lighting effect onto a stage as a live cue (e.g. "gobo-cycle on the stage's 7R beams at speed 0.5"). Pass effect_id (from list_lighting_effects) and optional variables to override effect defaults. Validation is loud: an unknown effect, a launch_contract whose bindings a stage cannot render, or a missing required field is rejected. Returns the active cue including its launch_id, resolved variables, and launch_contract for REACT. REACT executes the cue per-frame; the live strobe slider stays authoritative and is never raised by a launch.
| Name | Type | Req | Description |
|---|---|---|---|
| effect_id | string | — | COM-497 starter effect id from list_lighting_effects, e.g. "gobo-cycle" |
| launch_contract | object | — | Advanced: an explicit launch_contract to launch instead of resolving one from effect_id. |
| stage_id | integer | — | The stage to launch onto (must belong to the authenticated account) |
| variables | object | — | Optional variable overrides (name -> value), e.g. {"speed": 0.5}. Defaults come from the effect. |
No output schema declared.
No examples provided.
list_compels ~51
List all Compeller generation jobs for the authenticated account, newest first.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max results to return (default 20, max 100) |
| offset | integer | — | Pagination offset |
No output schema declared.
No examples provided.
list_lighting_cues ~72
List the live (non-stopped) lighting cues REACT is executing, including each cue's launch_id, resolved variables, launch_contract, and feedback. Optionally scope to one stage.
| Name | Type | Req | Description |
|---|---|---|---|
| stage_id | integer | — | Optional stage id to scope the listing to (must belong to the authenticated account) |
No output schema declared.
No examples provided.
list_lighting_effects ~75
List the COM-497 starter lighting effects available to launch as cues (e.g. "gobo-cycle", "x-move", "dimmer-pulse"). Each effect carries an id, the capabilities it needs, and a launch_contract template. Use the returned id as effect_id for launch_lighting_cue.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_renderings ~35
List all video renderings for a specific compel.
| Name | Type | Req | Description |
|---|---|---|---|
| compel_id | integer | yes | The compel ID to list renderings for |
No output schema declared.
No examples provided.
list_styles ~18
List available visual styles for Compeller video generation.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_webhooks ~27
List all webhook endpoints registered for the authenticated account. Secrets are never returned by this tool.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
register_webhook ~190
Register an HTTPS endpoint to receive signed push notifications for compel lifecycle events (compel.ready when renderable, compel.completed, compel.failed). Returns webhook_id and the HMAC-SHA256 signing secret exactly once - store the secret immediately, it is never returned again. Deliveries are signed via X-Compeller-Signature: sha256=<hex> over the raw body. Delivery is at-least-once: a failed delivery is retried with backoff (up to 6 attempts) and every retry carries the same X-Compeller-Event-Id, so dedupe on it.
| Name | Type | Req | Description |
|---|---|---|---|
| events | array | — | Event types to subscribe to. Omit or pass ["*"] for all. Known types: compel.ready (renderable - call start_render), compel.completed, compel.failed. |
| url | string | yes | HTTPS URL to deliver events to (max 2048 chars) |
No output schema declared.
No examples provided.
report_lighting_cue ~127
REACT/BAE report-back for cue status, active variables, skipped bindings, capability misses, last_frame_at, and errors.
| Name | Type | Req | Description |
|---|---|---|---|
| active_variables | object | — | Variables actually being sampled by REACT/BAE |
| capability_misses | array | — | — |
| error | string | — | — |
| executor_id | string | — | — |
| last_frame_at | string | — | — |
| launch_id | string | yes | The launch_id to report |
| skipped_bindings | array | — | — |
| status | string | — | ACTIVE, STOP_REQUESTED, or STOPPED |
No output schema declared.
No examples provided.
rotate_webhook_secret ~76
Mint a new HMAC-SHA256 signing secret for a registered webhook endpoint. The previous secret is invalidated immediately - integrators must update their receiver before the next compel terminal event fires. Returns the new secret exactly once; store it on receipt.
| Name | Type | Req | Description |
|---|---|---|---|
| webhook_id | integer | yes | The webhook id to rotate the secret on |
No output schema declared.
No examples provided.
search_compels ~50
Search Compeller generation jobs by title for the authenticated account.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max results to return (default 20) |
| query | string | yes | Search query to match against compel titles |
No output schema declared.
No examples provided.
search_media ~67
Search and list uploaded media files for the authenticated account.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max results to return (default 20, max 100) |
| offset | integer | — | Pagination offset |
| type | string | — | Filter by media type: audio, image, video, or text |
No output schema declared.
No examples provided.
search_music ~75
Search Deezer preview tracks by song, artist, or album. Use this when the user provides a song string but no MP3/WAV/FLAC file.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max results to return (default 10, max 20) |
| query | string | yes | Song, artist, or album search query |
No output schema declared.
No examples provided.
set_lighting_cue_variables ~91
Update variables on a live cue (e.g. change cycle speed or intensity mid-show). Only the variables you pass change; the rest keep their current values. Stopped cues are rejected.
| Name | Type | Req | Description |
|---|---|---|---|
| launch_id | string | yes | The launch_id of the cue to update |
| variables | object | yes | Variables to set (name -> value), e.g. {"speed": 0.75} |
No output schema declared.
No examples provided.
start_render ~45
Start rendering a READY compel with default configuration so an agent can continue to final MP4 without opening the browser UI.
| Name | Type | Req | Description |
|---|---|---|---|
| compel_id | integer | yes | The READY compel ID to render |
No output schema declared.
No examples provided.
stop_lighting_cue ~57
Stop a live cue by its launch_id. Idempotent - the cue is marked stop-requested so REACT drops it on its next refresh.
| Name | Type | Req | Description |
|---|---|---|---|
| launch_id | string | yes | The launch_id of the cue to stop |
No output schema declared.
No examples provided.
test_webhook_delivery ~126
Synchronously POST a synthetic webhook.test event to a registered endpoint. Uses the same HMAC-SHA256 signature as real deliveries, runs the standard URL safety check at delivery time, and returns {webhook_id, event_id, event_type, delivered, response_status, response_body_preview, latency_ms, error?}. Ignores the endpoint's events subscription - test delivery is always on-demand. Use this to verify your integration before relying on compel.completed / compel.failed events.
| Name | Type | Req | Description |
|---|---|---|---|
| webhook_id | integer | yes | The webhook id to test. Must belong to the authenticated account. |
No output schema declared.
No examples provided.
update_webhook ~149
Update one or more mutable fields on a registered webhook endpoint: url, events, active. At least one of these must be provided. Validation mirrors register_webhook (https-only, <= 2048 chars, URL safety blocklist). Returns the updated endpoint (secret is never returned by this tool - use rotate_webhook_secret for that).
| Name | Type | Req | Description |
|---|---|---|---|
| active | boolean | — | Toggle delivery on/off without losing the registration |
| events | array | — | Replacement event types. Omit to leave unchanged. ["*"] or an empty filtered list resets to wildcard. |
| url | string | — | New HTTPS URL (max 2048 chars) |
| webhook_id | integer | yes | The webhook id to update |
No output schema declared.
No examples provided.
upload_media ~76
Get upload instructions for media files (audio, images, video). Returns the upload URL and required headers. Requires API token authentication.
| Name | Type | Req | Description |
|---|---|---|---|
| mime_type | string | — | MIME type of the file |
| name | string | — | Filename for the upload |
| type | string | — | Media type: audio, image, video, or text |
No output schema declared.
No examples provided.