Estii MCP Server
Connect Estii to Claude Code, Codex, Cursor, and other AI agents over the Model Context Protocol.
Connect Estii to Claude Code, Codex, Cursor, or any other AI agent, so it can read and update your deals in plain language. Setup is one line, with nothing to install.
Set it up
The quickest path needs only Node. npx fetches and runs the server, so there is
nothing to install first.
Claude Code
claude mcp add estii -- npx -y @estii.com/cli mcp serveThen open /mcp in Claude Code to confirm estii is connected.
Codex
Add a block to ~/.codex/config.toml:
[mcp_servers.estii]
command = "npx"
args = ["-y", "@estii.com/cli", "mcp", "serve"]Other clients
Any MCP client works. Point its command at npx with args -y @estii.com/cli mcp serve. If you have the CLI installed, point it at estii with args
mcp serve instead.
Sign in
The server uses your Estii identity, so signing in once is enough:
npx @estii.com/cli auth loginFor headless or shared setups, pass a token in the server's environment instead of signing in. In Claude Code:
claude mcp add estii --env ESTII_TOKEN=estp_your_token -- npx -y @estii.com/cli mcp serveIn Codex, add an [mcp_servers.estii.env] block that sets ESTII_TOKEN. See API
keys to create a token. Browsing works with no
credential; reading and updating your deals needs one.
After you change the server (new token, new version), restart the connection: toggle estii off and on in your client, or restart it.
Talk to your agent
Once connected, just ask in plain language. Talk in names, not ids, and the agent looks things up. Not sure where to start? Ask it what it can do:
What can you do with my Estii deals?
Reads are safe and changes are explicit: the agent confirms before it writes anything, and you can ask for a dry run to preview a change first.
For what to hand it once you are connected, see Working with agents: worked conversations for pricing a deal, closing a gap to a customer's budget, rescoping, rolling a rate change through the pipeline, and reviewing where everything stands.
Before you connected
Estii’s MCP server lets an AI assistant work with Estii through our CLI. That means the assistant can read and, where your access allows it, change parts of your space: deals, resources, rate cards, library items, comments, versions, and related content.
Reading is safe. Writing is real. If a change is applied, it lands on your live Estii data.
The CLI is designed to preview changes and ask for confirmation before it writes. Agents are also told to show you what they are about to do before applying it. But the AI client you use is not controlled by Estii, so we cannot guarantee exactly how carefully it will behave in every case.
Use the same judgement you would with any person or tool that has your access. Check what it proposes, make larger changes deliberately, and save a version before a major rescope.
Some actions are not available through the assistant at all. When that happens, Estii sends you back into the app instead.
How it works
estii mcp serve runs the CLI as a Model Context
Protocol server. The agent gets three tools:
- command reference — what the CLI can currently do, read straight from the binary. No sign-in needed.
- read — anything that only looks: your spaces and their libraries, deals and what is inside them, and pricing worked out from an expression.
- change — anything that alters state: edits to a deal and its contents, edits to the space library, and the transitions that move a deal through its lifecycle.
You never name the tools yourself; the agent picks the right one. Read and change together cover the CLI's entire surface, and the reference tool tells the agent what that surface is at the moment it asks, which is why asking the agent what it can do just works.
The server stays connected for as long as your client keeps it open, so it holds what it has read and is told when anything changes. Asking the same question twice costs nothing, an edit somebody makes in the app reaches the next answer without you saying so, and a change your agent makes lands and is ordered the way an edit made in the browser is. If the connection cannot be made, or drops, every tool call still works: the server checks before it answers instead.