brewfather-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BREWFATHER_API_KEY | No | Your Brewfather API key, used for authentication via environment variables (for headless/CI environments). | |
| BREWFATHER_USER_ID | No | Your Brewfather user ID, used for authentication via environment variables (for headless/CI environments). | |
| BREWFATHER_MCP_CONFIG | No | Optional path to the configuration file (default is platform-specific user config directory). Used to override the default config location. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| brewfather_connection_statusA | Check whether local Brewfather credentials work. This is read-only and never returns credentials. |
| brewfather_list_recipesC | List Brewfather recipes. Read-only. Results are compact unless complete=true. Use startAfter with the last _id for pagination. |
| brewfather_search_recipesB | Search Brewfather recipes by name, author, type, style, or equipment. Read-only. Search paginates locally and can use several API calls. |
| brewfather_get_recipeA | Get one complete Brewfather recipe by its _id. Read-only. Call list or search first if only a recipe name is known. |
| brewfather_preview_recipe_createA | Prepare and validate a new Brewfather recipe without writing it. Always call this before brewfather_apply_recipe_create. The preview reports unit/color normalizations so they can be reviewed before confirmation. All units must be metric. String tags and unsupported miscellaneous units are rejected here, before confirmation. |
| brewfather_apply_recipe_createB | Create the recipe from a prior preview. This writes live Brewfather data. Only call after the user explicitly confirms that exact preview. |
| brewfather_preview_recipe_updateA | Validate and preview a safe update without writing it. The preview reports unit/color normalizations. Nested objects are deep-merged locally; arrays replace the entire array, so fetch the recipe and send a complete ingredient array when changing fermentables, hops, yeasts, or miscs. String tags and unsupported miscellaneous units are rejected before confirmation. |
| brewfather_apply_recipe_updateA | Apply a previously previewed recipe update. This writes live Brewfather data. The server rejects the update if the recipe changed after preview. Only call after explicit user confirmation. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 8 tools
Each tool has a clearly distinct purpose: connection check, listing, searching, retrieving, previewing/creating, and previewing/updating. The list vs. search tools are differentiated by description (compact vs. filtered) and the preview/apply pairs are unambiguous.
Most tools follow the pattern 'brewfather_' + verb + '_' + noun (e.g., list_recipes, get_recipe, apply_recipe_create). However, 'brewfather_connection_status' deviates as a noun phrase rather than an action, creating a minor inconsistency.
With 8 tools, the server is well-scoped for recipe management. It covers connection validation, read operations (list/search/get), and a two-phase create/update workflow, each tool earning its place without bloat.
The surface covers read (list/search/get) and create/update with preview/apply, but there is no delete operation, leaving a notable gap in the lifecycle. Other potential operations (e.g., duplicate, export) are absent but the core is covered.