Sidearm MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SDRM_API_KEY | Yes | Your Sidearm API key (sk_live_... or sk_test_...) | |
| SDRM_BASE_URL | No | Override the API base URL (default: https://api.sdrm.io) | https://api.sdrm.io |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_algorithmsA | List available algorithms for media protection, watermarking, and AI content disruption. Returns algorithm IDs, names, supported media types, and descriptions. Use this to discover valid algorithm IDs before calling run_algorithm. Filter by category (open = research algorithms, proprietary = Sidearm bundles) or media_type (image, video, audio, text, pdf, gif). |
| run_algorithmA | Run one or more named algorithms on media. Provide algorithm IDs (from list_algorithms) and either a public media_url or base64-encoded media content. For text, use the text param. Returns a job_id for async processing — use check_job to poll for results. Requires credits. |
| protect_mediaA | Protect media using a curated preset level. Automatically selects the best combination of algorithms for the given media type. Simpler than run_algorithm — just specify standard or maximum protection. Provide either a public media_url, base64 media, or text content. Returns a job_id — use check_job to poll for results. |
| check_jobA | Check the status of an asynchronous job (from run_algorithm, protect_media, or detect_ai). Returns status (queued, processing, completed, failed), progress percentage, and result data including download URLs when complete. |
| search_mediaB | Search for similar or matching media across the indexed library. Provide a media_url or base64 media to find matches. Tiers: exact (hash match), quick (perceptual hash), perceptual (visual similarity), compositional (scene structure), full (all tiers). Returns results immediately. |
| list_searchesA | List previous similarity searches performed on your account. Returns a paginated list of past search queries with timestamps and result counts. |
| detect_aiA | Detect whether media content was generated by AI. Supports images, video, audio, and text/PDF. Runs multiple specialized detection models in parallel for the given media type. Returns a job_id — use check_job to poll for results. |
| detect_fingerprintA | Detect whether media has been previously registered or seen, using fingerprint matching. Compares against your indexed library at varying depth. Tiers: exact (hash match), quick (perceptual hash), perceptual (visual similarity), compositional (scene structure), full (all tiers). Returns results immediately. |
| detect_membershipA | Run membership inference to determine whether your protected content was used to train a suspect AI model. Provide content IDs (from your registered media) and the model to test. Methods: pattern (watermark detection), statistical (distribution analysis), combined (both). Returns a job_id — use check_job to poll for results. |
| register_mediaA | Register and protect media on the Sidearm platform. Modes: register (provenance signing only), search_ready (register + vector indexing), standard (search_ready + watermarks + AI-training poison), maximum (standard + style cloaking + adversarial hardening). Returns the created media object. |
| list_mediaA | List media assets registered to your account. Returns a paginated list with media IDs, types, status, tags, and protection details. Use cursor-based pagination for large libraries. |
| get_mediaA | Get details of a specific registered media asset by ID. Returns metadata, protection status, applied algorithms, tags, and storage information. |
| update_mediaB | Update a registered media asset. Currently supports updating the original media URL (e.g., after re-hosting the original file). |
| delete_mediaA | Permanently delete a registered media asset. Removes storage files, vector embeddings, and all associated metadata. This action cannot be undone. |
| get_rightsB | Get rights and licensing information for a registered media asset. Returns C2PA content credentials, Schema.org structured data, IPTC rights metadata, and TDM-AI protocol declarations. Useful for verifying provenance and license terms. |
| get_billingB | Get billing and usage events for your account. Returns credit consumption, API call history, and a link to the Stripe customer portal. Filter by date range, event type, or tags. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Most tools have clearly distinct purposes, such as detect_ai for AI detection, protect_media for protection, and search_media for similarity searches. However, there is some overlap between detect_fingerprint and search_media, as both perform fingerprint matching with similar tier options, which could cause confusion in tool selection.
All tool names follow a consistent snake_case pattern with clear verb_noun structures, such as check_job, delete_media, and list_algorithms. The naming is predictable and readable throughout the set, with no deviations in style or convention.
With 16 tools, the count is slightly high but reasonable for a media protection and detection platform, covering a broad domain including registration, protection, detection, search, and management. It might feel a bit heavy, but each tool appears to serve a specific function without obvious redundancy.
The tool set provides comprehensive coverage for media management, including CRUD operations (register, get, update, delete), detection (AI, fingerprint, membership), protection (run_algorithm, protect_media), search, and billing. There are no apparent gaps, and the tools support full lifecycle management from registration to deletion.