Product
Hand your agent a scoped key to your brand.
Codexroom runs a Model Context Protocol server inside your workspace. Your agent connects through OAuth with the scopes you pick. It reads the brand, composes the deck, and returns a watermarked link. Your brand team keeps the keys.
The problem
Your agent can write a memo. It cannot write a deck.
Today the AI assistants your team already pays for can draft an email, summarise a call, and write a memo in your tone. Ask them to produce a 12-slide pitch in your brand and the answer is a Gamma link in a colour scheme nobody approved. The agent has the language. It does not have the library.
Codexroom is the library. The agent borrows the key.
The mechanism
A Model Context Protocol server inside every workspace.
OAuth with scopes. Your user authorises a specific MCP client (Claude Desktop, Cursor, your internal agent stack) with a specific set of scopes. The common grant is tokens:read, assets:read, templates:read, decks:write, shares:write. The grant binds to one workspace, one user, and one client. Revoke any of them and the agent goes dark.
Typed tools. The agent sees a list of typed tools that map to Codexroom's API. list_slide_templates, search_assets, create_deck, validate_deck, create_share. Each tool returns a typed result. The agent never builds a slide in raw HTML.
Typed resources. brand://current, templates://slides, data-room://summary. Read-once context the agent loads at the start of a conversation, so the rest of the chat can reference the brand without a second look.
Audit on every action. Every tool call writes to the audit log under the user who authorised the grant. Compliance can trace any deck back to the human who said yes.
The demo flow
From prompt to watermarked link in seven calls.
A sales lead in Claude Desktop says, "Pull together a pitch for Memorial Health, lead with the healthcare case study, password the share with the deal codename."
The agent calls list_deck_templates, picks sales-pitch-deck, calls get_template to read the slot contracts, calls search_assets for the right logo, the right metric, and the right case study, calls create_deck with the slot fills, runs validate_deck to confirm the deck is on brand, then calls create_share with a password and an expiry.
The reply in Claude is a URL. The recipient opens the URL and reads the deck.
Why MCP
Your agent stays where it lives.
Codexroom does not have a chat box for your agent to live in. Your team already has a chat box. Claude Desktop, Cursor, the internal copilot the engineering team built last quarter. MCP is the open standard that lets any of them connect to Codexroom on equal footing. The agent stays where your team already trusts it.
Reference. The MCP specification lives at modelcontextprotocol.io. Codexroom uses the official @modelcontextprotocol/sdk Node package on the server side.
What you connect
Tested clients on day one.
Claude Desktop. Cursor. The OpenAI Agents SDK. The full list and the known quirks live on the developers page.
If your team built an agent on top of LangChain, LlamaIndex, or a homegrown framework, the MCP transport handles the rest.
See it work