{"apiVersion":"v1","directorySlug":"presio-mcp-0e2bed8e92","title":"Presio","description":"Present PDF slideshows with a controller and mirrored viewer. Local by default — your PDF stays in the browser. Optional live sync across devices, speaker notes, and embedded media.","pageUrl":"https://www.mcpbundles.com/skills/presio-mcp-0e2bed8e92","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://presio.ch/mcp","hostedMcpUrl":null,"toolCount":3,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"ch.presio/presio-mcp-0e2bed8e92","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"present_pdf","description":"Upload a PDF to start a local Presio presentation. Returns a url — open it in a browser to finish handoff (skips share). To replace an existing presentation's deck instead of creating one, pass its session_id plus controller_token (the t= parameter of the url from the original create call) and the same link keeps working. Same as POST /api/present.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["pdf_base64"],"properties":{"filename":{"type":"string"},"pdf_base64":{"type":"string"},"session_id":{"type":"string"},"controller_token":{"type":"string"}}},"title":"Present a PDF","logicalName":"present_pdf","displayName":"Present a PDF","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"check_pdf","description":"Validate Presio notes/media sidecar attachments in a PDF. Same as POST /api/check.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["pdf_base64"],"properties":{"pdf_base64":{"type":"string"}}},"title":"Check PDF sidecars","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"check_pdf","displayName":"Check PDF sidecars"},{"name":"plugin_guide","description":"The guide to building a Presio plugin: the workflow (a presio-<name> GitHub repo from the template, the checker, a tag, and a ?plugins= link that loads it), the manifest, and the full window.presio API. Read it before writing a plugin. Same as GET /plugins.md.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"title":"How to build a Presio plugin","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"plugin_guide","displayName":"How to build a Presio plugin"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=Presio&config=eyJ1cmwiOiAiaHR0cHM6Ly9wcmVzaW8uY2gvbWNwIn0%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22Presio%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fpresio.ch%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22Presio%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fpresio.ch%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Presio&connectorUrl=https%3A%2F%2Fpresio.ch%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"Presio\" --url \"https://presio.ch/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/presio-mcp-0e2bed8e92","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/presio-mcp-0e2bed8e92/tools/{tool}","mcpServerUrl":"https://presio.ch/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/presio-mcp-0e2bed8e92?live=1"}