Back to blog

Engineering

The Quonfig MCP Can Write Now

Jeff Dwyer·September 2, 2026

The best feature requests are one sentence. This one was: "How many Schrute Bucks to get create added to the MCP?"

Zero Schrute Bucks. It's live.

Until now the Quonfig MCP server was read-heavy on purpose: fifteen tools, two of which could write, and no way to create anything. As of today your agent can run the whole everyday loop:

  • create_flag — makes a flag that is off everywhere, with every environment inheriting. Typed flags (string, int, duration, JSON…) work too. Creation is deliberately inert: nothing changes for your users until the next step.
  • set_flag / set_config — turn it on in development, serve a value, run a percentage rollout — per environment, or pass environment: "default" to change what every environment inherits.
  • set_log_level / list_log_levels — "turn on debug for the checkout logger in staging" is now one tool call.

The part I care most about: writes are surgical. Setting a value updates what a scope serves while keeping your targeting rules — and the response tells you how many targeted rules are still in effect, so the agent can tell you "it's off for everyone except the beta cohort you targeted." Wiping targeting requires an explicit replaceTargeting: true. Agents are enthusiastic; the API shouldn't let enthusiasm delete your rules as a side effect.

Everything else about the surface assumes an agent is driving. Error responses are written to be recovered from: a taken key tells the agent what kind of thing holds it, a validation failure names the exact fields, and every write returns the previous version's commit sha — because Quonfig stores config in git, undo is "fetch that sha, write it back," and the tools spell out that recipe. Every MCP write lands as a git commit with the same audit trail as a UI or CLI change. And for shared surfaces like a Slack channel running Claude, a service account minted with the default Read-only tier simply doesn't see the write tools.

Choosing what to add was most of the work. We surveyed the field first: one competitor ships 68 generated CRUD tools where the only way to change a flag is a whole-document replace whose docs admit it discards anything you omit; another ships no write API at all. We went a third way — a small set of hand-built verbs (twenty tools total, well under the count where models start picking the wrong tool), with raw document read/write kept as the escape hatch and the undo path.

We also stopped trusting our own judgment about whether the tools are usable and built a scorecard: an eval harness that hands real models real tasks against a live workspace and grades the outcomes, 0–100. The write surface shipped only after the existing suite showed no regressions and the new one baselined at 83.6 — and the failing transcripts have already told us exactly which error messages to fix next.

Setup takes a minute: docs.quonfig.com/docs/api/mcp-server.

Want to try it?

Quonfig stores your config in git. Feature flags, dynamic config, log levels, and secrets — all as files you own.