Skip to main content
Glama
untappd-mcp

untappd-mcp

by chrischall

Get Untappd friend activity feed

untappd_activity_feed
Read-only

Fetch recent Untappd check-ins from accounts you follow, newest first, and page backward with max_id to read older activity.

Instructions

Get your Untappd friend activity feed — the recent check-ins from people you follow, newest first. Page backwards with max_id (the pagination.max_id from a prior call). Read-only.

Input Schema

NameRequiredDescriptionDefault
viewNoResponse shape: "compact" (default) projects each check-in to {id, user, beer, brewery, venue, rating, comment, toast/comment counts}; "full" returns Untappd's whole ~5 KB record; "brief" returns one line per check-in: <user>: <beer> (<brewery>) at <venue> — <ISO date or "no date"> — <rated N|not rated>, inside the untrusted-data envelope as data: string[], with "-- " note lines ("-- none", "-- more").
limitNoMax check-ins (1–50, default 25)
max_idNoReturn check-ins older than this id (for paging)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv2.6.1
    • changedInput schema / properties / view / description
      Previous value: -"Response shape: \"compact\" (default) drops fields the response already carries elsewhere; \"full\" returns every field this server understands. compact projects each check-in to {id, user, beer, brewery, venue, rating, comment, toast/comment counts}; \"full\" returns Untappd's whole ~5 KB record."New value: +"Response shape: \"compact\" (default) projects each check-in to {id, user, beer, brewery, venue, rating, comment, toast/comment counts}; \"full\" returns Untappd's whole ~5 KB record; \"brief\" returns one line per check-in: <user>: <beer> (<brewery>) at <venue> — <ISO date or \"no date\"> — <rated N|not rated>, inside the untrusted-data envelope as data: string[], with \"-- \" note lines (\"-- none\", \"-- more\")."
    • changedInput schema / properties / view / enum
      Previous value: -[
      -  "compact",
      -  "full"
      -]New value: +[
      +  "compact",
      +  "full",
      +  "brief"
      +]
  2. Changed1 schema field changedv2.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  3. Changed2 schema fields changedv1.10.1
    • removedInput schema / properties / compact
      Removed value: -{
      -  "description": "Project each check-in to a slim summary to save context (default false)",
      -  "type": "boolean"
      -}
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "Response shape: \"compact\" (default) drops fields the response already carries elsewhere; \"full\" returns every field this server understands. compact projects each check-in to {id, user, beer, brewery, venue, rating, comment, toast/comment counts}; \"full\" returns Untappd's whole ~5 KB record.",
      +  "enum": [
      +    "compact",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  4. Changed1 schema field changedv1.1.0
    • addedInput schema / properties / compact
      Added value: +{
      +  "description": "Project each check-in to a slim summary to save context (default false)",
      +  "type": "boolean"
      +}
  5. First observedv0.0.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, it discloses newest-first ordering and backward pagination, including where to obtain the continuation value. The final "Read-only" merely repeats readOnlyHint, and operational details such as feed freshness or rate limits are not provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, presenting purpose and scope first and pagination next. "Read-only" is redundant with the structured annotation, but it adds almost no bulk.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a three-parameter read-only feed, the description supplies the resource scope, ordering, and pagination workflow needed to invoke it correctly. Although there is no output schema, the view parameter documents the response shapes in detail, while the description identifies the pagination field used for continuation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, and the schema already documents all three parameters thoroughly. The description adds useful meaning by explaining that max_id should be taken from pagination.max_id in a prior response and used to page backward.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description pairs a clear verb and resource with a precise scope: "recent check-ins from people you follow," ordered newest first. This distinguishes the friend feed from sibling user, venue, beer, and local check-in or activity tools without needing to name each one.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It establishes the context for using the friend feed and gives concrete guidance for retrieving older pages with max_id from a prior call's pagination.max_id. It does not explicitly route agents to alternatives such as untappd_user_checkins or untappd_venue_activity when they want a different scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.