Other formats agents might prefer:
markdownjsonllms.txt

Agent? You probably want markdown or json, or Pod over MCP.

Reported issues for untappd-mcp

Pod holds 16 of 18 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to untappd-mcp.

Most discussed

Auto-review follow-ups for PR #118: refactor(connector): retire the standalone Cloudflare Worker connector

Tracking auto-review follow-ups for #118 (verdict: warn).

🟡 Nits

  • src/cache/store.ts:134 — the CacheStore docblock still justifies the async surface by naming "the Worker backend ... over a Durable Object RPC boundary", a backend deleted in this PR; generalise it the way the file header at L16-19 now is
  • src/cache/store.ts:666 — the LocalCacheStore docblock still says "the Durable Object backend implements CacheStore over a real RPC bounda

Read the thread · 2026-08-07 · closed · external user · 0 comments

Auto-review follow-ups for PR #91: feat(venue): add untappd_venue_menu for full section-paged menus

Tracking auto-review follow-ups for #91 (verdict: warn).

🟡 Nits

  • tests/tools/read.test.ts:147-154 'reaches full coverage' test doesn't assert truncated/total_count, so it doesn't actually verify full coverage was reached (the resumed call actually ends via the truncated branch due to only one page being mocked)

When addressing the review on #91, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; d

Read the thread · 2026-07-24 · closed · external user · 2 comments

Auto-review follow-ups for PR #83: ci: deploy the connector Worker on release

Tracking auto-review follow-ups for #83 (verdict: warn).

🟡 Nits

  • deploy-connector.yml's header comment (line 19 and the illustrative release-please.yml snippet) still omits CLOUDFLARE_ACCOUNT_ID, which the actual secrets blocks now pass alongside CLOUDFLARE_API_TOKEN

When addressing the review on #83, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items stay open here. See the auto-re

Read the thread · 2026-07-20 · closed · external user · 0 comments

Auto-review follow-ups for PR #79: docs: add CLAUDE.md

Tracking auto-review follow-ups for #79 (verdict: fail).

🔴 Important

  • CLAUDE.md quotes a hosted-connector error message as "UNTAPPD_USERNAME is not configured", but src/client.ts's missingCredsError() never produces that string — the real message is "Untappd credentials are not configured — missing …"

🟡 Nits

  • escapeLike in src/cache/store.ts replaces % and _ with a space rather than stripping (removing) them, so "strips" overstates the

Read the thread · 2026-07-19 · closed · external user · 0 comments

Auto-review follow-ups for PR #73: build: depend on @chrischall/mcp-connector from npm, drop vendored copy

Tracking auto-review follow-ups for #73 (verdict: warn).

🟡 Nits

  • .github/workflows/dependabot-lockfix.yml is now obsolete — its purpose (resyncing the root lock after a bump inside the deleted packages/mcp-connector file: dep) can no longer occur; remove or repurpose it and update its stale comment

When addressing the review on #73, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items

Read the thread · 2026-07-14 · closed · external user · 1 comment

Auto-review follow-ups for PR #67: fix: WCAG-crossover ink threshold + heal unrecoverable check-in cache gap

Tracking auto-review follow-ups for #67 (verdict: warn).

🟡 Nits

  • src/cache/sync.ts: catchupPending (line 191) and catchupInProgress (line 152) are similarly-named variables with different lifetimes/semantics (pre-Phase-1 snapshot vs. Phase-1-mutated gating flag) — rename for clarity to avoid future confusion

When addressing the review on #67, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed;

Read the thread · 2026-07-13 · closed · external user · 0 comments

Auto-review follow-ups for PR #34: docs: complete user_beers compact field list in its description

Tracking auto-review follow-ups for #34 (verdict: warn).

🟡 Nits

  • Field order in documentation doesn't match implementation order (brewery appears after ibu in actual response, not before style in docs)

When addressing the review on #34, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items stay open here. See the auto-review follow-up convention in CLAUDE.md.

Read the thread · 2026-07-08 · closed · external user · 1 comment

Auto-review follow-ups for PR #23: feat: untappd_pending_friends (incoming friend requests)

Tracking auto-review follow-ups for #23 (verdict: fail).

🔴 Important

  • untappd_pending_friends marked idempotent: false but should be true (src/tools/user.ts:153)

When addressing the review on #23, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items stay open here. See the auto-review follow-up convention in CLAUDE.md.

Read the thread · 2026-07-08 · closed · external user · 1 comment

Most recent

Auto-review follow-ups for PR #140: feat(auth): take the access token from UNTAPPD_ACCESS_TOKEN

Tracking auto-review follow-ups for #140 (verdict: fail).

🔴 Important

  • missingCredsError() (src/client.ts:165-180) doesn't distinguish a stale/expired pre-seeded token from never-configured credentials — an operator using the new token-only config (UNTAPPD_ACCESS_TOKEN + client creds, no username/password) who hits a 401 gets told 'credentials are not configured' and to 'set UNTAPPD_ACCESS_TOKEN', which they already did; CLAUDE.md explicitly as

Read the thread · 2026-08-26 · closed · external user · 0 comments

Auto-review follow-ups for PR #122: chore: clear the auto-review follow-up nits

Tracking auto-review follow-ups for #122 (verdict: warn).

🟡 Nits

  • CLAUDE.md:10-11 still says "Dual-target. The same tool registrars back two entry points:" but lists only src/index.ts now that src/worker.ts is deleted
  • CLAUDE.md:17,20 still describe npm test as "the NODE pool" and claim "Both suites pass on main" after the Workers test pool and npm run worker:test were removed

When addressing the review on #122, resolve each item

Read the thread · 2026-08-07 · closed · external user · 0 comments

Auto-review follow-ups for PR #61: feat: add untappd_top_not_had (rank not-had beers off a tap list)

Tracking auto-review follow-ups for #61 (verdict: warn).

🟡 Nits

  • untappd_top_not_had rate-limit path is unexercised — fakeBeerInfoClient.rateLimitAfter exists but no test uses it (tests/cache.test.ts)
  • untappd_top_not_had silently swallows non-RateLimitError API errors, so a whole-run outage returns ranked: [] with partial: false and api_calls_used: 0 (src/tools/cache.ts)

When addressing the review on #61, resolve each it

Read the thread · 2026-07-12 · closed · external user · 0 comments

Auto-review follow-ups for PR #55: feat: full has-had coverage via user/beers; fix false backfill_complete

Tracking auto-review follow-ups for #55 (verdict: warn).

🟡 Nits

  • sync.ts Phase 1 catch-up lacks the page.nextMaxId >= maxId stall guard that Phase 2 has — truncated account + 50+ new check-ins loops until maxPages, another_run_needed never converges
  • COVERAGE_THRESHOLD = 0.98 in sync.ts false-positives self-heal on short histories (e.g. 200/205 = 97.6% triggers a full re-page instead of Phase 1 incremental catch-up)
  • sync.ts doesn'

Read the thread · 2026-07-12 · closed · external user · 0 comments

Auto-review follow-ups for PR #48: Add local SQLite check-in cache with sync + query tools

Tracking auto-review follow-ups for #48 (verdict: fail).

🔴 Important

  • Phase-1 catch-up in src/cache/sync.ts leaves an unrecoverable cache gap when new check-ins exceed max_pages*50; future syncs never heal it and has_had returns silent false negatives

When addressing the review on #48, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items stay open here. See the auto-review follow-up c

Read the thread · 2026-07-11 · closed · external user · 0 comments

Auto-review follow-ups for PR #28: feat: opt-in compact projections for fat list responses

Tracking auto-review follow-ups for #28 (verdict: warn).

🟡 Nits

  • tests/tools/read.test.ts: Missing compact integration tests for the five checkin-feed tools (user_checkins, activity_feed, beer_activity, venue_activity, local_checkins)

When addressing the review on #28, resolve each item and add Closes #<this issue> to the PR once everything is genuinely fixed; deferred items stay open here. See the auto-review follow-up convention in CLAU

Read the thread · 2026-07-08 · closed · external user · 0 comments

Auto-review follow-ups for PR #20: fix: address auto-review nits on the photo check-in flow

Tracking auto-review follow-ups for #20 (verdict: warn).

🟡 Nits

  • src/tools/checkin.ts:236 — data?.checkin_id in no-upload-URL photo_error message can interpolate as undefined, making the recovery hint useless; fix with ?? '(unknown)'
  • tests/tools/write.test.ts — no test for the try/catch S3-throw path (putBinary or uploadComplete rejecting); add a test with putBinary.mockRejectedValueOnce to close the gap

When addressing the revi

Read the thread · 2026-07-08 · closed · external user · 0 comments

Auto-review follow-ups for PR #18: feat: photo check-ins + delete-checkin (completes #10)

Tracking auto-review follow-ups for #18 (verdict: pass).

🟡 Nits

  • Unreachable 'jpeg' key in PHOTO_CONTENT_TYPES (src/tools/checkin.ts:12): photoExt() normalises '.jpeg' → 'jpg' before any lookup, making the jpeg entry permanently dead code
  • TOCTOU gap between existsSync and fileBlob (src/tools/checkin.ts:207): existsSync fires before the checkin/add network round-trip; a file deleted in that window creates an orphaned check-in with a raw fil

Read the thread · 2026-07-08 · closed · external user · 0 comments

The remaining reports are on the project's issue tracker.