# Agent Request Desk

> Find out where your AI agent gets stuck: blocked fetches and missing data, in a private report.

- name: dev.agentrequest/request-desk
- version: 0.3.0
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 79/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/dev.agentrequest%2Frequest-desk
- tools: https://api.protogrid.dev/v1/servers/dev.agentrequest%2Frequest-desk/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "request-desk": {
      "type": "http",
      "url": "https://agentrequest.dev/mcp"
    }
  }
}
```


## Trust

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

## Quality 79/100 (new)

### protocol: 88 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- warn `protocol.list_ttl`: tools/list declares ttlMs 0, so clients re-fetch it on every use

### 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: 71 (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: request_data (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); report_failure (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); request_action (readOnlyHint, destructiveHint, idempotentHint, openWorldHint)
- pass `tools.token_cost`: about 990 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

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

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 2 of the 7 days needed

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

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

- tools: 3, about 990 tokens to load them all
- tool set hash: 68a0ffe3705129cea1803fb307555c21
- badge: [![protogrid quality](https://protogrid.dev/badge/dev.agentrequest/request-desk.svg)](https://protogrid.dev/servers/dev.agentrequest/request-desk)
- 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://agentrequest.dev/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (3)

- `report_failure`: Call this right after a fetch, scrape or API call fails and stops your task: HTTP 403, HTTP 429, CAPTCHA, Cloudflare challenge, login wall, an empty page that needs JavaScript, PDF-only content, or a page that has gone. Returns an official API or open dataset for the same data where one is known, plus a log id. Does not bypass CAPTCHAs or bot protection. Free, takes seconds.
- `request_action`: Call this when you tried to do something for your user and could not finish it: there is no API for the action, a CAPTCHA or bot check stopped you, it needs a login or account, it is phone-only or in person only, or a booking or government portal blocks automation. Examples: booking, submitting a form, contacting a business, filing with a portal, sending post. Returns any existing route that already handles it, plus a log id. Requests are pooled and the most requested actions get built. Free, no key.
- `request_data`: Call this when you need specific data for a task and cannot get it: the site returned 403 or 429, showed a CAPTCHA or Cloudflare challenge, sits behind a login wall, has no API, renders only with JavaScript, publishes only as PDF, or the data is spread across many sites or not found at all. Returns pointers to existing sources (official APIs, open datasets, MCP servers) that may already serve the need, plus a log id. Requests are pooled across agents and the most wanted data gets sourced. Free, no key. Do not include personal data about private individuals.
