---
title: "Presentations MCP server"
method: POST
path: "/mcp"
tags: ["MCP"]
---

# Presentations MCP server

`POST /mcp`

## Request

- Base URL: `https://bisque.today`
- URL: `https://bisque.today/mcp`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://bisque.cloud/oauth/authorize`, token URL `https://bisque.cloud/oauth/token`, scopes: `presentations`)

Streamable HTTP, stateless. Tools: `get_presentation_spec`, `create_presentation`, `publish_narrated_presentation`, `get_presentation_status`, `list_presentations`, `get_presentation_analytics`, `get_presentation_context`, plus org administration for bisque.team admins. Prompt `present`; resource `bisque://presentations/format-spec`; MCP Apps widget `ui://bisque/presentation-player.html` linked from tools via `_meta.ui.resourceUri`. Canonical URL `https://bisque.cloud/presentations/mcp`. A 401 carries `WWW-Authenticate: Bearer resource_metadata=...` for OAuth discovery.

## Request body

- JsonRpcRequest
  - `jsonrpc` '2.0', required
  - `id` union
    - string
    - integer
  - `method` string, required
  - `params` object

## Response `200`

JSON-RPC result or error.

- JsonRpcResponse
  - `jsonrpc` '2.0', required
  - `id` union, required
    - string
    - integer
  - `result` unknown
  - `error` object
    - `code` integer
    - `message` string
    - `data` unknown

## Other responses

- `202`: Notification accepted.
- `401`: Unauthorized; see `WWW-Authenticate`.

---

[API](https://skmtc.dev/bisque/apis/bisque-api.md) · [All operations](https://skmtc.dev/bisque/apis/bisque-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bisque/apis/bisque-api/revisions/5dd7a3c62937?raw)
