Skip to main content
Glama
repocritics

repocritics-mcp-server

Official
by repocritics
README.md
# repocritics-mcp-server

An MCP server that gives an agent read access to the [RepoCritics](https://repocritics.com) corpus: community-written summaries of open-source repositories, plus the scores and reviews behind them.

The point is that the summarising has already happened. Asking "is this library still maintained, and what do people actually complain about?" normally means reading a README, skimming a release feed, and sampling four issue threads. Here it is one call that returns a page someone already wrote.

Read-only, no API key, free.

## Install

**Claude Code** — nothing to install first:

```bash
claude mcp add repocritics -- npx -y repocritics-mcp-server
```

**Anything else** — add to your client's MCP config:

```json
{
  "mcpServers": {
    "repocritics": {
      "command": "npx",
      "args": ["-y", "repocritics-mcp-server"]
    }
  }
}
```

Or install it globally and drop the `npx`:

```bash
npm install -g repocritics-mcp-server
```

No configuration follows. The server talks to the public REST API over HTTPS; nothing is stored locally and no credentials are involved.

## Tools

| Tool | What it returns |
|------|-----------------|
| `search_repos` | Full-text search across the corpus. `query`, optional `category`, `tag`, `limit`. |
| `get_wiki` | The community wiki page for one repository. `platform`, `owner`, `name`. |
| `get_repo` | Metadata and scores for one repository. Same arguments. |
| `list_reviews` | Community reviews for one repository. Same, plus `limit`. |
| `list_categories` | Every category with the tag filters that define it. |
| `list_tags` | Tag vocabulary across the corpus, most frequent first. Optional `limit`. |
| `get_ai_report` | A cached deep-analysis report, when one exists for the repository. |

`get_wiki` is the one worth reaching for first — it is the summarised form the whole project exists to produce.

## Resources

| URI | Content |
|-----|---------|
| `repocritics://wiki/{platform}/{owner}/{name}` | Wiki page as markdown |
| `repocritics://reviews/{platform}/{owner}/{name}` | Reviews as JSON |
| `repocritics://feed/global` | Atom feed of recent review activity |

## Coverage

The corpus is seeded, not exhaustive — roughly two thousand repositories at the time of writing. `search_repos` is the cheapest way to check whether something is present before asking for it by name; a miss comes back as an explicit "not in the corpus" rather than an empty page.

## Rate limits

100 requests per endpoint per day, per IP. No key, so nothing to rotate.

Responses are edge-cached, and a cached response never reaches the counter — repeated reads of the same page are effectively free. In practice the ceiling is only met by walking the corpus with a fresh query each time, which is what it is there for.

Going over returns a plain message with the time until the quota resets. If the limit is genuinely in your way, open an issue.

## Configuration

| Variable | Default | Purpose |
|----------|---------|---------|
| `REPOCRITICS_API_BASE` | `https://repocritics.com/api/v1` | Point at a local or staging deployment |

## Using the data

Wiki pages are written by contributors at [github.com/repocritics/wiki](https://github.com/repocritics/wiki) and licensed CC-BY-SA 4.0. Quote them, build on them, feed them to a model — attribute RepoCritics and link back.

The API is also described as [OpenAPI 3.1](https://repocritics.com/openapi.json) and advertised through an [ARD catalog](https://repocritics.com/.well-known/ai-catalog.json), if you would rather call it directly than through MCP.

## Development

```bash
npm install
npm run build
npm run dev      # run from source
```

## License

MIT — see [LICENSE](LICENSE). Wiki *content* is CC-BY-SA 4.0 and licensed separately.

TDQS

A3.7/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a distinct resource or action: search, repo metadata, wiki, reviews, categories, tags, and AI reports. There is no ambiguity between tools; even search_repos and get_repo are clearly differentiated by scope.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case (search_repos, get_repo, get_wiki, list_reviews, list_categories, list_tags, get_ai_report). The naming style is uniform and predictable.

Tool Count5/5

With 7 tools, the server is well-scoped for a repository information service. Each tool earns its place, covering search, individual fetching, lists, and premium content without redundancy.

Completeness4/5

The tool set covers the main read-only operations for the RepoCritics corpus: searching repos, fetching metadata, wiki, reviews, categories, tags, and AI reports. Minor gaps exist, such as no way to fetch a single review or filter repos by category directly, but these are not critical for the core workflow.

Maintenance

ActivitySlowing
ResponsivenessNo issues