Lookup, search, or browse originators. Handles people, proverbs, anonymous sources, and institutions. Use name= for exact match, search= for fuzzy, neither for browsing.
When to use: User asks about a person/author, wants to find who said something, or needs to browse by category (poets, philosophers, etc).
Behaviors:
- `name` provided → resolve and return single originator details
- `search` provided → fuzzy search, return ranked list (optionally filtered by category tags)
- Neither → browse by filters (popular, language, min_quotes, category tags, etc.)
Category tags filter by originator type (e.g., ["Poets", "Politicians", "Catholic Bishops"]) - works with all modes.
Gender filter accepts natural language (e.g., "female", "women", "queer", "trans") - resolved to Wikidata Q-IDs internally.
Response format:
- Concise (default): slug, full_name, sort_name, quote_count, descriptions_i18n, web_url
- Detailed: + biography (500 char excerpt), confidence_tier, similarity_score
Response includes ai_hints with suggested next actions and quality signals for agent workflows.
Date filters (`born_on`, `died_on`, `born_year_gte`, `born_year_lte`, `died_year_gte`, `died_year_lte`) combine with every other filter via AND. Negative year bounds represent BCE; year 0 is rejected.
Examples:
- `originators(name="Einstein")` - exact lookup
- `originators(search="Shake")` - fuzzy search for "Shakespeare"
- `originators(tags=["Poets"], gender="female")` - browse female poets
- `originators(sort="popular", limit=10)` - top 10 by quote count
- `originators(born_on="04-20")` - originators born April 20 (any year)
- `originators(born_year_gte=-500, born_year_lte=-300)` - originators born between 500 BCE and 300 BCE inclusive