# Hunch

> Calibrated judgments for text: yes/no probabilities, picks from your options, or scores.

- name: app.hunchsheet/hunch
- version: 1.1.0
- connection class: R0 (autonomous)
- trust: 96/100
- quality: 88/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/app.hunchsheet%2Fhunch
- tools: https://api.protogrid.dev/v1/servers/app.hunchsheet%2Fhunch/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "hunch": {
      "type": "http",
      "url": "https://hunchsheet.app/mcp/try"
    }
  }
}
```


## Trust

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

## Quality 88/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 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: 75 (weight 15)

- pass `auth.prm`: Protected Resource Metadata (RFC 9728) published
- pass `auth.as_metadata`: authorization server metadata reachable
- pass `auth.cimd`: Client ID Metadata Documents supported
- fail `auth.secret_in_url`: secret in the URL (api_key); URLs end up in logs, use a header

### tool hygiene: 100 (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
- pass `tools.annotations`: 8 of 8 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,632 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

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

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

- tools: 8, about 2,632 tokens to load them all
- tool set hash: 3a436279ad5057695d448a8f116e40d8
- badge: [![protogrid quality](https://protogrid.dev/badge/app.hunchsheet/hunch.svg)](https://protogrid.dev/servers/app.hunchsheet/hunch)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://hunchsheet.app/mcp (streamable-http, auth oauth2, reachable true, uptime30d 1)
- https://hunchsheet.app/mcp/{api_key} (streamable-http, auth unknown, reachable unknown, uptime30d –)
- https://hunchsheet.app/mcp/try (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (8)

- `hunch_ask`: Judge a batch of short texts against one yes/no question and get back a calibrated probability (0 to 1) per text, not generated prose. Use it to score, tag, filter or triage many leads, support tickets, reviews, survey answers or emails at once, for example "Is this lead a decision maker?" or "Is this email urgent?". Prefer it to judging the texts yourself once there are more than about 25: one call returns a number per text and keeps the texts out of your context. Costs 1 credit per answered text (blank texts and texts repeated elsewhere in the same call are free; the same text asked again in a later call is charged again). Limits: the model reads the text only, no math, counting or dates; English works best; put the full definition of what counts as yes inside the question, since the model sees nothing else.
- `hunch_balance`: Check how many Hunch credits are left on this key and how many have been used so far. Read-only, costs nothing. Call it before a large batch, or when a judging tool reports texts were skipped for lack of credits. On the keyless /mcp/try connection it reports the free sample rows left today.
- `hunch_buy_credits`: Returns a link the person can open to buy more credits with a card on Stripe. Nothing is charged until they finish paying on that page; you cannot pay for them. Starter is $29 for 5,000 rows (a key's first purchase), Top-up is $19 for 25,000 rows on a key that already paid. Credits never expire and there is no subscription. Call it when a judging tool says the key is out of credits, or when hunch_quote says the job needs more than the key holds. Show the link to the person and let them decide.
- `hunch_get_key`: Returns a Hunch key with 100 free rows, in this response, with no email and no card. For the keyless /mcp/try connection: pass the key as api_key to the other tools (or reconnect with it). Limited to 2 keys per address per day. Treat the key like a password.
- `hunch_multi`: Ask up to 10 yes/no questions about the same batch of texts in one call, one probability per question per text, not generated prose. Use it when several judgments read the same text at once, for example "Can they buy?", "Are they angry?", "Is it urgent?" on the same support ticket, for a fraction of the tokens of separate calls. Prefer it to judging the texts yourself once there are more than about 25: one call returns a number per text and keeps the texts out of your context. Costs 1 credit per answered question per text (blanks and duplicate texts are free). Limits: the model reads the text only, no math, counting or dates, English works best, and each question needs its own definition of yes inside it.
- `hunch_pick`: Sort a batch of short texts into one of your own categories and get back the chosen option plus how confident the model is, not generated prose. Use it to route support tickets, classify feedback, or tag leads by type, for example options ["billing: invoices and charges", "refund", "bug", "other"]. Prefer it to judging the texts yourself once there are more than about 25: one call returns a number per text and keeps the texts out of your context. Costs 1 credit per answered text (blanks and duplicates in the same call are free). Limits: 2 to 255 options, each "label" or "label: description" to disambiguate a short label; the model reads the text only, no math, counting or dates, English works best.
- `hunch_quote`: Free, no key needed. Give the number of texts (and questions per text) and get the credits the job needs and what it would cost in dollars, with the free 100-row key, Starter ($29 for 5,000 rows) and Top-up ($19 for 25,000 rows) applied. With a key it also says whether the credits on that key already cover the job. Call it before a large batch so you can tell the person the price first.
- `hunch_score`: Place a batch of short texts on your own ordered scale (2 to 10 levels, low to high) and get back a probability-weighted position, the most likely level, and confidence, not generated prose. Use it for sentiment ("angry|disappointed|neutral|happy|delighted"), fit scoring ("no fit|weak|good|perfect"), or any low-to-high rating. Prefer it to judging the texts yourself once there are more than about 25: one call returns a number per text and keeps the texts out of your context. Costs 1 credit per answered text (blanks and duplicates in the same call are free). Limits: the model reads the text only, no math, counting or dates, English works best, and the question should say what is being scored.
