Product
When Schema Drops the Meaning
This article explains why tool schemas must preserve the meaning of jiu jitsu training records.

For the BRAWLER AI MCP server, there is a basic translation problem to solve. Your jiu-jitsu training has to move from a journal into a client model without turning into generic software data along the way.
That sounds straightforward. A session has a start and an end. A round has a duration. A technique has a name. Put those fields in JSON and send them over.
But the useful part of a training record is not just its fields. It is the relationships between them, the vocabulary used to describe them, and the context a practitioner assumes without saying out loud.
A sparring round is not a generic event. Starting in closed guard is different from starting on the feet. Passing to side control before finishing an arm triangle tells a different story than catching the same submission during a scramble. A round with a regular partner can expose a recurring problem that a round with a first-time visitor cannot establish.
If a schema reduces all of that to an event type, a note, and a timestamp, the data still travels. The meaning does not.
The model only sees the contract
When an AI client calls a remote tool, it does not share the practitioner's lived understanding of the sport. It sees a tool name, a description, input fields, and a returned structure. Those pieces form the contract between the model and the training journal.
That contract is the last place domain meaning can survive on the wire.
A vague tool might return an array of activity objects. Each object could contain free text and a few generic labels. The client model would then have to guess whether "mount" is a position, an action, or part of a technique name. It would have to infer whether a submission was attempted, completed, or received. It might mistake a drilling partner for a sparring partner or treat a positional round like ordinary open sparring.
The cost becomes obvious when you ask a coaching question. "Where am I losing from half guard?" requires more than searching notes for the phrase "half guard." The answer may depend on whether you were on top or bottom, which passing or retention sequence followed, whether the round began there, and what happened before the position changed.
Without those distinctions, analysis becomes polished paraphrase.
Keep jiu-jitsu nouns intact
The BRAWLER AI approach is to carry jiu-jitsu semantics in the tool contracts themselves. Named positions remain positions. Technique categories remain technique categories. Sparring rounds retain their round structure rather than becoming undifferentiated timeline entries.
This does not mean every academy must use identical language. Practitioners and coaches often prefer different names for the same family of movements. It means the structure should identify what kind of thing a record represents before asking a model to interpret the practitioner's wording.
A note that says "worked knee cut" is useful text. A technique record categorized as a guard pass, connected to a session, and reflected in relevant rounds gives the client a stronger basis for synthesis. The original language can remain while the surrounding contract explains its role.
The same principle applies to partners. Who you rolled with is not incidental contact metadata. It can be part of the coaching signal. Patterns against a larger pressure passer may differ from patterns against a fast guard player. A good contract preserves the association without pretending that a partner's identity alone explains the result.
Structure should support honest answers
Domain-specific schemas do not guarantee a good coaching answer. They make honest answers more likely.
A clear contract helps the client distinguish recorded facts from interpretation. It can report that several rounds moved from a named guard to a named passing position. It can then offer a hypothesis about the transition, while labeling that hypothesis as analysis rather than journaled fact.
A vague blob encourages the opposite. Facts and guesses blend together because the model has to reconstruct basic structure before it can reason about the training.
This is why tool descriptions matter as much as field names. A field called result is weak if the description does not explain what result means in a round. A field called position is incomplete if it does not establish whether it is a starting position, a reached position, or a focus selected for positional training.
Specific descriptions reduce interpretive drift. They also make errors easier to spot during contract validation. If the contract says a value represents the round's starting position, a mismatched response is visible. If it only says "position data," almost anything can pass as correct.
Speak the language of the room
The goal is not to make the protocol sound like a jiu-jitsu textbook. The goal is to prevent the protocol from erasing distinctions that matter on the mat.
Your journal should be able to answer in the language you use to train: rounds, positions, passes, sweeps, submissions, partners, and sessions. Those are not decorative labels placed on generic activity data. They are the working concepts that let a coach connect one training day to another.
When schemas preserve those concepts, the client has less guessing to do. It can spend more of its effort on the question you actually asked.
That is the practical standard. Move the data, keep the meaning, and let the answer sound like it belongs in jiu-jitsu.


