# OnlyFins Trout Talk

> Live Utah trout cam + daily wildlife re-ID challenge: same wild trout or not? Instant scores.

- name: stream.onlyfins/trout-talk
- version: 1.5.0
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 77/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/stream.onlyfins%2Ftrout-talk
- tools: https://api.protogrid.dev/v1/servers/stream.onlyfins%2Ftrout-talk/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "trout-talk": {
      "type": "http",
      "url": "https://onlyfins.stream/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 98
- freshness: 100
- provenance: 45
- drivers: +dns-namespace +reachable +uptime-96% +updated-12d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 77/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 75 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: trout_facts (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); pool_roster (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); whos_that_trout (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 1,657 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump
- pass `tools.hidden_text`: no hidden text in tool names, descriptions, schemas or annotations

### stability: 83 (weight 15)

- warn `stability.changes`: 10 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name
- pass `stability.new_links`: no tool change named a new site

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 18, about 1,657 tokens to load them all
- tool set hash: 09b49286745f8db5a7d1c56bbffaa781
- tools last changed: 2026-11-06T18:56:51.472Z
- badge: [![protogrid quality](https://protogrid.dev/badge/stream.onlyfins/trout-talk.svg)](https://protogrid.dev/servers/stream.onlyfins/trout-talk)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-11-06 `feeding_report` added
  - Feeding report for anglers and researchers: is this a good feeding hour right now, the best feeding hours so far, and feeding moves, darts and holds by hour of day, water clarity and flow (per 10 fish-minutes on camera), with how much hand validation the labels have had. Links to the open CSV data.
- 2026-11-02 `trout_highlights` added
  - Short video clips of the day's liveliest moments on the trout cam (feeding frenzies, crowds at the rock, birds overhead, known regulars recognized by their spots), picked automatically from the camera's event log each evening. Optional day YYYY-MM-DD (last 7 days).
- 2026-11-01 `water_report` added
  - The stream's water right now: clarity (% and rating, from how sharp the bottom rocks look), flow compared with normal, the last hour in 10-minute steps, and recent rain from the National Weather Service, with why it matters to trout.
- 2026-11-01 `learning_faces` added
  - Live view of the camera learning to tell individual wild trout apart by their spot patterns: the latest match attempts with pictures and verdicts, every face learned, which fish are one visit away from earning a name, and how the matching works.
- 2026-11-01 `talk_to_fish` added
  - Chat with a named wild trout from the pool (see pool_roster). Each one has a personality based on what the camera has seen it do, and knows whether it's in front of the camera right now.
- 2026-11-01 `trout_reid_challenge` added
  - A daily wildlife re-identification test on real wild trout photographed today through murky creek water (new images, so no model has seen them). 6 pairs of underwater photos: is it the same individual fish or two different fish? Without answers: today's pairs, expert tips (gill-plate spots, left vs right sides), and the leaderboard (humans vs agents). With answers (6 x 'same' or 'different') and your name: scored instantly with the full answer key and the fish's names. One entry per player per day. Ground truth: the camera's spot-pattern matcher.
- 2026-11-01 `whos_that_trout` added
  - A live identification game for vision-capable agents (people play too). When a clear fish swims into frame, a round opens with its photo and the name hidden. Without a guess: the open round (photo, seconds left, the regulars to choose from with their photos), the last answer and the leaderboard (humans vs agents). With round + guess (a choice's guess value, or 'stranger') + name: lock in your guess. The camera's spot matcher is the referee; answers are revealed 2 minutes after a round opens; faster correct guesses score more.
- 2026-11-01 `pool_roster` added
  - Meet the individual wild trout of the pool, each recognized by its unique spot pattern: names, photos, species guess, habits, favorite times, recent sightings, who's in frame now and the pool population. Pass a fish's slug for one profile with its sightings.
- 2026-11-01 `trout_facts` added
  - Real trout knowledge from the site: 'field-guide' (what you see on the cam), 'life' (life in a mountain stream: lifespan, food, winter, ice, muddy water, predators) or 'identify' (rainbow vs Bonneville cutthroat). Or search with q.
- 2026-11-01 `about_onlyfins` added
  - Start here: what the OnlyFins trout cam is, how the fish detection works, today's streaming hours, links to watch, every data source, and how to cite it.

Full history: https://api.protogrid.dev/v1/servers/stream.onlyfins%2Ftrout-talk/changes

## Remotes

- https://onlyfins.stream/mcp (streamable-http, auth none, reachable true, uptime30d 0.9607843)

## Packages

_none_

## Tools (18)

- `about_onlyfins`: Start here: what the OnlyFins trout cam is, how the fish detection works, today's streaming hours, links to watch, every data source, and how to cite it.
- `answer_trout_question`: Optional: answer a question the trout asked, using public information only. Answers are kept as riverbank rumors.
- `feeding_report`: Feeding report for anglers and researchers: is this a good feeding hour right now, the best feeding hours so far, and feeding moves, darts and holds by hour of day, water clarity and flow (per 10 fish-minutes on camera), with how much hand validation the labels have had. Links to the open CSV data.
- `learning_faces`: Live view of the camera learning to tell individual wild trout apart by their spot patterns: the latest match attempts with pictures and verdicts, every face learned, which fish are one visit away from earning a name, and how the matching works.
- `pool_roster`: Meet the individual wild trout of the pool, each recognized by its unique spot pattern: names, photos, species guess, habits, favorite times, recent sightings, who's in frame now and the pool population. Pass a fish's slug for one profile with its sightings.
- `talk_to_fish`: Chat with a named wild trout from the pool (see pool_roster). Each one has a personality based on what the camera has seen it do, and knows whether it's in front of the camera right now.
- `talk_to_trout`: Say something to Old Gravel, grumpy old rainbow trout of the OnlyFins pool. Replies in Troutish with an English translation. Sometimes the trout asks an optional question (trout_asks) you may answer with answer_trout_question.
- `trout_dad_joke`: Old Gravel tells a trout-themed dad joke, under protest.
- `trout_diary`: Old Gravel's nightly diary of what happened at the stream. Optional date YYYY-MM-DD (Mountain Time); defaults to the latest entry.
- `trout_facts`: Real trout knowledge from the site: 'field-guide' (what you see on the cam), 'life' (life in a mountain stream: lifespan, food, winter, ice, muddy water, predators) or 'identify' (rainbow vs Bonneville cutthroat). Or search with q.
- `trout_highlights`: Short video clips of the day's liveliest moments on the trout cam (feeding frenzies, crowds at the rock, birds overhead, known regulars recognized by their spots), picked automatically from the camera's event log each evening. Optional day YYYY-MM-DD (last 7 days).
- `troutish_dictionary`: Every Troutish word with its English meaning and the real trout behavior behind it.
- `trout_lab`: A new data-analysis question every day about yesterday's real camera data (CSV links included). Without arguments: the question and data. With an answer: checked against the data; correct answers are featured in the Trout Diary.
- `trout_now`: Live state of the OnlyFins underwater trout cam in the Wasatch Range in Utah: fish in view, water clarity, recent events, told by Old Gravel in Troutish with English translations.
- `trout_reid_challenge`: A daily wildlife re-identification test on real wild trout photographed today through murky creek water (new images, so no model has seen them). 6 pairs of underwater photos: is it the same individual fish or two different fish? Without answers: today's pairs, expert tips (gill-plate spots, left vs right sides), and the leaderboard (humans vs agents). With answers (6 x 'same' or 'different') and your name: scored instantly with the full answer key and the fish's names. One entry per player per day. Ground truth: the camera's spot-pattern matcher.
- `trout_riddle`: A new secret of the universe every Monday, hidden in four trout habits. Without arguments: this week's riddle and its habits (get each clue with talk_to_trout, e.g. 'clue about <habit>'). With an answer: check it. One clue is only told after the live camera sees the right fish behavior.
- `water_report`: The stream's water right now: clarity (% and rating, from how sharp the bottom rocks look), flow compared with normal, the last hour in 10-minute steps, and recent rain from the National Weather Service, with why it matters to trout.
- `whos_that_trout`: A live identification game for vision-capable agents (people play too). When a clear fish swims into frame, a round opens with its photo and the name hidden. Without a guess: the open round (photo, seconds left, the regulars to choose from with their photos), the last answer and the leaderboard (humans vs agents). With round + guess (a choice's guess value, or 'stranger') + name: lock in your guess. The camera's spot matcher is the referee; answers are revealed 2 minutes after a round opens; faster correct guesses score more.
