MCP server for the New York Times APIs.
| Tool | NYT API | Description |
|---|---|---|
search_articles |
Article Search | Search by keyword with Lucene filters, date ranges, pagination |
get_top_stories |
Top Stories | Current top stories by section (home, world, science, …) |
get_most_popular |
Most Popular | Most emailed / shared / viewed articles (1, 7, or 30 days) |
get_newswire |
Times Newswire | Live stream of just-published articles |
get_bestsellers |
Books | NYT Best Sellers lists (hardcover-fiction, etc.) |
get_archive |
Archive | Article metadata for any month back to 1851 |
read_article |
(scrape) | Fetch and extract the full text of an NYT article URL |
-
Get an API key at https://developer.nytimes.com/get-started.
-
Set the
API_KEYenvironment variable (or create a.envfile):export API_KEY=your-nyt-api-key
No installation needed — just run with uvx:
# From PyPI (after publishing)
uvx nyt-mcp
# From GitHub
uvx --from git+https://github.com/joe5saia/nyt-mcp nyt-mcpOr install permanently:
uv tool install nyt-mcp
# or from GitHub:
uv tool install git+https://github.com/joe5saia/nyt-mcpclaude mcp add nyt-mcp -- uvx nyt-mcpAdd to your MCP config (e.g. ~/.config/amp/settings.json):
{
"mcpServers": {
"nyt-mcp": {
"command": "uvx",
"args": ["nyt-mcp"],
"env": {
"API_KEY": "your-nyt-api-key"
}
}
}
}API_KEY=your-key uvx nyt-mcpuv run ruff check src/ tests/ # lint
uv run ruff format src/ tests/ # format
uv run ty check src/ # type check
uv run pytest tests/ -v # test