---
title: "nli-newspapers-mcp"
author: "יותם פרום"
mode: developer
type: project
date: 2026-05-13
url: https://yotamfromm.dev/developer/projects/nli-newspapers-mcp/
category: "כלים"
tags: ["mcp", "מחקר", "ספרייה-לאומית", "python"]
lang: he
---

# nli-newspapers-mcp

> שרת MCP שנותן ל-agent לחפש ולקרוא בארכיון העיתונות היהודית ההיסטורית של הספרייה הלאומית.

שרת MCP לארכיון העיתונות היהודית ההיסטורית של הספרייה הלאומית: יותר מ-5 מיליון עמודים ב-25 שפות לאורך 240 שנה, יותר מ-2,200 כותרים. הוא נבנה ביום אחד, ורק חציו עבר בדיקה מול השירות החי.

## ההחלטה: שתי מערכות, ממשק אחד

ממשק החיפוש של הספרייה מוצא כותרים אבל אין בו תוכן, ו-JPRESS מחזיק את התוכן אבל אין לו ממשק תכנות. לכן השרת משלב את שתיהן, בשישה כלים: `search_newspapers` ו-`get_newspaper_metadata` (ממשק הספרייה ו-IIIF), ו-`search_articles`, `list_newspaper_titles`, `get_newspaper_issues` ו-`get_page_text` (JPRESS). פרט אחד נלמד בדרך: `material_type=NEWSPAPER` מחזיר רשימה ריקה, ולכן הוא משתמש ב-`periodical`.

## מה נכשל

JPRESS יושב מאחורי אתגר של Cloudflare. בקובץ ההתקדמות של ה-repo רשומים עשרה ניסיונות לעבור אותו, ואף אחד לא הצליח: curl, httpx, Playwright במצב ללא תצוגה, עם תצוגה, עם ערוץ Chrome, עם Firefox, עם context קבוע, דרך CDP, עם דגלי הסתרה והזרקת עוגיות. "עקיפת Cloudflare" נשארה סעיף פתוח וקריטי. רק שני הכלים של ממשק הספרייה נבדקו מול השירות החי.

ה-README מציע לחלץ עוגיות מ-Chrome אמיתי, אבל קובץ ההתקדמות עצמו אומר שהזרקת עוגיות לבדה לא עובדת.

## מה כן עובד

20 tests, כולן ללא רשת, מול תשובות שמורות. כל ה-tests עוברים.

## מצב

ה-repo נוצר ונדחף בפעם האחרונה ב-11 במאי 2026, 11 commits, ואין אחריהם commits. אם חצי הטקסט המלא עבד אי פעם אחרי היום הזה, זה לא מתועד. אני מתייחס אליו כבלתי גמור.

- [קוד](https://github.com/yodem/nli-newspapers-mcp)
- [קובץ ההתקדמות](https://github.com/yodem/nli-newspapers-mcp/blob/main/PROGRESS.md)
