io.github.cyanheads/openalex-mcp-server · v0.8.0 · marketing-and-seo
io.github.cyanheads/openalex-mcp-server is healthy: it completed an MCP handshake in 2381 ms and exposes 5 tools.
Access the OpenAlex academic research catalog — 270M+ publications.
Endpoint: https://openalex.caseyjhand.com/mcp (streamable-http)
Repository · JSON · Add to my inventory
| Users (last 30 days) | 0 |
| Handshake | Healthy |
| Auth needed | None |
| Tool count | 5 |
| Latency | 2381 ms |
| Last checked (UTC) | 2026-10-15T03:25:43.391Z |
| Checked (UTC) | Status | Latency | Error |
|---|---|---|---|
| 2026-10-15T03:25:43.391Z | Healthy | 2381 |
openalex_resolve_name | Resolve a name or an identifier to an OpenAlex ID. ALWAYS use this before filtering by entity — names are ambiguous, IDs are not. A name returns up to 10 autocomplete matches with disambiguation hints. An identifier — OpenAlex ID, DOI, ORCID, ROR, PMID, or ISSN, bare or in URL form — resolves direct |
openalex_search_entities | Search, filter, sort, or retrieve by ID. Covers all OpenAlex entity types (works, authors, sources, institutions, topics, keywords, publishers, funders). Pass `id` to retrieve a single entity. Otherwise, use `query` and/or `filters` for discovery. Supports keyword search with boolean operators, exac |
openalex_analyze_trends | Aggregate OpenAlex entities into groups and count them. Use for trend analysis (group works by publication_year), distribution analysis (group by oa_status, type, country), and comparative analysis (group by institution or topic). Combine with filters to scope the analysis. Returns up to 200 groups |
openalex_get_citation_graph | Walk the citation graph one hop from a seed work. Direction picks the edge: incoming citations (`cites`), the seed's own references (`cited_by`), or OpenAlex's algorithmically-related works (`related_to`). Note: `direction` follows OpenAlex's filter convention, which inverts the common English readi |
openalex_describe_fields | List valid field names for an OpenAlex entity type and context (filter, group_by, or select). Use proactively before constructing a filter or group_by to avoid invalid-field 400 errors. Pass `query` to rank the list by name similarity — useful when you have a partial or guessed field name. Ranking n |