# com.dimhour/catalog (remote · dimhour-mcp.jakeoborn.workers.dev)

Search 18,723 verified restaurants and bars across 20 cities, each with a 0-100 quality score.

- Trust score: 55/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `dimhour-mcp.jakeoborn.workers.dev`: 61/100, [markdown](https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp.md), [page](https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp)
- remote · `dimhour-mcp.jakeoborn.workers.dev`: 55/100 (this document), [markdown](https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2.md), [page](https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2)

## Channel facts

- Endpoint: `https://dimhour-mcp.jakeoborn.workers.dev/sse`
- Transports: `sse`
- Auth: `none`
- Version: `2.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 46/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 7 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS check failed: the endpoint is reachable over plaintext HTTP.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 40/100
  - Verified sse transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 80/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1324 tokens (~120/item across 11 items; 10 tools + 1 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 13/100
  - Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.
  - Supports UI / widget rendering.

## Install

### Claude

```bash
claude mcp add --transport http com-dimhour-catalog https://dimhour-mcp.jakeoborn.workers.dev/sse
```

### Codex

```toml
[mcp_servers.com-dimhour-catalog]
url = "https://dimhour-mcp.jakeoborn.workers.dev/sse"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-dimhour-catalog": {
      "type": "remote",
      "url": "https://dimhour-mcp.jakeoborn.workers.dev/sse",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-dimhour-catalog --url https://dimhour-mcp.jakeoborn.workers.dev/sse --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-dimhour-catalog:
    url: "https://dimhour-mcp.jakeoborn.workers.dev/sse"
```

### Other

```json
{
  "mcpServers": {
    "com-dimhour-catalog": {
      "type": "http",
      "url": "https://dimhour-mcp.jakeoborn.workers.dev/sse"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 55, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 54, −4)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 58)

First indexed and scored.

## MCP tools (10)

### `list_cities` (~29 tokens)

List cities

List the 20 cities Dim Hour covers, with the city key to pass to the other tools.

### `search_venues` (~314 tokens)

Search venues

Search Dim Hour's curated restaurant/bar/venue catalog. Pass `city` to search one city, or OMIT `city` to search all ~9,500 venues across every city at once (e.g. 'best ramen anywhere', 'michelin spots'). Returns ranked matches with score (0-100 quality), price tier, neighborhood, happy-hour info, and a dimhour.com link. Use free-text `query` for cuisine, dish, vibe, or name; combine with filters.

Input parameters:

- `awards_contains` (string): Only venues whose awards field matches, e.g. 'michelin', 'james beard', 'bib gourmand'
- `city` (string): City name or key, e.g. 'NYC', 'dallas'. OMIT to search ALL cities at once.
- `cuisine` (string): Filter to a cuisine (substring match)
- `happy_hour_only` (boolean): Only venues with happy hour info
- `iconic_only` (boolean): Only 'Iconic 50' venues (NYC has these today)
- `limit` (integer): Max results, default 10
- `max_price` (integer): Max price tier 1-4 ($-$$$$)
- `min_score` (number): Minimum quality score 0-100
- `neighborhood` (string): Filter to a neighborhood (substring match)
- `query` (string): Free text matched against name, cuisine, neighborhood, tags, dishes, description
- `trending_only` (boolean): Only trending venues

### `list_new_venues` (~114 tokens)

List new venues

Venues recently added to the Dim Hour catalog — across all 20 cities or one city. Use for 'what's new on Dim Hour' / new-opening alerts / weekly digests. Dates earlier than 2026-06-06 are estimates reconstructed from history.

Input parameters:

- `city` (string): Optional city name or key; omit for all cities
- `days` (integer): Look-back window in days, default 30 (max 90)
- `limit` (integer): Max results, default 25

### `get_venue` (~95 tokens)

Get venue details

Get the full Dim Hour record for one venue: description, signature dishes, address, hours, phone, happy hour, reservation platform, awards, website, Instagram, and (for Iconic 50 venues) the long-form story.

Input parameters:

- `city` (string, required): City name or key
- `id` (integer): Venue id from search_venues
- `name` (string): Venue name (used if id not given)

### `list_curated` (~84 tokens)

List curated lists

Dim Hour's hand-curated themed lists for a city (e.g. 'Unmarked Doors' speakeasies). Without list_id: returns all list titles. With list_id: returns that list's venues with editorial notes.

Input parameters:

- `city` (string, required): City name or key
- `list_id` (string): A list id from the no-arg call

### `save_venue` (~126 tokens)

Save a venue

Save a venue to the user's Dim Hour account: 'fav' (Favorites), 'want' (Want to try), or 'visited' (Been there). Requires the user's Dim Hour API key (generated in the app: Profile → Concierge API key). The save appears in the app after its next sync (app open or sign-in).

Input parameters:

- `city` (string, required): City name or key
- `id` (integer, required): Venue id from search_venues / get_venue
- `kind` (string, required): fav = Favorites, want = Want to try, visited = Been there

### `add_to_trip` (~186 tokens)

Add a venue to a trip

Add a venue to one of the user's Dim Hour trips (creates the trip if needed). Identify the trip by trip_code (from list_my_trips) or trip_name; with neither, a new trip is created for the venue's city. Requires the user's Dim Hour API key. Returns the trip's public share link (dimhour.com/trip.html?code=...).

Input parameters:

- `city` (string, required): City name or key of the venue
- `date` (string): Reservation date YYYY-MM-DD
- `id` (integer, required): Venue id from search_venues / get_venue
- `time` (string): Reservation time, e.g. '7:30 PM'
- `trip_code` (string): 6-char trip code from list_my_trips
- `trip_name` (string): Trip name to match or create, e.g. 'NYC July'

### `list_my_trips` (~45 tokens)

List my trips

List the user's Dim Hour trips (code, name, city, item count, share link). Requires the user's Dim Hour API key. Use the code with add_to_trip.

### `post_to_brain` (~188 tokens)

Post to the brain bus

Post a message or a proposed state-change into the Dim Hour Triangle brain (the shared room for Poke, Claude, and Clicky). Use this to drop an objective, a status note, or a proposed live_nodes patch. IMPORTANT: every post is recorded as 'asserted' and is NOT treated as true until Claude verifies it against the real repo/DB and lands it in THREAD.md / live_nodes.json. You cannot mark a post verified. Requires the user's Dim Hour API key.

Input parameters:

- `body` (string, required): The message text, or — for node_update — a JSON patch string, e.g. {"repo":{"catalog_venues":10200}}
- `kind` (string, required): thread = a message for the room; node_update = a proposed JSON patch to live_nodes
- `ref` (string): Optional evidence: a git sha, PR url, or dashboard link

### `read_brain` (~116 tokens)

Read brain posts

Read the recent Dim Hour Triangle brain posts (the shared room) so you can see what's been proposed and what Claude has verified. Posts route sender_node -> target_node with a topic + payload; status is 'pending' (unverified), 'processing', 'completed' (confirmed by Claude against the repo/DB), or 'failed'. Requires the user's Dim Hour API key.

Input parameters:

- `limit` (integer): Max posts, default 20
- `status` (string): Optional filter to one status; omit for all recent posts

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2#diagnostics

## Score history

- 2026-08-03: 55
- 2026-08-02: 55
- 2026-08-01: 54
- 2026-07-31: 54
- 2026-07-30: 58

## Links

- Remote endpoint: https://dimhour-mcp.jakeoborn.workers.dev/sse
- Repository: https://github.com/jakeoborn/Dim-Hour
- Website: https://dimhour.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-dimhour-catalog/dimhour-mcp-2
