Slice
REMOTE · MCP.TRYSLICEMEDIA.COM
Turn long podcast episodes, video or audio, into captioned vertical clips and transcripts.
Available components
Last scanned (10 hours ago)
Scores higher than 74% of remote servers
Reachable. Last reached 17 Oct 2026.
Category Design and Media
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 → Why this is hard to score →
Endpoint Security92
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability66
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2999 tokens (~272/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 11 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.
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.
- 17 Oct 26 77
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 17 Oct 2026 · Probed https://mcp.tryslicemedia.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.tryslicemedia.com | CN=YE2,O=Let's Encrypt,C=US | 1 Oct 2026 | 30 Dec 2026 | ECDSA 256 | ECDSA-SHA384 | 63d14e37a2c3a8d757e50c5bd0ef5cc7288 |
| SANs: mcp.tryslicemedia.com | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| 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 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.tryslicemedia.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| tryslicemedia.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.tryslicemedia.com/.well-known/oauth-protected-resource/mcp", error="invalid_token", error_description="Sign in to Slice to use this tool", scope="clips.read clips.write"
Bearer resource_metadata="https://mcp.tryslicemedia.com/.well-known/oauth-protected-resource/mcp", error="invalid_token", error_description="Sign in to Slice to use this tool", scope="clips.read clips.write" Protected resource metadata
| Document | https://mcp.tryslicemedia.com/.well-known/oauth-protected-resource/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.tryslicemedia.com/mcp |
| Authorisation server | https://tryslicemedia.com |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.tryslicemedia.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.tryslicemedia.com/mcp | HTTPS enforced | 301 | https://mcp.tryslicemedia.com/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. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
email_transcript Email a transcript ~120
Use this only when the user explicitly asks for a finished transcript to be emailed to them. Needs a Slice sign-in, asked for on first use, and sends the .txt, .srt and .vtt files only to the confirmed email address on that Slice account, never to another address. Each transcript can be emailed one time, and only from the conversation or account that made it. Do not use to send a transcript to somebody else; share the results page instead.
| Name | Type | Req | Description |
|---|---|---|---|
| transcription_id | string | yes | The transcription_id of a finished transcript. |
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | yes | – |
| status | string | yes | – |
No examples provided.
find_clips_about Find clips about a topic ~291
Use this when the user wants clips from an episode on a particular topic or for a particular audience, e.g. "clips about creativity for artists" or "moments for young entrepreneurs". Searches the episode again for moments that fit the focus, skipping clips already found, and adds what it finds to the episode's clips. It may find fewer than usual, or none, when little in the episode fits; say so plainly. Returns each new clip's number, ref, title and why it fits. Takes about a minute; if it is still searching, call it again with the same focus to wait for the result. Do not use before get_episode reports the episode ready.
| Name | Type | Req | Description |
|---|---|---|---|
| episode_id | string | yes | The episode to search. |
| focus | string | – | What to look for, in the user's words: a topic or an audience. Optional when target_seconds is given. |
| target_seconds | integer | – | Optional. How long each clip should be, in seconds (15 to 180), when the user asks for a length, e.g. "30 second clips". Every clip found then plays for at most this long and at most 10% less (at lea… |
| Name | Type | Req | Description |
|---|---|---|---|
| clips | array | – | – |
| episode_id | string | yes | – |
| focus | string | – | – |
| found | integer | – | How many new clips fit the focus. |
| message | string | yes | – |
| status | string | yes | – |
| target_seconds | integer|null | – | The clip length searched for; null for any length. |
No examples provided.
get_episode Get an episode ~138
Use this when the user asks how an episode is going, whether it is ready, or what clips were found. Returns one status for the whole pipeline (waiting_for_upload, uploading, transcribing, finding_clips, ready or failed) and, once ready, the found clips with number, ref, title, opening line, length and whether each has been cut and captioned. With no episode_id it lists recent episodes. Read the live answer from here rather than guessing how long things take. Do not use for transcripts made with transcribe_audio.
| Name | Type | Req | Description |
|---|---|---|---|
| episode_id | string | – | From start_episode, or from this tool with no id. |
| Name | Type | Req | Description |
|---|---|---|---|
| clips | array | – | – |
| duration | string | – | Episode length, mm:ss. |
| episode_id | string | – | – |
| episodes | array | – | – |
| message | string | yes | – |
| name | string | – | – |
| progress_percent | number | – | – |
| status | string | yes | – |
| upload_url | string | – | – |
No examples provided.
get_job Get a clip job ~151
Use this when the user wants to know whether a clip is cut or rendered, or wants the finished file. Pass the job_id from make_clips or restyle_clip, or a clip_id for that clip's latest render. Returns the status, progress, a still from the clip and, when finished, a short download link. Pass wait: true to hold on up to about 40 seconds for it to finish. Do not use for transcribe_audio jobs.
| Name | Type | Req | Description |
|---|---|---|---|
| clip_id | string | – | A cut clip, for its latest render. |
| job_id | string | – | From make_clips or restyle_clip. |
| wait | boolean | – | Wait briefly for it to finish instead of reporting now. |
| Name | Type | Req | Description |
|---|---|---|---|
| clip_id | string | – | – |
| clips | array | – | For a cut: the clips it made, and the render that follows each. |
| download_url | string | – | A short link that downloads the MP4. Good for 7 days. |
| file_size_mb | number | – | – |
| job_id | string | yes | – |
| kind | string | yes | – |
| message | string | yes | – |
| poster_url | string | – | – |
| progress_percent | number | – | – |
| status | string | yes | – |
| title | string | – | – |
No examples provided.
list_styles List caption styles ~86
Use this when the user wants to know which caption looks they can choose from. Returns each style's id, name, a one-line description and a link to a preview picture. Pass styles to look up particular ones. Do not use to change a clip (use restyle_clip or make_clips).
| Name | Type | Req | Description |
|---|---|---|---|
| styles | array | – | Ids or names to look up. Default all. |
| Name | Type | Req | Description |
|---|---|---|---|
| notes | array | – | – |
| styles | array | yes | – |
No examples provided.
make_clips Make clips ~374
Use this when the user picks found clips to make. Cuts each one from the episode and renders it with captions burned in, in one step. Pass the numbers or refs get_episode listed (refs in brackets are fine). Optional style, caption_size, position, hook_title, fit and background apply to these clips. Returns a job per clip; follow with get_job for the files. Do not use before get_episode reports the episode ready, and do not use to change a clip that is already made (use restyle_clip).
| Name | Type | Req | Description |
|---|---|---|---|
| background | string | – | What fills the space around a whole video: "black", or "blur" for a blurred copy of the video. Only matters with fit "whole". |
| caption_size | string | – | Caption size. "bigger" and "smaller" are relative to now. |
| clips | array | yes | Numbers or refs from get_episode, e.g. [2, 5] or ["a3f9"]. Up to 10. |
| episode_id | string | yes | The episode the clips were found in. |
| fit | string | – | How the picture sits in the frame. "fill" (the default) crops it to fill the frame. "whole" shows the whole video, nothing cropped, with space around it; use when the user does not want a wide video… |
| hook_title | boolean|string | – | The title box at the top of the clip, on by default for new clips. false removes it, true puts the clip's title there, or give the words to show. |
| position | string | – | Where the captions sit. "up" and "down" move them from where they are now. |
| style | string | – | A caption style id or name from list_styles, e.g. bold-punch. |
| Name | Type | Req | Description |
|---|---|---|---|
| clips | array | yes | – |
| episode_id | string | yes | – |
| message | string | yes | – |
| notes | array | – | – |
No examples provided.
read_captions Read captions on a clip ~234
Use this when the user asks what a clip says, what is on screen at a particular moment, which caption contains a word or a typo, or who said something. It is also the only way to get a caption's id, so read it first whenever a later step needs to name one caption. Narrow with at_seconds, a from/to range, or contains. Do not use for a transcript made with transcribe_audio, or to find clips (use get_episode).
| Name | Type | Req | Description |
|---|---|---|---|
| at_seconds | number | – | Only the caption(s) on screen at this moment, in seconds. |
| clip_id | string | yes | A made clip's clip_id, from get_episode or get_job. |
| contains | string | – | Only captions containing this text. Case-insensitive. |
| from_seconds | number | – | Start of a time range, in seconds. |
| include_removed | boolean | – | Include captions the editor has removed. They are not in the video. Default false. |
| limit | number | – | Up to 200. Default 40. |
| to_seconds | number | – | End of a time range, in seconds. |
| Name | Type | Req | Description |
|---|---|---|---|
| captions | array | yes | – |
| clip_id | string | yes | – |
| message | string | yes | – |
| name | string | – | – |
| total | integer | – | Captions matching, before the limit. |
No examples provided.
restyle_clip Restyle a clip ~437
Use this when the user wants a made clip changed and rendered again: a different caption style, bigger or smaller captions, captions moved up or down, the hook title turned on, off or reworded, or the whole video shown instead of cropped (fit, background). The change is saved on the clip and a new render starts; follow with get_job. When the user wants the look kept for future clips, pass save_as_default (new clips then start from it). Do not use for clips that have not been made yet (use make_clips).
| Name | Type | Req | Description |
|---|---|---|---|
| background | string | – | What fills the space around a whole video: "black", or "blur" for a blurred copy of the video. Only matters with fit "whole". |
| caption_size | string | – | Caption size. "bigger" and "smaller" are relative to now. |
| clip_id | string | yes | The clip_id from get_episode or get_job (or the job_id of its render). With episode_id, the clip's number or ref also works. |
| episode_id | string | – | Only needed when clip_id is a number or ref from get_episode. |
| fit | string | – | How the picture sits in the frame. "fill" (the default) crops it to fill the frame. "whole" shows the whole video, nothing cropped, with space around it; use when the user does not want a wide video… |
| hook_title | boolean|string | – | The title box at the top of the clip, on by default for new clips. false removes it, true puts the clip's title there, or give the words to show. |
| position | string | – | Where the captions sit. "up" and "down" move them from where they are now. |
| save_as_default | boolean | – | True when the user wants this look kept for future clips ("use this from now on", "save this style"). Can be sent with no other change to keep the clip's current look. |
| style | string | – | A caption style id or name from list_styles, e.g. bold-punch. |
| Name | Type | Req | Description |
|---|---|---|---|
| changes | array | yes | – |
| clip_id | string | yes | – |
| job_id | string | yes | Pass to get_job. |
| message | string | yes | – |
| saved_as_default | boolean | – | – |
| status | string | yes | – |
No examples provided.
start_episode Start an episode ~386
Use this when the user wants a podcast, interview, stream or other video turned into short clips. An audio-only episode (MP3, M4A, WAV, OGG or FLAC) works too: its clips come out as captioned vertical videos drawn with an audio template. With a video or audio file attached in the chat, pass it as file: it is copied into Slice, transcribed, and searched for the moments worth posting, with no further steps. With no file, it returns an upload_url for the user to open and drop the file in (up to three hours and 4.5GB). Follow with get_episode. Do not use when the user only wants the words as text (use transcribe_audio), and do not use for links to YouTube or other web pages; those are not supported.
| Name | Type | Req | Description |
|---|---|---|---|
| content_type | string | – | What kind of video it is, which decides how clips are found: podcast (a podcast or interview), stream (a livestream or gaming video) or other (a vlog, challenge, talk or story). Pass it when the user… |
| file | object | – | A video or audio file the user attached in the conversation. |
| name | string | – | What to call the episode. Defaults to the file name. |
| target_seconds | integer | – | Optional. How long each clip should be, in seconds (15 to 180), when the user asks for a length, e.g. "30 second clips". Every clip found then plays for at most this long and at most 10% less (at lea… |
| Name | Type | Req | Description |
|---|---|---|---|
| episode_id | string | yes | – |
| message | string | yes | – |
| name | string | – | – |
| status | string | yes | – |
| upload_url | string | – | Open this to upload the video or audio file. Works for two hours. |
No examples provided.
transcribe_audio Transcribe audio or video ~304
Use this when the user wants the words: speech in an audio or video file turned into text, from a podcast, interview, lecture, meeting or voice note. Accepts a file the user attached (file) or a direct https link to a media file such as .mp3, .m4a, .wav or .mp4 (url). Returns the transcript with speaker turns, plus a page with the full text and .txt, .srt and .vtt downloads. Short files finish in this call; longer ones return status "processing" and a transcription_id for transcription_status. Up to 90 minutes per file. The first transcript needs no account; after that it asks for a Slice sign-in, and a signed-in person gets 3 transcripts a month, shared with the Slice website. Do not use when the user wants short video clips made from a video (start_episode does that), for YouTube, Spotify, Apple Podcasts or other web pages (they are pages, not files), for text already in the conversation, or for live audio.
| Name | Type | Req | Description |
|---|---|---|---|
| file | object | – | An audio or video file the user attached in the conversation. |
| url | string | – | A direct https link to an audio or video file, e.g. https://example.com/episode.mp3. Not a web page. |
| wait | boolean | – | Default true: wait briefly so short files come back finished. False returns at once with a transcription_id. |
| Name | Type | Req | Description |
|---|---|---|---|
| downloads | object | – | – |
| duration_minutes | number | – | – |
| file_name | string | – | – |
| language | string | – | Detected language code, e.g. en. |
| message | string | yes | – |
| results_url | string | yes | Page with the full transcript and downloads. No sign-in; share it only with people who should see the transcript. |
| status | string | yes | – |
| transcript | string | – | The transcript in paragraphs, with speaker labels when there is more than one voice. |
| transcript_truncated | boolean | – | True when only the first part is included here; the results page has all of it. |
| transcription_id | string | yes | Pass to transcription_status or email_transcript. |
| word_count | integer | – | – |
No examples provided.
transcription_status Get a transcription ~96
Use this when transcribe_audio returned status "processing", to check whether the transcript is finished and get its text. Pass the transcription_id it returned. Call it again after a short wait while the status is still "processing". Only answers in the conversation (or Slice account) that started the transcription. Do not use to start a transcription; use transcribe_audio.
| Name | Type | Req | Description |
|---|---|---|---|
| transcription_id | string | yes | The transcription_id transcribe_audio returned. |
| Name | Type | Req | Description |
|---|---|---|---|
| downloads | object | – | – |
| duration_minutes | number | – | – |
| file_name | string | – | – |
| language | string | – | Detected language code, e.g. en. |
| message | string | yes | – |
| results_url | string | yes | Page with the full transcript and downloads. No sign-in; share it only with people who should see the transcript. |
| status | string | yes | – |
| transcript | string | – | The transcript in paragraphs, with speaker labels when there is more than one voice. |
| transcript_truncated | boolean | – | True when only the first part is included here; the results page has all of it. |
| transcription_id | string | yes | Pass to transcription_status or email_transcript. |
| word_count | integer | – | – |
No examples provided.
How do I install the Slice MCP server?
Slice is a hosted endpoint at https://mcp.tryslicemedia.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.tryslicemedia.com
claude mcp add --transport http com-tryslicemedia-slice 'https://mcp.tryslicemedia.com/mcp'
What is the Slice MCP server?
Slice is an MCP server listed in the public MCP registry as com.tryslicemedia/slice. Turn long podcast episodes, video or audio, into captioned vertical clips and transcripts. This page covers its hosted endpoint (https://mcp.tryslicemedia.com/mcp).
Is the Slice MCP server safe to use?
Slice scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Slice MCP server expose?
Slice exposes 11 tools: start_episode, get_episode, make_clips, get_job, restyle_clip, and 6 more. Their descriptions and schemas cost roughly 2,617 tokens of context every time the server is loaded.
Does the Slice MCP server require authentication?
Yes. Slice asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the Slice MCP server still maintained?
Slice is still listed as active in the MCP registry. We last reached this channel on 17 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.