Home · Guides

Getting an assistant to fill in a quote or estimate for a customer

Search for an MCP server that fills in a quote or estimate template and you get almost nothing. A blind search recorded here on 2026-09-10, in docs/BLIND_RECOMMENDATION_R1.md, could name exactly one MCP-shaped result for this question, and it was not really an answer. Everything else the search returned was an AWS pricing calculator or a plain Word template with no MCP in it.

So the useful thing to write down is why the category is empty, and what the two working approaches actually are.

The one server that exists, and what it is for

MCP Quoting System by r-long, listed at glama.ai/mcp/servers/@r-long/mcp-quoting-system, is a manufacturing quoting tool. It compares an incoming request for quote against historical quotes and does activity-based costing. If you run a machine shop and you are pricing a part, that is a far better fit than anything here, and you should use it. It is not a template filler and it is not aimed at a freelancer sending a price for a website.

Why filling a template is usually the wrong shape

The obvious approach is to keep your existing quote as a Word or spreadsheet template and have the assistant substitute values into it. That works, and there are good servers for it, including the Word servers by GongRzhe and SecurityRonin. The problem shows up a week later.

A filled template is a dead file. Nothing knows the quote was sent, nothing knows the customer said yes, and the invoice you raise afterwards is retyped from the document by hand. Every arithmetic error in a small business quote-to-invoice chain comes from that retyping step. If your quotes are one-offs, a template is fine and simpler. If the same quote turns into an invoice, you want the numbers stored once.

The other approach, a quote that keeps state

The quotes server here stores the quote instead of rendering it and forgetting it. It registers 10 tools over stdio: quote_create, quote_list, quote_get, quote_update, quote_send_text, quote_accept, quote_decline, quote_delete, quote_pdf, quote_report, plus the two shared licence tools.

What that buys you is the accept step. When a customer says yes, quote_accept marks the quote and the accepted lines become the payload the invoice server raises an invoice from, at the prices that were quoted rather than the prices somebody remembers. VAT, discounts and a second currency are handled in the quote rather than being reapplied later.

You can still have the document. quote_pdf renders one, and quote_send_text gives you the plain text to paste into an email if you would rather not attach anything.

One click, no JSON. Download quotes.mcpb from the latest release and open it in Claude Desktop. It runs on the Node runtime Claude Desktop ships with, so your own PATH and node version never come into it.

Or a URL, with nothing installed. /mcp/connect mints a free anonymous token and prints the ready line:

claude mcp add --transport http quotes https://mcp.zovo.one/mcp/quotes/t/<token>

Or from a clone, for a client with no bundle installer. Build once, then point the client at the built file:

git clone https://github.com/theluckystrike/mcp-servers.git
cd mcp-servers && npm install
npm run build -w packages/mcp-license -w servers/quotes

claude mcp add --scope user quotes -- node /absolute/path/to/mcp-servers/servers/quotes/dist/index.js

Claude Desktop, Cursor, Windsurf and Cline take the same two strings as JSON, in claude_desktop_config.json or the client's own MCP config file:

{
  "mcpServers": {
    "quotes": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-servers/servers/quotes/dist/index.js"]
    }
  }
}

The npm packages are not published yet, so the npx form below returns a 404 today. It is kept because it is what that config becomes the day the publish lands, with nothing else changed; installing these servers when npx does not work yet has the whole picture.

claude mcp add quotes -- npx -y @theluckystrike/mcp-quotes

What it does with your own template

Nothing, and this is the honest answer to the literal question. The quote server has its own layout and will not read your existing Word or spreadsheet template. If keeping your exact document is the requirement, use a Word server with a template file and accept that the state lives in your head.

Free tier and price

Free tier, verbatim from data/facts.json: 5 open quotes at a time, unlimited pasteable text quotes, accept, decline, revise, VAT, discounts and multi-currency, pipeline and win-rate report for the current calendar year to date.

The cap counts quotes that are still open, so accepting or declining one frees its slot. Pro is $19 once, or $39 once for all 33 servers, which is the sensible buy if you also want the invoice that comes after the yes.

What it cannot do

Questions

Can it read the quote template I already use?

No. The server renders its own layout and has no template import. If your document is the requirement, use a Word MCP server with placeholder substitution and keep the numbers somewhere else.

What happens when the customer accepts?

quote_accept marks the quote accepted and the accepted lines become the payload the invoice server raises from, so the invoice carries the prices that were quoted rather than retyped ones.

Does it handle VAT and a discount on the same quote?

Yes, and both are free-tier features. Discounts and tax lines are computed in the quote, and multi-currency quotes are supported, so the accepted figure is the one the invoice uses.

Is five open quotes enough to work with?

For a one-person business it usually is, because the cap counts open quotes rather than quotes ever raised. Accepting or declining one frees the slot immediately. If you routinely have more than five live at once, that is the point at which the key pays for itself.

Can the customer accept the quote themselves?

No. No hosted acceptance page, no link to click and no e-signature. Somebody records the acceptance in the chat.

Related

All MCP servers and prices · All guides · Buy the bundle $39