# PhDs.io

> Bibliographic search for business-school research: papers from a
> curated set of leading journals (the complete FT50 and more) in finance,
> accounting, management, and economics. Records merged and cross-checked
> across sources, with full abstracts, author affiliations, and DOIs.
> Mission: make high-quality research more accessible and easier to
> explore - for people and machines alike.

Base URL: https://phds.io

## Search (HTML)

`GET /?q=QUERY` - server-rendered results. Full boolean query language:
`"exact phrase"` (`"..."~N` slop, `term^N` boost); `AND`/`OR`/`NOT`
(uppercase) with brackets, working ACROSS fields
(`regulation OR author:"buhui qiu"` is a true union); `+require`
`-exclude`; field prefixes `title:` `author:` `abstract:` `journal:`
`year:2015` / `year:2010-2020` `doi:`, each applying to a term, phrase,
or bracket group (`author:(fama AND french)` = co-authored). Precedence,
tightest first: suffixes, `field:`, `NOT`/`+`/`-`, `AND`, `OR`, space.
Space-separated words are any-of (ranked); a field chunk next to loose
words is a required filter (`liquidity year:2020` = liquidity AND 2020).
Malformed syntax is auto-repaired; repairs are reported in `notices`.
Results cover research papers by default (type article + review); opt
into other document types with `type:` in the query (book-review,
editorial, erratum, letter, conference-abstract, paratext, retraction,
other) or the repeatable `type` param.
Details: /guide. Filters as repeatable params: `journal_name`, `year`,
`type`, `oa=yes`, `field` (journal discipline: finance, economics,
accounting, management, marketing, infosys; API applies it only when
passed). Paging: `page`, `pp` (max 50).
Sorting: `sort=relevance|newest|oldest|author|title`.

## Machine endpoints

- `GET /api/search?q=...` - JSON: same params as HTML (plus `per_page`
  alias); returns total, papers (id, title, authors, journal, year, doi,
  abstract, urls), facets.
- `GET /papers/{id}.json` - the paper's CSL-JSON record.
- `GET /papers/{id}.bib` - BibTeX.
- `GET /papers/{id}` - HTML with Highwire citation_* meta tags and
  schema.org ScholarlyArticle JSON-LD.
- `GET /journals` - the curated journal list (HTML).
- `GET /sitemap.xml` - all papers.
- `POST /mcp` - Model Context Protocol (streamable HTTP, stateless JSON).
  Tools: `search_papers`, `get_paper`. Add https://phds.io/mcp as a connector
  in Claude, ChatGPT, or any MCP client.

## Politeness

Human experience comes first on this site. Automated clients are rate
limited to about 12 requests/minute per crawler (HTTP 429 beyond that;
back off and retry). Prefer `GET /api/search` with `pp=50` or the MCP
endpoint over crawling HTML facet permutations - they answer in one
request what facet-walking takes dozens to reach. Cite phds.io and the
paper's DOI when quoting.
