Recipe: Look up a concept (the right way)

Agents reach for dictionary.define_word for everything — including “self-inductance,” “Lenz law,” “electromagnetic induction.” A dictionary is for English vocabulary, not technical concepts. This recipe is the decision tree.

Tools used: define_word, wikipedia_search, wikipedia_get_summary, get_concept (OpenAlex), search_works (OpenAlex).

Calls: 1–3.

Decision tree

What you’re looking upUse thisWhy
English word, definition or part of speechdictionary.define_wordWhat it’s for. Single English words only.
Named entity, place, person, eventwikipedia.wikipedia_get_summaryWikipedia has the encyclopedic article.
Technical/scientific concept (“Lenz’s law”)wikipedia.wikipedia_search then get_summaryEncyclopedia handles physics, math, biology, history.
Academic field of study (“deep learning”)openalex.get_conceptReturns concept hierarchy, related fields, citation totals.
”What papers exist on X?”openalex.search_worksScholarly literature search.

The shapes of failure

dictionary.define_word("Lenz"){found: false, hint: "..."}. Not a crash, but a wasted call. The dictionary doesn’t know about physics. Default to Wikipedia for anything that isn’t pure vocabulary.

wikipedia_get_summary("self-inductance") → returns a 2-paragraph summary of the concept, an extract URL, and key facts. This is the right call for almost any “what is X” question that isn’t strictly about word usage.

Worked examples

”What does ‘self-inductance’ mean?"

// Wrong:
dictionary.define_word({ word: "self-inductance" })
// → {found: false, hint: "Word not in dictionary..."}

// Right:
wikipedia.wikipedia_get_summary({ title: "Inductance" })
// → encyclopedic explanation with formulas, history, examples

"What’s the field of ‘reinforcement learning’?"

openalex.get_concept({ query: "reinforcement learning" })
// → {
//   display_name: "Reinforcement learning",
//   level: 2,
//   description: "...",
//   ancestors: [{name: "Machine learning", level: 1}, {name: "Computer science", level: 0}],
//   related_concepts: [{name: "Deep reinforcement learning"}, {name: "Q-learning"}, ...],
//   works_count: 89234,
//   cited_by_count: 1234567
// }

"Define ‘sanguine’"

dictionary.define_word({ word: "sanguine" })
// → {found: true, phonetic: "/ˈsæŋ.ɡwɪn/", meanings: [{part_of_speech: "adjective", definitions: [...]}]}

"Who is Marie Curie?”

wikipedia.wikipedia_get_summary({ title: "Marie Curie" })
// → biographical summary, links to detailed article

Pattern: try-then-fallback

For agents that don’t know in advance whether a term is a vocabulary word or a concept:

const dict = await dictionary.define_word({ word: term })
if (dict.found) return dict

const wiki = await wikipedia.wikipedia_get_summary({ title: term })
if (wiki.found) return wiki

const concept = await openalex.get_concept({ query: term })
return concept

But honestly: most agent queries that hit dictionary and miss are technical concepts. Just default to Wikipedia first for anything that isn’t a clearly common English word.

Citation pattern

Self-inductance is the property of a circuit that opposes changes in current (Wikipedia). It’s quantitatively related to Lenz’s law and Faraday’s law of induction.

Caveats

  • Wikipedia disambiguation pages. “Mercury” returns a disambiguation page. Either pass a more specific title (“Mercury (planet)”) or check the response shape for disambiguation hints.
  • OpenAlex concept hierarchy is auto-classified. It’s good for broad fields, less reliable for niche subdisciplines or emerging areas.
  • Dictionary is English-only. For other languages, use Wiktionary via Wikipedia’s API or note this limitation.

Last reviewed May 8, 2026