Skip to main content
Glama

Islam West Africa Collection (IWAC)

Search academic references

search_references
Read-onlyIdempotent

Search academic references (journal articles, book chapters, theses, books, reports) by keyword and metadata. keyword is a single substring match over title + abstract, so search ONE term per call (combined terms like 'pèlerinage Mecque' miss results). References are multilingual: try French and English title/abstract keywords when relevant; metadata/filter values such as reference_type and language use French labels. Results include a short abstract snippet — use get_reference for the full abstract and bibliographic detail.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 20, max 100
authorNo
offsetNo
countryNoExact country name: Benin | Burkina Faso | Côte d'Ivoire | Niger | Nigeria | Togo (accents optional)
date_toNoLatest year, YYYY
keywordNoOne French or English concept keyword; substring match on title + abstract (one term per call, accent-insensitive)
subjectNoSubject tag (sparse: ~27% of references are tagged)
languageNoe.g. Français | Anglais
date_fromNoEarliest year, YYYY
reference_typeNoSubstring match. Values: Article de revue | Chapitre de livre | Livre | Mémoire de maitrise | Rapport | Thèse de doctorat | Communication scientifique | Compte rendu de livre | Article d'encyclopédie | Mémoire de licence | Article de blog | Working paper. Use the full label for precision — 'Livre' alone also matches 'Chapitre de livre' and 'Compte rendu de livre'.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • removedInput schema / properties / limit / maximum
      Removed value: -9007199254740991
    • removedInput schema / properties / limit / minimum
      Removed value: --9007199254740991
    • removedInput schema / properties / offset / maximum
      Removed value: -9007199254740991
    • removedInput schema / properties / offset / minimum
      Removed value: --9007199254740991
  2. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  3. Changed6 schema fields changed
    • removedInput schema / additionalProperties
      Removed value: -false
    • changedInput schema / properties / keyword / description
      Previous value: -"Substring match on title + abstract (one term per call, accent-insensitive)"New value: +"One French or English concept keyword; substring match on title + abstract (one term per call, accent-insensitive)"
    • addedInput schema / properties / limit / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / limit / minimum
      Added value: +-9007199254740991
    • addedInput schema / properties / offset / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / offset / minimum
      Added value: +-9007199254740991
  4. First observed

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds non-obvious behavior the annotations cannot convey: keyword is a substring match over title+abstract only, multilingual corpus with French metadata labels, and that results carry only a short abstract snippet.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, each load-bearing: purpose, keyword constraint, multilingual guidance, and routing to get_reference. The most important operational caveat (one term per call) is front-loaded after the purpose sentence with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully states what results contain (a short abstract snippet) and where to get more. For a 10-parameter, zero-required search tool it covers the high-risk semantics well, though it leaves pagination and limit/offset behavior entirely to the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 80%, so the baseline is 3, but the description adds real semantic value: it explains the substring/one-term-per-call constraint on `keyword` and warns that filter values such as `reference_type` and `language` use French labels. It does not touch the country/date/subject parameters beyond what the schema says.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (search) and resource (academic references) and enumerates the covered document types (journal articles, book chapters, theses, books, reports). It explicitly contrasts itself with get_reference, but does not differentiate from the sibling search_articles, which an agent must disambiguate on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete operational guidance: search ONE term per call because combined terms miss results, and try both French and English keywords. It also names the alternative (get_reference) for the full abstract. No explicit when-not-to-use against the other search_* siblings, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.