{"$schema":"https://modelcontextprotocol.io/schemas/draft/2025-06-18/server-card.json","name":"oxom","displayName":"oxom","description":"Acts on a single oxom workspace, selected by the user when they authorize the connection. Use it to read and create short links, search and create Docs, search Drive files, mint signed upload links, read the caller's own Team Time availability, and read StreamElements bot commands. Every call is scoped to the one workspace the access token is bound to — there is no cross-workspace access.","version":"0.2.0","serverUrl":"https://mcp.oxom.de/mcp","icon":"https://oxom.de/i/oxom-512.png","icons":[{"src":"https://oxom.de/i/oxom-512.png","sizes":"512x512","mimeType":"image/png"}],"websiteUrl":"https://oxom.de","documentationUrl":"https://oxom.de/developers","transport":{"type":"streamable-http","url":"https://mcp.oxom.de/mcp","protocolVersion":"2025-06-18"},"capabilities":{"tools":{"listChanged":false}},"authentication":{"type":"oauth2","flow":"authorization_code","pkce":true,"codeChallengeMethods":["S256"],"authorizationServers":["https://app.oxom.de"],"authorizationEndpoint":"https://app.oxom.de/oauth/authorize","tokenEndpoint":"https://app.oxom.de/api/oauth/token","protectedResourceMetadata":"https://mcp.oxom.de/.well-known/oauth-protected-resource","clientId":"oxom-claude","dynamicClientRegistration":false,"scopes":{"links:read":"Read short links and their click counts.","links:write":"Create and update short links.","docs:read":"Search oxom Docs metadata in the workspace.","docs:write":"Create oxom Docs.","drive:read":"List and search files in the workspace Drive.","drive:write":"Create signed upload links for the workspace Drive.","workspace:read":"Read workspace profile, membership, and Team Time availability."},"documentation":"https://oxom.de/auth.md"},"tools":[{"name":"list_links","title":"List links","description":"Lists the short links in the connected oxom workspace, with slug, destination URL, and click counts.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"create_link","title":"Create link","description":"Creates a short link in the connected workspace from a destination URL and an optional custom slug.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"search_docs","title":"Search docs","description":"Searches oxom Docs metadata (title and emoji) in the connected workspace. Live document bodies live in Liveblocks and are not returned here.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"create_doc","title":"Create doc","description":"Creates a new, empty oxom Doc with the given title in the connected workspace.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"search_drive_files","title":"Search Drive files","description":"Searches and lists files in the connected workspace's R2-backed Drive, returning name, size, and folder path.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"create_upload_link","title":"Create upload link","description":"Mints a signed, expiring upload link so an external collaborator can drop files into the workspace Drive without an account.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"get_team_time","title":"Get Team Time","description":"Reads the caller's own Team Time availability — the hours their main job makes them unavailable for creator work.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"set_stream_plan","title":"Set Stream Plan","description":"Attaches a personal .ics calendar feed as the caller's Stream Plan, so the workspace can show planned streams.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"list_streamelements_commands","title":"List StreamElements commands","description":"Lists the StreamElements chat-bot commands configured for the workspace's connected channel. Read-only.","annotations":{"readOnlyHint":true,"destructiveHint":false}}],"publisher":{"name":"oxom","url":"https://oxom.de","email":"support@oxom.de"}}