Skip to content

Bisque Presentations

by bisque.cloud · remote · no sign-in to list tools · v1.0.1 · published by cloud.bisque

Create narrated presentations from HTML, poll build status, list them, read one back as text.

Deletes · 3Final · 2Changes · 5

19 tools: 3 can delete or cancel things, 2 do something that can't be undone, 5 change things and 9 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http presentations https://bisque.cloud/presentations/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

19 tools

Deletes or cancels 3Claude Code: deny
  • create_presentationGenerate a narrated presentation from an html-presentation/v1 document.No findings

    Why it is in this group

    • The name "create_presentation" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Generate a narrated presentation from an html-presentation/v1 document. BEFORE authoring, call get_presentation_spec and follow it exactly — slides without its narration markup publish SILENT. Returns a presentationId and the watch URL. Narration runs in the background and the inline player tracks it on its own, so reply to the user as soon as this returns and do not call get_presentation_status unless the user asks whether it is done.

    Annotations the server declares

    • title: Create narrated presentation
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • delete_artifactDelete an Artifact you own.No findings

    Why it is in this group

    • The name "delete_artifact" says "delete": a word for removing or ending something.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Delete an Artifact you own. Its URL stops working for everyone. Confirm with the user before calling this.

    Annotations the server declares

    • title: Delete an Artifact
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
  • publish_narrated_presentationDEPRECATED: call create_presentation with an `audio` array instead — it is the same thing in one call, and the slides are viewable while the narration lands.No findings

    Why it is in this group

    • The name "publish_narrated_presentation" says "publish": a word for a change that another call does not undo.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    DEPRECATED: call create_presentation with an `audio` array instead — it is the same thing in one call, and the slides are viewable while the narration lands. Publish an html-presentation/v1 document using audio YOU synthesized locally (e.g. with `bisque-voice`) — free, unlimited, and works on macOS, Linux and Windows. Send each narrated slide's word timings and MP3 metadata; the server assembles presentation.json (recomputing cues from your narration markers) and returns one upload URL per MP3. Then PUT each file and POST the returned completeUrl with the returned `files` array. RE-PUBLISHING: `audio` is optional — any narrated slide you omit reuses the audio from the last publish whenever its narration text and speechSpeed are unchanged, so an HTML-only edit needs no synthesis at all. The response reports `reused`, `synthesized`, and `staleSlides` (narrated slides whose text changed and have no audio — synthesize exactly those and publish again). Use create_presentation instead to have the server narrate.

    Annotations the server declares

    • title: Publish a presentation you narrated yourself
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
Can't be undone 2Claude Code: ask
  • create_artifactPublish an HTML page or a Markdown document as a Bisque Artifact: a persistent, versioned page at a stable URL that people can open, comment on, and that you can update later with …No findings

    Why it is in this group

    • The name "create_artifact" says "create": a word for a change.
    • The description's first verb is "publish": a word for a change that another call does not undo.
    Description, as the server wrote it
    Publish an HTML page or a Markdown document as a Bisque Artifact: a persistent, versioned page at a stable URL that people can open, comment on, and that you can update later with update_artifact. Pass the whole document as content. The call waits for the page to be ready and returns its URL. It is private to you unless you pass audience or share_with. A page that should remember what people do on it (a checklist, a poll, a sign-up sheet) declares capabilities ['state.read','state.write'] and, when some paths need different access, state.rules; it then reads and writes JSON documents through window.bisque.state. For a narrated presentation use create_presentation instead.

    Annotations the server declares

    • title: Create an Artifact
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • reply_to_artifact_threadPost a reply in a comment thread as the agent.No findings

    Why it is in this group

    • The name "reply_to_artifact_thread" says "reply": a word for sending, and what is sent cannot be taken back.
    Description, as the server wrote it
    Post a reply in a comment thread as the agent. Allowed only on activated threads (agent_activated true): someone mentioned the agent, or the agent started the thread. People see it as "Agent · via <your name>".

    Annotations the server declares

    • title: Reply in an Artifact comment thread
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Changes things 5Claude Code: ask
  • create_artifact_threadLeave a new comment thread on one of your Artifacts, as the agent.No findings

    Why it is in this group

    • The name "create_artifact_thread" says "create": a word for a change.
    Description, as the server wrote it
    Leave a new comment thread on one of your Artifacts, as the agent. Without an anchor the thread is a general comment on the page. The thread is activated from the start, so you can reply to it and resolve it later. Mention a person with @[Name](mention:uid) using ids from the Artifact's mentionables.

    Annotations the server declares

    • title: Start a comment thread on an Artifact
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • resolve_artifact_threadMark a comment thread resolved (resolved: true) or reopen it (resolved: false), as the agent.No findings

    Why it is in this group

    • The name "resolve_artifact_thread" says "resolve": a word for reading.
    • The description's first verb is "mark": a word for a change.
    Description, as the server wrote it
    Mark a comment thread resolved (resolved: true) or reopen it (resolved: false), as the agent. Allowed only on activated threads. Resolve after you have addressed the comment, usually after republishing the Artifact; reply first so the person can see what changed.

    Annotations the server declares

    • title: Resolve or reopen an Artifact comment thread
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • share_artifactSet who can open an Artifact you own.No findings

    Why it is in this group

    • The description's first verb is "set": a word for a change.
    Description, as the server wrote it
    Set who can open an Artifact you own. audience picks the rule; share_with is the complete list of named people (it replaces the previous list; omit it to keep the current one). Going public deletes every comment thread, so a public change on an Artifact with threads is refused unless delete_threads is true. Returns the URL to send.

    Annotations the server declares

    • title: Share an Artifact
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • update_artifactChange an Artifact you own or edit.No findings

    Why it is in this group

    • The name "update_artifact" says "update": a word for a change.
    Description, as the server wrote it
    Change an Artifact you own or edit. Pass content to publish a new Version of the page at the same URL (the whole document, not a diff; earlier Versions stay in the history). Pass title, description, icon, or icon_image to change those. Any combination in one call. With content the call waits for the new Version to be live before returning. The new Version keeps the base Version's capabilities and state rules unless you pass capabilities or state.

    Annotations the server declares

    • title: Update an Artifact
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • update_channelUpdate one of your channels.No findings

    Why it is in this group

    • The name "update_channel" says "update": a word for a change.
    Description, as the server wrote it
    Update one of your channels. Set the description — the line a stranger reads in a search result or a link unfurl, at most 160 characters, empty to clear it and go back to naming the newest presentations. Set the avatar from an image URL, which is fetched, center-cropped square and resized. Pass either or both. Omit handle to use your default channel.

    Annotations the server declares

    • title: Update channel
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
Only reads 9Claude Code: allow
  • get_artifactRead one Artifact: title, who can open it, the Version viewers see (published_version_id, null while a publication is still being prepared), and its URL.No findings

    Why it is in this group

    • The name "get_artifact" says "get": a word for reading.
    Description, as the server wrote it
    Read one Artifact: title, who can open it, the Version viewers see (published_version_id, null while a publication is still being prepared), and its URL.

    Annotations the server declares

    • title: Get an Artifact
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_artifact_threadRead one comment thread on an Artifact with every message, oldest first.No findings

    Why it is in this group

    • The name "get_artifact_thread" says "get": a word for reading.
    Description, as the server wrote it
    Read one comment thread on an Artifact with every message, oldest first. Mentions in a body look like @[Name](mention:uid); a mention of the agent is @[Agent](mention:agent).

    Annotations the server declares

    • title: Get an Artifact comment thread
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_presentation_analyticsWatch analytics for one of your presentations: views, likes, completion rate, per-slide retention funnel, traffic sources, distinct signed-in/anonymous viewers, and organization em…No findings

    Why it is in this group

    • The name "get_presentation_analytics" says "get": a word for reading.
    Description, as the server wrote it
    Watch analytics for one of your presentations: views, likes, completion rate, per-slide retention funnel, traffic sources, distinct signed-in/anonymous viewers, and organization email domains (personal providers filtered). Lets an agent read how its own published briefings performed.

    Annotations the server declares

    • title: Get presentation analytics
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_presentation_contextLoad any shared Bisque presentation for reading: its metadata, the full per-slide narration transcript with timestamps, and the context.md file its author shipped for agents (extra…No findings

    Why it is in this group

    • The name "get_presentation_context" says "get": a word for reading.
    Description, as the server wrote it
    Load any shared Bisque presentation for reading: its metadata, the full per-slide narration transcript with timestamps, and the context.md file its author shipped for agents (extra background the slides summarize). Target it by watch URL (https://bisque.today/p/{handle}/{slug}) or by handle + slug — it does not have to be yours. Use this to read, summarize, cite, or answer questions about a presentation: ground your answers in the returned transcript and context, and cite slides as [slide N].

    Annotations the server declares

    • title: Load a presentation into context
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_presentation_specFetch the html-presentation/v1 authoring contract: document structure, the dual landscape/vertical layout rule, and the narration markup that makes slides speak.No findings

    Why it is in this group

    • The name "get_presentation_spec" says "get": a word for reading.
    Description, as the server wrote it
    Fetch the html-presentation/v1 authoring contract: document structure, the dual landscape/vertical layout rule, and the narration markup that makes slides speak. Call this BEFORE authoring for create_presentation — documents written without it publish with missing audio.

    Annotations the server declares

    • title: Get the authoring spec
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_presentation_statusFetch the build state and result URL for a presentationId.No findings

    Why it is in this group

    • The name "get_presentation_status" says "get": a word for reading.
    Description, as the server wrote it
    Fetch the build state and result URL for a presentationId.

    Annotations the server declares

    • title: Get presentation status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_artifact_threadsList the comment threads people left on one of your Artifacts, newest activity first.No findings

    Why it is in this group

    • The name "list_artifact_threads" says "list": a word for reading.
    Description, as the server wrote it
    List the comment threads people left on one of your Artifacts, newest activity first. Pass activated_only: true to get only the threads where someone mentioned the agent, which are the ones you may reply to and resolve. Each thread carries its anchor (what it is pinned to), the version it was left on, a preview, and agent_activated.

    Annotations the server declares

    • title: List Artifact comment threads
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_artifactsList Artifacts you own (scope owned, the default), ones shared with you (shared), or both (all), newest first.No findings

    Why it is in this group

    • The name "list_artifacts" says "list": a word for reading.
    Description, as the server wrote it
    List Artifacts you own (scope owned, the default), ones shared with you (shared), or both (all), newest first. Each item carries its id, title, who can open it, and its URL.

    Annotations the server declares

    • title: List your Artifacts
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_presentationsList the authenticated user's presentations, newest first.No findings

    Why it is in this group

    • The name "list_presentations" says "list": a word for reading.
    Description, as the server wrote it
    List the authenticated user's presentations, newest first. One call returns at most `limit` of them. A non-null `nextCursor` in the response means more presentations remain: call again with `cursor` set to that value to get the page after this one, and keep going until `nextCursor` is null.

    Annotations the server declares

    • title: List your presentations
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http presentations https://bisque.cloud/presentations/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__presentations__get_presentation_spec",
      "mcp__presentations__get_presentation_status",
      "mcp__presentations__list_presentations",
      "mcp__presentations__get_presentation_analytics",
      "mcp__presentations__get_presentation_context",
      "mcp__presentations__list_artifacts",
      "mcp__presentations__get_artifact",
      "mcp__presentations__list_artifact_threads",
      "mcp__presentations__get_artifact_thread"
    ],
    "ask": [
      "mcp__presentations__update_channel",
      "mcp__presentations__create_artifact",
      "mcp__presentations__update_artifact",
      "mcp__presentations__share_artifact",
      "mcp__presentations__create_artifact_thread",
      "mcp__presentations__reply_to_artifact_thread",
      "mcp__presentations__resolve_artifact_thread"
    ],
    "deny": [
      "mcp__presentations__create_presentation",
      "mcp__presentations__publish_narrated_presentation",
      "mcp__presentations__delete_artifact"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as presentations. Review it before you use it.