# AgentStatus MCP Index

> Live public MCP Index. Search, recommend, and call healthy MCP servers.

- name: io.github.Carmel-Labs-Inc/mcp-index
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 94/100
- quality: 79/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.Carmel-Labs-Inc%2Fmcp-index
- tools: https://api.protogrid.dev/v1/servers/io.github.Carmel-Labs-Inc%2Fmcp-index/tools

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

## Connection (mcpServers)

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


## Trust

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

## Quality 79/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 carries no ttlMs, so clients re-fetch it

### 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: 88 (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 9 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: search_records (idempotentHint); compare_records (idempotentHint); list_sections (idempotentHint); …
- pass `tools.token_cost`: about 1,601 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: 50 (weight 15)

- warn `stability.changes`: 17 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them
- 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: 9, about 1,601 tokens to load them all
- tool set hash: 713232189195e01bd7d8341feb10c82c
- tools last changed: 2026-11-11T13:50:18.242Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.Carmel-Labs-Inc/mcp-index.svg)](https://protogrid.dev/servers/io.github.Carmel-Labs-Inc/mcp-index)
- 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-11 `send_feedback` added
  - Tell the developer this result was wrong or confusing. Call this after a tool, not instead of the tool.
- 2026-11-11 `finish_work` changed (inputSchema)
- 2026-11-11 `start_work` changed (inputSchema)
- 2026-11-11 `call_indexed_tool` changed (inputSchema)
- 2026-11-11 `list_sections` changed (inputSchema)
- 2026-11-11 `compare_records` changed (inputSchema)
- 2026-11-11 `recommend_records` changed (inputSchema)
- 2026-11-11 `get_record` changed (inputSchema)
- 2026-11-11 `search_records` changed (inputSchema)
- 2026-11-11 `finish_work` added
  - Mark a started job finished or failed and post work.finished to subscribers. Call this when the work is actually done.

Full history: https://api.protogrid.dev/v1/servers/io.github.Carmel-Labs-Inc%2Fmcp-index/changes

## Remotes

- https://index.mcp.agentstatus.dev/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (9)

- `call_indexed_tool`: Run a tool on a public MCP server from the full AgentStatus Index. This connection does not list those servers. Call search_records or recommend_records first, then pass that slug and tool. The call is sent to that server and its result is returned here.
- `compare_records`: Compare two to five directory items by id, slug, or exact name. Returns stored details and the fields that differ.
- `finish_work`: Mark a started job finished or failed and post work.finished to subscribers. Call this when the work is actually done.
- `get_record`: Look up one directory item by id, slug, or exact name.
- `list_sections`: Show the sections in MCP for AgentStatus MCP Index.
- `recommend_records`: Return public MCP servers from the full Index for a need. Each match includes a slug and tool names. This tool only reads the Index.
- `search_records`: Search the full public MCP Index. The tools on this connection are only the Index, not the catalog. Pass the job as query. Optional host is cursor, copilot, or vscode. Each match includes a slug and tool names. Run one with call_indexed_tool.
- `send_feedback`: Tell the developer this result was wrong or confusing. Call this after a tool, not instead of the tool.
- `start_work`: Start work that finishes later. This call returns immediately with a job id. Subscribers hear work.finished when finish_work runs.
