MCP server exposing Untappd API tools for AI agents
Valid MCP server (9 strong, 10 medium validity signals). 3 known CVEs in dependencies (0 critical, 3 high severity) Package registry verified. Imported from the Official MCP Registry.
12 files analyzed · 4 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Set these up before or after installing:
Environment variable: UNTAPPD_CLIENT_ID
Environment variable: UNTAPPD_CLIENT_SECRET
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-darrenjrobinson-untappd": {
"env": {
"UNTAPPD_CLIENT_ID": "your-untappd-client-id-here",
"UNTAPPD_CLIENT_SECRET": "your-untappd-client-secret-here"
},
"args": [
"-y",
"untappd-mcp-server"
],
"command": "npx"
}
}
}From the project's GitHub README.
A Model Context Protocol (MCP) server that exposes the Untappd API as tools for AI agents. Search for venues, breweries, and beers, check what's on tap via recent check-in feeds, and look up user activity — all from any MCP-compatible client.
client_id and client_secret) from untappd.com/apiUNTAPPD_CLIENT_ID=xxx UNTAPPD_CLIENT_SECRET=yyy npx untappd-mcp-server
$env:UNTAPPD_CLIENT_ID = "your_client_id"
$env:UNTAPPD_CLIENT_SECRET = "your_client_secret"
npx untappd-mcp-server
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"untappd": {
"command": "npx",
"args": ["untappd-mcp-server"],
"env": {
"UNTAPPD_CLIENT_ID": "your_client_id",
"UNTAPPD_CLIENT_SECRET": "your_client_secret"
}
}
}
}
Search for venues (breweries, bars, restaurants) by name with optional location awareness.
| Parameter | Type | Required | Description |
|---|---|---|---|
q | string | Yes | Search query (venue name) |
lat | number | No | Latitude for location-aware results |
lng | number | No | Longitude for location-aware results |
Retrieve detailed information and recent check-ins for a venue.
| Parameter | Type | Required | Description |
|---|---|---|---|
venue_id | integer | Yes | Untappd venue ID |
compact | boolean | No | If true, returns venue info only (no checkins, media, top beers) |
Retrieve the recent check-in feed for a venue. This is the primary tool for determining what's currently on tap — recent check-ins act as a live signal for available beers.
| Parameter | Type | Required | Description |
|---|---|---|---|
venue_id | integer | Yes | Untappd venue ID |
limit | integer | No | Number of results (max 25, default 25) |
max_id | integer | No | Return results older than this checkin ID |
min_id | integer | No | Return only checkins newer than this ID |
Search for breweries by name.
| Parameter | Type | Required | Description |
|---|---|---|---|
q | string | Yes | Brewery name search query |
offset | integer | No | Offset for pagination |
Retrieve detailed information, beer list, and recent check-ins for a brewery.
| Parameter | Type | Required | Description |
|---|---|---|---|
brewery_id | integer | Yes | Untappd brewery ID |
compact | boolean | No | If true, returns brewery info only |
Search for beers by name.
| Parameter | Type | Required | Description |
|---|---|---|---|
q | string | Yes | Beer name search query |
offset | integer | No | Pagination offset |
sort | string | No | Sort order: checkin (default), name, count |
Retrieve detailed information for a specific beer.
| Parameter | Type | Required | Description |
|---|---|---|---|
bid | integer | Yes | Untappd beer ID |
compact | boolean | No | If true, returns beer info only |
Retrieve profile and stats for an Untappd user.
| Parameter | Type | Required | Description |
|---|---|---|---|
username | string | Yes | Untappd username |
compact | boolean | No | If true, returns user info only (no checkins, media, recent brews) |
Retrieve the recent check-in activity feed for a user.
| Parameter | Type | Required | Description |
|---|---|---|---|
username | string | Yes | Untappd username |
limit | integer | No | Number of results (max 25, default 25) |
max_id | integer | No | Return results older than this checkin ID |
min_id | integer | No | Return only checkins newer than this ID |
The Untappd API allows 100 calls per hour per API key. Every tool response includes the current rate limit status:
{
"rateLimit": {
"limit": 100,
"remaining": 97
}
}
The server does not block requests at the rate limit — if the limit is exceeded, the Untappd API returns a 429 error which is surfaced as: Rate limit exceeded. Limit: 100, Remaining: 0. Resets hourly.
This server uses client_id + client_secret authentication for public API endpoints. OAuth user authentication (access tokens) is not currently supported.
Set credentials via environment variables:
UNTAPPD_CLIENT_ID=your_client_id
UNTAPPD_CLIENT_SECRET=your_client_secret
The server will throw on startup if these are not set.
npm install
npm run build
npm start
npx @modelcontextprotocol/inspector node dist/index.js
venue_search first to resolve a venue name to an ID.MIT
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.