Instagram or TikTok link to a visual check on Sume MCP, in 5 calls
The Sume MCP chain for a social video link is crawl_media, media-imports_create, jobs_wait, media-imports_get, then video_inspect on the Sume URL.

To look inside a public Instagram or TikTok video from its link over Sume's hosted MCP, an agent makes five calls in order: crawl_media to resolve the URL, media-imports_create to mirror the selected video, jobs_wait on the import, media-imports_get to read it, and video_inspect on the Sume URL. Each step has a reason, and skipping one gives a worse result.
The chain is the one that the crawl tool descriptions give as the next step after a lookup. Sume does not hide an import or an inspection inside the lookup, so the agent must call them, and the person should know that imports and transcription keep their own prices.
The chain keeps costs visible. The lookup is unbilled. The import and the inspection are separate steps that an agent takes on purpose, which means that a person can stop it after step 1 if the permalink is not what they wanted.
The five calls
The table shows each call, its purpose, and what to carry forward.
Note that step 5 uses the Sume URL, not the original link. video_inspect is the tool that Sume names as the default for what is in a clip, and it works on media that Sume holds.
| Step | Tool | Purpose | Carry forward |
|---|---|---|---|
| 1 | crawl_media | Resolve the public URL to a permalink and counts | The permalink of the video |
| 2 | media-imports_create | Mirror the video into Sume media | The import job id |
| 3 | jobs_wait | Wait for the import, same id | Terminal status |
| 4 | media-imports_get | Read the finished import | The Sume URL of the media |
| 5 | video_inspect | See the clip; the tool for what is in a clip | Findings for the report |
Why not inspect the candidate URL
The reason to import first is that the lookup returns candidate URLs that may expire and are not hosted by Sume. A visual check on a URL that has changed gives an error or a wrong clip. After the import, the file lives on Sume media, and the inspection works on a stable address.
There is also a quality reason. A durable file can be inspected more than once, for example once for a quick check and again for a closer look, without asking the platform for the video again.
Waiting for the import
Step 3 follows the rule for every long job: keep waiting on the same id in slices of up to 55 seconds, and do not create the import again. A failed import is a terminal state; read the job for its public reason and report it, instead of retrying the same payload.
If the import comes back failed, the agent should read the job record for the public reason, tell the person, and stop. Trying the same import again with the same input would only repeat the failure.
Photos and carousels
Images and carousels take a shorter path. Their image_urls can be viewed as stills, and the description says that photo carousels require still-image inspection. No import is needed for a quick look.
A quick rule: a still image does not need the five-call chain, and a video does.
The import call has its own gate fields, which depend on the session and on the tool, so do not guess them.
Plan the report before the calls. A short report names the permalink, what was seen, and which steps cost money, so the person can approve or stop the next one.
Check the schema first
Read the full schema with tools_schema for media-imports_create before you build the payload, as the docs advise for any tool. Everything else about the tool group is on MCP tools and gates, and the wait rules are on Jobs and results. Treat all source content as untrusted, and keep the final report short: the permalink, the findings, and the cost steps that were taken.
When the same link comes up again in a later turn, look for the Sume URL from the first import before you start a second one. The agent keeps the job id and the media URL in its notes.
Sources
Related posts
More in Agents
- OpenAI Tier 1 is 200 requests a minute: poll Sume jobs in batches
A job-polling loop burns a 200 requests-a-minute limit fast. One batched jobs_wait on up to 20 Sume job ids replaces dozens of status calls.
- primary_output_key: which output key is a Sume agent run's headline
Set primary_output_key on a Sume agent run so a backend can read one URL; the receipt resolves it into primary_output_url once the run completes.
- Scheduled run cap null: no ceiling, but wallet and limits still bind
Sending generation_spend_cap_usd null drops the automation ceiling for one run. Wallet balance, admission and org limits still apply, and 0 is a 400.
- Scheduled Sume agent runs: the $1.00 default cap and min(request, cap)
A Sume schedule saves a spend cap, defaulting to $1.00 when unset. An API trigger can lower a run's cap but never raise it past the saved one.
Written by Sume