# dev.toolpin/toolpin

> Check whether an MCP server answers, what its tools claim, and whether that claim has changed.

- name: dev.toolpin/toolpin
- version: 0.1.0
- connection class: R0 (autonomous)
- trust: 100/100
- quality: 83/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/dev.toolpin%2Ftoolpin
- tools: https://api.protogrid.dev/v1/servers/dev.toolpin%2Ftoolpin/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "toolpin": {
      "type": "http",
      "url": "https://toolpin.dev/mcp"
    }
  }
}
```


## Trust

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

## Quality 83/100 (good)

### 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: search_servers (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_server_tools (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_server_changes (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 618 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: 6, about 618 tokens to load them all
- tool set hash: 64a47d0e399166591c38ddab74c47f95
- badge: [![protogrid quality](https://protogrid.dev/badge/dev.toolpin/toolpin.svg)](https://protogrid.dev/servers/dev.toolpin/toolpin)
- 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://toolpin.dev/mcp (streamable-http, auth none, reachable true, uptime30d 0.973913)

## Packages

_none_

## Tools (6)

- `get_server`: Everything Toolpin has observed about one MCP server: reachability of each remote endpoint and when each was last checked and last verified, repository activity, the current tool-definition hash, and how many changes it has recorded in the last 90 days. The reply includes the catalog-wide drift rate so that count can be read against a baseline.
- `get_server_changes`: Changes Toolpin recorded for one MCP server: tool definitions changing, and endpoints going down or coming back. Each change says which tools moved and which of their fields differed, with the hash before and after. Includes the catalog-wide drift rate for comparison.
- `get_server_tools`: The tool definitions one MCP server advertised when Toolpin last read them, each with a SHA-256 hash of the fields the MCP specification defines. Use this to see what a server's tools claim to do without connecting to it, or to compare a hash you pinned earlier.
- `get_spec_status`: The current MCP specification revision, which of its proposals Toolpin checks for, and how much of the catalog has migrated. Use this to find out what the current revision is and how unusual it is to still be on an older one.
- `search_servers`: Find MCP servers in the public registry by name or title. Returns the canonical name, description, and whether the server answered our last probe. Use this to turn a rough idea of a server into the exact name the other tools need.
- `watch_server`: Start monitoring an MCP server on the caller's Toolpin account, so they are emailed when it changes or stops answering. Needs an API key. Says so plainly if the account is already at its plan limit rather than failing.
