Skip to main content
Glama
thenavidm

bluesky-mcp

by thenavidm

Check a video upload job

get_video_job_status
Read-onlyIdempotent

Check a Bluesky video transcoding job by ID after create_post times out while the video is still processing; use the job ID from that timeout message to see if it finished.

Instructions

Check a Bluesky video transcoding job by id. Only needed when create_post reported that a video was still processing when it gave up waiting. The job usually finishes on its own, and the id is in that message.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job id reported by a timed-out create_post.
accountNoWhich connected account to act as, by handle (for example 'alice.bsky.social' or just 'alice'). Defaults to the first connected account. Call list_accounts to see them.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv2.0.1
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedInput schema / additionalProperties
      Removed value: -false
  2. First observedv1.1.1

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds genuine behavioral context: the job self-completes, so polling is rarely necessary, and the id originates from a prior create_post timeout message. It does not describe the shape of the status response, which is the remaining gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, zero filler, and the triggering condition is front-loaded right after the purpose. Every sentence carries actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only status check with no output schema, the description covers purpose, trigger condition, and id provenance. The one omission is what the returned status actually looks like (e.g. whether it reports progress, success, or failure), which the agent would have to discover at runtime.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters are already documented, including the account/handle convention and the list_accounts pointer. The description's note that the id comes from the create_post message largely duplicates the job_id schema description, so it adds little beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Check a Bluesky video transcoding job by id'), which is clearly distinct from every sibling tool, most of which are social-graph or feed operations. An agent can immediately tell this is a job-status poller.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly scopes when this tool is needed ('Only needed when create_post reported that a video was still processing when it gave up waiting') and even discourages unnecessary use ('The job usually finishes on its own'). It also tells the agent where the required id comes from, which is a routing detail no other field provides.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.