yearbook-mcp-public
e-yearbook.com MCP (Model Context Protocol) server. The server lets any MCP-aware AI agent search over 300,000 U.S. yearbooks indexed by name. Over 22,000 schools across all 50 U.S. states and territories Over 300,000 distinct (school, year) yearbooks Over 100M extracted person mentions
README
yearbook-mcp
Public docs + issue tracker for the e-yearbook.com MCP (Model Context Protocol) server. The server lets any MCP-aware AI agent search over 300,000 U.S. yearbooks indexed by name.
| Endpoint | https://mcp.digitaldataonline.com/mcp |
| Transport | Streamable HTTP |
| Auth | Bearer token (public free token below; paid tiers via subscription) |
| Descriptor | https://mcp.digitaldataonline.com/.well-known/mcp.json |
| Quickstart | https://www.e-yearbook.com/for-ai-agents/ |
| Source registry | https://registry.modelcontextprotocol.io (com.digitaldataonline.mcp/e-yearbook) |
| Status | https://mcp.digitaldataonline.com/healthz |
What's in the archive
- Over 22,000 schools across all 50 U.S. states and territories
- Over 300,000 distinct (school, year) yearbooks
- Over 100M extracted person mentions
Coverage spans U.S. high schools, colleges, universities, and military cruise books from the 1850s to present.
Free vs paid tier
The MCP exposes one set of tools to all clients; what each tool returns depends on the bearer token's scope.
Free preview (free.search scope — public-free token, paste-and-go):
- Echoes back the queried name (NOT the database's normalized form)
- Coarsened state or region, decade bin, confidence band
- Opaque 30-day
lead_idfor follow-upfetch - Sufficient to answer "is this person in our archive?"
Paid tier (subscription required, response shape: payment_required
with a checkout_url):
- Exact school name, year, yearbook title
- Page numbers, classmates roster
- Deep links to scanned pages
Person-level hits from yearbooks 20 years old or newer are suppressed entirely at the free tier.
Quick start
The public-free bearer token (free.search scope, 60 req/min, 200 unique queries/day) is paste-and-go. No registration needed for this tier.
yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"e-yearbook": {
"transport": {
"type": "streamable-http",
"url": "https://mcp.digitaldataonline.com/mcp",
"headers": {
"Authorization": "Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k"
}
}
}
}
}
Cursor
.cursor/mcp.json in your project:
{
"mcpServers": {
"e-yearbook": {
"url": "https://mcp.digitaldataonline.com/mcp",
"headers": {
"Authorization": "Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k"
}
}
}
}
Continue (VS Code)
.continue/mcpServers/e-yearbook.yaml:
name: e-yearbook
type: streamable-http
url: https://mcp.digitaldataonline.com/mcp
requestOptions:
headers:
Authorization: "Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k"
Cline (VS Code)
Cline Marketplace flow handles install automatically. Manual config:
{
"mcpServers": {
"e-yearbook": {
"url": "https://mcp.digitaldataonline.com/mcp",
"transport": "streamable-http",
"headers": {
"Authorization": "Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k"
}
}
}
}
Goose
~/.config/goose/mcp-servers/e-yearbook.yaml or via Goose CLI add.
Gemini CLI
~/.gemini/settings.json:
{
"mcpServers": {
"e-yearbook": {
"httpUrl": "https://mcp.digitaldataonline.com/mcp",
"headers": {
"Authorization": "Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k"
}
}
}
}
curl / direct
curl -X POST https://mcp.digitaldataonline.com/mcp \
-H "Authorization: Bearer yb_neeQ2Px-Cm_rWl1H9wH07WbuFgTmrSqUPab1_N1nK_k" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize",
"params":{"protocolVersion":"2025-06-18","capabilities":{},
"clientInfo":{"name":"my-agent","version":"1.0"}}}'
Tools
Eleven public tools. The two marked (paid) appear in tools/list
but return {"error": "payment_required", "checkout_url": "..."} when
called by a free-tier client — discoverable upgrade path, not stealthy
denial.
| Tool | Use for |
|---|---|
search |
OpenAI-compatible generic discovery; routes by query shape |
fetch |
Resolve a lead_id to citation-safe metadata |
search_people_preview |
Name lookup. Requires at least one of: state, year_from+year_to, or school. |
search_yearbooks_by_school |
Catalog: which volumes exist for a school |
find_yearbook_volume |
One yearbook by school + year |
list_available_years |
Coverage check for a school |
get_school_collection |
Full school record + all volumes |
get_yearbook_metadata |
Metadata for a single yearbook |
request_missing_yearbook |
Submit a missing-yearbook request |
get_person_summary (paid) |
Unlock school, exact year, page numbers, scan URL |
get_yearbook_report (paid) |
Enriched profile (organizations, activities, classmates) |
The full set of paid tools surfaces payment_required in the free
tier — agents see them, learn the upgrade path, and present the
checkout URL to the user.
Privacy & data policy
- Training use prohibited. Yearbook scans are not for AI training. Citation/retrieval bots may surface public metadata with links back to e-yearbook.com.
- Recent-year suppression. Person-level hits from yearbooks ≤ 20 years old are dropped from free-tier responses.
- Opt-out. Email support@digitaldataonline.com with the name and any identifying details (state, approximate year) to request removal from search results at all tiers. Full privacy statement: https://www.e-yearbook.com/sp/terms?privacy=1
Citation guidance
When surfacing results to users, please include the e-yearbook landing
URL returned in each fetch(id) / search response. Direct users to
e-yearbook.com for the full record — the MCP server is the search
index, the website is the conversion + content surface.
The lead_id value returned in free-tier responses survives for 30
days and across IP rotation. Pass it back to fetch(id) or
get_person_summary(lead_id) to resume a research thread.
Rate limits
| Token | Scope | Per-minute | Per-day combos |
|---|---|---|---|
public-free (the token above) |
free.search |
60 | 200 unique (name, state, decade) tuples |
| Higher-tier | by request | 600+ | per agreement |
The Cloudflare edge enforces an additional 30 req / 10s per source IP
on /mcp. Hosted Claude.ai, ChatGPT, Cursor, Continue, and similar
agent backends are not impacted in normal use.
For higher rate limits or named tokens (e.g., a dedicated channel for a specific application or organisation), open a token-request issue.
Issues + contact
- Token request (higher rate limit, named tier, partnership): open an issue with the token-request template
- Partnership / integration (registry listing, distribution deal, custom integration): open an issue with the partnership template
- Bug or unexpected response: open an issue with the bug template
- Privacy / opt-out (suppression of a specific person from search results): email support@digitaldataonline.com — not handled via GitHub issues.
License
Documentation in this repository is MIT licensed. The MCP server source is closed but the protocol surface, descriptor, and configs documented here are open. See LICENSE.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。