mcpField
G
Grommetbook — sign shop software

Grommetbook — sign shop software

Remote
grommetbook.smallwright.comBusiness & Marketing0Updated today

About Grommetbook — sign shop software

Grommetbook is sign shop software for small shops, operated through an AI assistant connected to its remote MCP server. It combines a price book, customer-approved quotes and a job board, with prices calculated from the shop's own materials, rates and rules.

Key features

  1. 01Manage materials, rates and products
  2. 02Calculate product prices with itemized arithmetic
  3. 03Draft, revise and send customer quotes
  4. 04Track quote approvals and production jobs
  5. 05Export shop data and invoice CSV

Use cases

  1. 01Build a price book from a supplier list
  2. 02Prepare a priced quote for a customer
  3. 03Check jobs due this week
  4. 04Export completed jobs for QuickBooks

MCP support

Grommetbook provides a remote MCP server over Streamable HTTP with OAuth sign-in. MCP clients can use tools to manage the price book, customers, quotes, jobs, team and exports.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://grommetbook.smallwright.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

Grommetbook

Grommetbook is sign shop software your AI assistant runs: a Price Book, Quotes your customers approve online, and a Job board for sign shops of 1–10 people.

Grommetbook is a remote MCP server. You add one address to Claude, ChatGPT, Cursor or any assistant that supports remote MCP servers, sign in once with an emailed link, and then ask in plain English. There is nothing to install.

Connect it

Claude (claude.ai, desktop, mobile): Settings → Connectors → Add custom connector → paste the address → Connect, then sign in with the emailed link.

ChatGPT: Settings → Apps & Connectors → Advanced settings → turn on Developer mode → Create → paste the address, choose OAuth → sign in.

Cursor / VS Code / other MCP clients: add a remote server, for example in mcp.json:

{
  "mcpServers": {
    "grommetbook": {
      "url": "https://grommetbook.smallwright.com/mcp"
    }
  }
}

Step by step: https://grommetbook.smallwright.com/connect/

Things to ask

  • "Set up my price book from this supplier list."
  • "Quote 2 coroplast yard signs, 18×24, double-sided, for Rivera Landscaping."
  • "Send it and tell me when they approve."
  • "What jobs are due this week?"

FAQ

What is Grommetbook?

Grommetbook is sign shop software your AI assistant runs: a Price Book, Quotes your customers approve online, and a Job board for shops of 1–10 people, $49/month. You connect it to Claude, ChatGPT or another AI assistant and tell it what you want; there are no settings pages.

Does the AI make up prices?

No. Every price is worked out by Grommetbook from your own Materials, Rates, markups and minimums, and each Quote line shows the arithmetic step by step. The AI only passes along what Grommetbook computed.

I don't use AI. Can I still use it?

You need an AI assistant that can add a connector. A free Claude account works (one custom connector); ChatGPT needs a Business, Enterprise or Edu plan for full use. See the plan table at https://grommetbook.smallwright.com/. If you'd rather click through screens, a traditional suite like shopVOX or SignTracker fits you better.

My pricing is weird. Will it fit?

Products can be priced per square foot, per linear foot, each, or at a fixed price, with options (grommets, hems, install hours, rush %) and a minimum. If something doesn't fit, your assistant files a feature request with us instead of guessing.

Can I get my data out?

Yes. Ask your assistant to export your shop: you get a JSON file of your Price Book, Customers, Quotes, Jobs and history, and a CSV of finished Jobs in QuickBooks invoice-import layout.

Is there a free trial?

Yes: 14 days, every feature, no card. When it ends, reading keeps working and your data stays; changes pause until someone at the shop subscribes.

Do I pay per user or per AI request?

No. One price per shop covers everyone at the shop and every AI assistant you connect: the owner adds staff by email and each connects their own assistant. You bring your own AI (Claude, ChatGPT, …), so we don't cap requests beyond a fair-use limit of 5,000 changes a day.

How do I pay or cancel?

Payment is by card through Stripe, started from the link in your viewer's Billing page. Cancel any time from Billing; you keep access to the end of the paid period, and you can export all your data.

Who is the seller?

VINNYROO LLC, which runs the Smallwright studio. Prices are in US dollars; sales tax is not included.

Tools

ToolKindWhat it does
get_startedreadReturns the shop's setup state (is the Price Book empty? any Customers or Quotes?) and the next three things to ask the owner for.
update_shopchangeChange the shop profile shown on Quotes (name, logo, terms) and defaults (sales tax %, deposit %, quote expiry, auto-create Jobs, timezone).
list_teamreadLists the people on the shop (owner and staff, by email) and pending invites.
invite_teammatechangeAdds a person (by email) to this shop's team; owner only.
remove_teammatechangeRemoves a person or a pending invite from the team; owner only.
export_shop_datareadExports everything the shop owns (Materials, Rates, Products, Customers, Quotes, Jobs, requests, history) as one JSON file and returns a download link.
import_price_bookchangeSet up or bulk-update the Price Book from the owner's spreadsheet or supplier list in one batch (Materials, Rates and Products; Products refer to Materials and Rates by name, including ones in the same batch).
upsert_materialschangeAdd Materials or change existing ones (matched by name).
upsert_rateschangeAdd labour or machine Rates ($/hour) or change existing ones (matched by name).
upsert_productschangeAdd Products (pricing recipes) or change existing ones by name — also for a flat price ("banners are $6 a sq ft, $35 minimum": price_per_unit + minimum).
reprice_materialschangeWhen a supplier raises or cuts prices: change the cost of every matching Material by a percent.
price_productreadPrice one Product at a size and quantity with options, with the step-by-step arithmetic (materials incl.
list_price_bookreadList Materials, Rates and/or Products with key numbers (costs, markups, options; per Product a sample price at its sample size with no options, its cost and margin = (price − cost) ÷ price).
retire_itemchangeHide a Material, Rate or Product from new Quotes (kept in history; never deleted).
upsert_customerchangeAdd a Customer or update one (matched by name or email).
find_customersreadFind Customers by name or email.
draft_quotechangeDraft a Quote for a Customer: each line names a Product, size, quantity and options; Grommetbook prices every line from the Price Book (computed, not estimated).
revise_quotechangeChange a draft or sent Quote (lines, customer, notes, deposit, expiry).
send_quotechangeMark a draft Quote as sent and get the customer approval link.
list_quotesreadList Quotes with number, customer, total, status, age and last activity (what last happened and when).
get_quotereadFull detail of one Quote: lines with the pricing arithmetic, totals, status, approval record, and the approval link if sent.
record_approvalchangeWhen the customer says yes to a draft or sent Quote by phone, text, email or at the counter ("Dave texted: go ahead"), not on the approval link: mark it approved and, with auto_job on, create its Job.
create_jobchangeCreate the Job for an approved Quote (usually automatic on approval).
move_jobchangeMove a Job to to_do, in_production, ready or done (installed / picked up), e.g.
update_jobchangeChange a Job's due date, title or notes.
list_jobsreadList Jobs with stage and due date (sorted by due date).
export_invoices_csvreadCSV of finished Jobs' invoice lines in a QuickBooks import layout — for shops without a connected accounting system.
request_featurechangeFiles a request when the owner asks for something none of the other tools can do.
list_my_requestsreadThe shop's feature requests and their status (open, planned, shipped, declined).
whats_newreadRecently shipped features, including this shop's requests that shipped.

Guides and comparisons

About this repository

This repository is the public home of Grommetbook on GitHub: documentation and issue tracking. The service itself is hosted; its source code is not published here. Questions, bugs and feature requests: open an issue or email [email protected]. You can also ask your assistant to file a request; Grommetbook has a request_feature tool.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.