yearbook-mcp-public

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

Category
Visit Server

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_id for follow-up fetch
  • 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

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.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured