Skip to content
Back to search
100
MCP live MCP 2026-07-28 streamable-http

Islam West Africa Collection (IWAC)

io.github.fmadore/iwac-mcp-server

Read-only access to the Islam West Africa Collection via Hugging Face datasets.

Uptime
100.0%
1 direct probes · 30d
Response
419ms
last probe
Tools
34
callable
Resources
1
readable
Prompts
2
available

Tools · 34

search

Search the Islam West Africa Collection across newspaper articles, Islamic publications, archival documents, academic references, audiovisual recordings, photographs, and the authority index (persons/…

fetch

Retrieve the full text and metadata of one IWAC item by an id returned from `search` (format '<category>:<number>', e.g. 'articles:28576'). Returns {id, title, text, url, metadata}: `text` is the item…

search_articles

Search IWAC newspaper articles by keyword (title + OCR + AI abstracts, French and English), country, newspaper, subject, and date range. Use French concept keywords regardless of the user's report lan…

get_article

Get one article (by id): full metadata, the AI abstract (description_ai), AI sentiment, and OCR text. Pass a `keyword` to get ~2000-char excerpts around each match instead of the full (capped) OCR.

search_by_sentiment

Filter articles by gpt-5-6-luna sentiment labels (accent/case-insensitive exact match). One model's reading, not a consensus — 4 other models scored the same articles and often disagree; get_sentiment…

get_sentiment_distribution

Aggregate AI polarity, centrality and subjectivity across a filter set. 5 models scored the corpus independently — gpt-5-6-luna, mistral-small-2603, deepseek-v4-flash-0731, gemma-4-31b-it, qwen3-8-27b…

search_index

Search the IWAC authority index (persons, places, organisations, events, subjects) by name. Accent/case-insensitive.

get_index_entry

Get full details of an index entry by id (raw dataset columns, French names — Titre, Prénom, Coordonnées…).

list_subjects

List sujets from the IWAC index, sorted by frequency (most-referenced first).

list_locations

List lieux from the IWAC index, sorted by frequency (most-referenced first). The optional 'country' filter selects entries that APPEAR IN records from that country (mentioned-in, not located-in), rank…

list_persons

List personnes from the IWAC index, sorted by frequency (most-referenced first). The optional 'country' filter selects entries that APPEAR IN records from that country (mentioned-in, not located-in), …

get_collection_stats

Overall statistics for every IWAC subset, including `fulltext_coverage` — how many items in each subset actually carry searchable full text in this public dataset. Read that before treating any keywor…

get_newspaper_stats

Per-newspaper article counts and date ranges.

get_country_comparison

Compare article counts, newspaper counts, date ranges, and gpt-5-6-luna polarity across countries.

get_temporal_distribution

Counts of matching items per year (or month) — the direct way to chart coverage trends over time instead of paging through search results. Defaults to articles; also works on publications, references,…

get_topic_distribution

How a filtered set distributes across the precomputed LDA topics, each labelled by its top terms (articles carry 30 topics and are ~99.5% classified; references have their own 33-topic model and only …

get_field_distribution

Rank the values of one multi-valued field across a filtered set — the direct way to answer 'which places does this coverage name most', 'who signs these articles', 'what subjects dominate'. Pipe-joine…

get_cooccurrence

How often the top values of a multi-valued field appear on the SAME item — a subject/place co-mention matrix. Answers 'what is X discussed alongside' without reading anything: the pair counts are the …

get_place_distribution

Places named by a filtered set of items, joined to the index's authority records so each carries coordinates where the index has them. Use this rather than get_field_distribution when the question is …

get_semantic_map

A 2-D scatter of a filtered set, projected from the stored 768-dimension embeddings by PCA. Shows which items sit near each other in meaning — where a set splits into distinct strands and where it is …

get_similar_items

The items nearest to a given one in meaning, by cosine similarity over the stored embeddings. Answers 'what else is like this' without a keyword — it finds pieces on the same event or theme that share…

get_lexical_metrics

Readability, lexical richness and length of the press text, averaged by year, newspaper or country. `Lisibilite_OCR` is a French readability score (higher = easier); `Richesse_Lexicale_OCR` is MATTR, …

search_publications

Search Islamic publications (periodical issues, books). `keyword` matches title, subject, table of contents, and full OCR text (TOC hits come back as matching_toc_entries); use French concept keywords…

list_periodicals

List the Islamic periodical/series titles in the publications subset, with issue counts and year ranges. Use the returned newspaper value as the `newspaper` filter on search_publications.

get_publication_fulltext

Full OCR text of a publication, optionally returning ~2000-char excerpts around keyword matches (accent-insensitive; capped — see match_count vs excerpts_returned).

search_references

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 (…

get_reference

Full bibliographic record for one academic reference (by id), including the complete abstract (present for ~51% of references), subjects, DOI/URL, and host-work details (book, volume, issue, pages).

search_documents

Search the small archival-documents subset (~26 items: Islamic association reports, flyers, project documents — mostly Burkina Faso). Use French concept keywords regardless of the user's report langua…

get_document

Get one archival document (by id): full metadata, AI description, and OCR text. Pass a `keyword` to get ~2000-char excerpts around each match instead of the full (capped) OCR — useful for long documen…

search_audiovisual

Search audiovisual materials by keyword and metadata: francophone web video from Burkina Faso, Togo and Benin (TV reports, association and campus recordings), plus deposited Nigerian Hausa/Arabic reco…

list_audiovisual

List audiovisual materials, newest first (francophone web video from Burkina Faso, Togo and Benin; deposited Nigerian Hausa/Arabic recordings). Filter by country, publishing channel or `source_type`.

get_audiovisual

Get one audiovisual record by id: full description and transcription (where one exists), creator/publishing channel, duration, medium, subjects, places, language, rights, source, and three distinct li…

search_images

Search the IWAC photographs (30 items: mosques, radio stations, schools, signage and street scenes documented during fieldwork). Keyword matches title, creator, subject, place and the rare caption. Ea…

get_image

Get one photograph by id: title, photographer, capture date, place and coordinates, subjects, rights, the IIIF manifest, and the full-resolution `image_url`. The server returns URLs, not image bytes.

Resources · 1

iwac-charts

Interactive charts for the IWAC statistics tools: coverage over time, periodical runs, country and newspaper comparisons, sentiment breakdowns and collection composition.

ui://iwac/charts.html

Prompts · 2

iwac_research

Run a structured, source-cited investigation of the IWAC archive at a chosen depth (brief or extended), following the five-phase method: scope, search, read, triangulate, synthesise.

iwac_overview

A plain-language tour of what the Islam West Africa Collection holds and the kinds of questions it can answer — no research run, no tool enumeration.

How to use

Add to your Claude Desktop / Cursor / Cline MCP config:

{
  "mcpServers": {
    "islam_west_africa_collection_(iwac)": {
      "url": "https://islam.zmo.de/mcp/",
      "transport": "streamable-http"
    }
  }
}