# AppBoard.pro product discovery

> Search community-ranked software products: trending launches, details, and alternatives to a tool.

- name: pro.appboard/appboard
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 83/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/pro.appboard%2Fappboard
- tools: https://api.protogrid.dev/v1/servers/pro.appboard%2Fappboard/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "appboard": {
      "type": "http",
      "url": "https://api.appboard.pro/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 85
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-97% ~updated-43d-ago -no-repository
- 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: appboard_alternatives_to (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); appboard_browse_taxonomy (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); appboard_product_details (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 1,178 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: 7, about 1,178 tokens to load them all
- tool set hash: d1b516a096cba05e619ef44c0fa1300a
- badge: [![protogrid quality](https://protogrid.dev/badge/pro.appboard/appboard.svg)](https://protogrid.dev/servers/pro.appboard/appboard)
- 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://api.appboard.pro/api/mcp (streamable-http, auth none, reachable true, uptime30d 0.9655172)

## Packages

_none_

## Tools (7)

- `appboard_alternatives_to`: Find products offered as alternatives to a tool the user ALREADY USES — "what can I use instead of Notion / Product Hunt / Zapier". Pass the tool's target slug. This differs from appboard_find_alternatives, which starts from a product listed on AppBoard; use this one when the user names the tool they want to replace. Call appboard_list_alternative_targets when unsure which slug a tool has.
- `appboard_browse_taxonomy`: List the controlled vocabulary for a dimension — categories, use cases, platforms, audiences or pricing models. Call this to discover the exact filter values appboard_find_products accepts, and to answer "what categories exist". Each term carries the appboardUrl of its browse page.
- `appboard_find_alternatives`: Find alternatives and competitors to a specific product. Use this for "what's a good alternative to X" or "what else is like X". Alternatives that are themselves on AppBoard include a slug you can pass to appboard_product_details and an appboardUrl. When the tool being replaced has an AppBoard collection, alternativesPage is the URL of that "alternatives to X" page — share it with the user.
- `appboard_find_products`: Search AppBoard for software products by need, category, use case, platform, audience or pricing model. Use this whenever the user asks what tool to use for a job ("a free email API", "note-taking apps for teams"). Results are ranked by real community engagement, not by advertising. Filter values are the names returned by appboard_browse_taxonomy — an unknown name is an error, so list the vocabulary first if you are unsure. Each product carries an appboardUrl, and each of its categories, use cases and platforms carries the appboardUrl of its browse page.
- `appboard_list_alternative_targets`: List the tools AppBoard has alternatives for, most-covered first, with the slug to pass to appboard_alternatives_to. Use it to resolve a tool name to a slug, or to answer "what tools do you cover alternatives for".
- `appboard_product_details`: Get everything AppBoard knows about one product: what it does, its pricing model, platforms, use cases, target audiences, community metrics, any discount code, and its alternatives. Use after appboard_find_products when the user asks about a specific product. Taxonomy terms link to their browse pages; an alternative that has its own AppBoard collection carries alternativesPage — the URL to open for it.
- `appboard_trending`: List the products gaining the most community momentum in a time window. Use this for "what's new/hot/trending" questions. Ranked by AppBoard's Points-Based Score, which weights recent upvotes, comments, follows and saves by recency.
