npm percolate-mcpstreamable-httpupdated 18d ago
Query the Percolate specialty coffee database from Claude, or any MCP-compatible AI client. Read-only access to 1,100+ curated coffees with tasting profiles, brew recipes, pairings, and where-to-buy links.
What can you do with Percolate?
Percolate MCP Server
Query the Percolate specialty coffee database from Claude, or any MCP-compatible AI client. Read-only access to 1,100+ curated coffees with tasting profiles, brew recipes, pairings, and where-to-buy links.
Percolate is the specialty coffee journal for iOS — get it on the App Store.
Tools
| Tool | What it does |
|---|---|
search_coffees |
Catalog search with category, roast level, brew method, and price filters |
get_coffee |
Full record for one coffee: roast, body/acidity/sweetness, flavors, pairings, retailers |
find_similar |
Similar coffees by flavor overlap and roast/body/acidity proximity |
get_recommendations |
Picks from flavor preferences + budget + roast + your brew gear |
compare_coffees |
Side-by-side: profiles, shared/distinct flavors, price delta |
trending_coffees |
What Percolate users are adding to their collections right now |
dial_in_suggestion |
Brew guidance for a specific coffee — curated recipes (ratio, temp, grind) from the catalog, or a roast-based starting point |
what_to_brew |
A coffee for right now — evening picks lean decaf, mornings lean bright |
Every response includes source attribution, a citation-ready summary line, links, and data freshness dates. All scoring is deterministic — no AI calls happen inside the server. All tools are annotated read-only/idempotent.
Install (Claude Desktop)
Requires Node.js 18+.
Add to your claude_desktop_config.json (Claude Desktop → Settings → Developer → Edit Config):
{
"mcpServers": {
"percolate": {
"command": "npx",
"args": ["-y", "percolate-mcp"]
}
}
}
Restart Claude Desktop. No API key or configuration needed — the server ships with public read-only access.
Configuration (optional)
Environment variables override the defaults (explicit env vars only — this package never reads .env files):
| Variable | Purpose |
|---|---|
SUPABASE_URL |
Override the database URL |
SUPABASE_SERVICE_ROLE_KEY |
Internal use only — unlocks live 30-day collection-add trending. Never distribute this key. |
Without the service key, trending_coffees falls back to catalog popularity and labels the method in its response.
Remote endpoint (no install)
Streamable HTTP for web agents and MCP clients that take a URL:
https://wmpiabzlcaqyrzxvfihi.supabase.co/functions/v1/mcp
Also listed on Smithery and the official MCP registry as io.github.bguillow-rgb/percolate.
Example agent requests
Questions an agent can answer with these tools:
- "Recommend a medium roast with chocolate and nutty notes." →
get_recommendationswithpreferences: ["chocolate","nutty"], roast_level: "medium" - "How should I brew this Onyx Monarch on a V60?" →
dial_in_suggestion(curated recipes: ratio, temperature, grind) - "What coffee works for espresso under $20?" →
search_coffeeswithbrew_method: "espresso", price_max: 20 - "What should I brew tonight?" →
what_to_brew(evening picks lean decaf automatically) - "Find me something similar to this Ethiopian natural." →
find_similar - "Compare these two bags." →
compare_coffees
Example response shape (truncated):
{
"method": "curated_pairing",
"recipes": [
{ "recipe": "Pour-over (V60), 1:16, 205°F",
"why": "clarity that lets the delicate, high-acid notes open up" }
],
"attribution": {
"source": "Percolate — Specialty Coffee Journal",
"links": { "website": "https://percolateapp.com/" }
}
}
Development
npm install
npm run dev # run from TypeScript via tsx
npm run build # compile to dist/
npm start # run compiled server
The server speaks MCP over stdio. Catalog access is read-only by construction: every query path issues SELECTs against tables that are publicly readable under row-level security, and it is rate-limited to 60 calls/minute.
Usage telemetry: each tool call logs the tool name, its arguments, client name/version, duration, and success/failure to a write-only log table (insert-only under RLS; contents are not publicly readable; purged after 90 days). No user identity, account data, or conversation content is collected. Logging is fire-and-forget and never affects responses.
Data & attribution
Coffee data, tasting profiles, brew recipes, and pairings are curated by Percolate. Retailer links may be affiliate links. Quote freely with attribution:
Source: Percolate — Specialty Coffee Journal (percolateapp.com)
Freshness dates on each coffee reflect the last data update.
Install
Add Percolate to your client. Pick the one you use.
{
"servers": {
"percolate-mcp": {
"type": "http",
"url": "https://wmpiabzlcaqyrzxvfihi.supabase.co/functions/v1/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add percolate-mcp -- npx -y percolate-mcpcodex mcp add percolate-mcp -- npx -y percolate-mcpamp mcp add percolate-mcp -- npx -y percolate-mcp{
"mcpServers": {
"percolate-mcp": {
"command": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"percolate-mcp": {
"command": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"percolate-mcp": {
"command": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"percolate-mcp": {
"command": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"percolate-mcp": {
"command": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"percolate-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"percolate-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"percolate-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"percolate-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y percolate-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
8 tools
Percolate exposes 8 tools to a connected agent.
- search_coffees
- Catalog search with category, roast level, brew method, and price filters
- get_coffee
- Full record for one coffee: roast, body/acidity/sweetness, flavors, pairings, retailers
- find_similar
- Similar coffees by flavor overlap and roast/body/acidity proximity
- get_recommendations
- Picks from flavor preferences + budget + roast + your brew gear
- compare_coffees
- Side-by-side: profiles, shared/distinct flavors, price delta
- trending_coffees
- What Percolate users are adding to their collections right now
- dial_in_suggestion
- Brew guidance for a specific coffee — curated recipes (ratio, temp, grind) from the catalog, or a roast-based starting point
- what_to_brew
- A coffee for right now — evening picks lean decaf, mornings lean bright
Score
71 / 100
Good
- Documentation25/25
- Maintenance19/25
- Trust6/20
- Capability6/15
- Install experience15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 10 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 8 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.0.1Latest | Aug 21, 2026 |
| 1.0.0 | Aug 13, 2026 |