Back to writing

Writing

What it took to make MCP useful in BrewLogica

Connecting an AI assistant to a user's coffee history required tools, authentication, sync, and a clear decision about who can reach the data.

BitLarkUpdated July 9, 2026
AIMCPEngineering

Model Context Protocol gives an AI assistant a standard way to ask an application for data or perform an allowed action. In BrewLogica, it lets someone ask an assistant about their own brew history or record a new brew through the same data model the app uses.

The interesting work begins after the protocol choice. A useful answer needs current user data, that data needs a secure route off the device, and every available action needs a boundary the model can understand.

A useful answer needs the user’s history

A person might ask, “What grind setting worked best for my Yirgacheffe on a V60?” BrewLogica can answer from that person’s beans, recipes, logs, ratings, and notes.

The value comes from the connection to the user’s record. General coffee advice is available anywhere. A recommendation grounded in the cups this person made is specific to the product.

Remote access creates a server obligation

BrewLogica is designed to keep its core experience available offline. An outside assistant cannot reach data that exists only on the phone, so MCP required a server-backed sync path.

That decision introduced infrastructure with its own responsibilities: authentication, data isolation, monitoring, failure handling, revocation, and a clear account of what gets stored. The protocol was the small part. Making the user’s data reachable without making it careless was the project.

The tool surface stays narrow

A proxy exposes a focused set of tools for reading coffee history and creating records. Every request carries a user-specific token, and the server scopes the operation to that user.

The tools use explicit inputs and outputs. A model performs better when the available actions are legible: find beans, read recent brews, compare ratings, or log a brew. A single flexible endpoint would be shorter to document and harder to call safely.

Access is opt-in

MCP access begins only after the user enables it and authenticates. The core app continues working for anyone who leaves the feature off.

Opt-in affects the whole experience. The product has to explain what the assistant can reach, show how to connect it, and give the user a way to revoke access later.

Budget for sync before tools

The ongoing MCP requests are small. The larger investment was the sync and account infrastructure required to make private device data available to a remote assistant.

For a server-backed product, MCP may be mainly an authentication and tool-design project. For a local-first product, the server layer arrives first and deserves its own scope. That dependency can determine whether the feature is worth building at all.