MCPサーバー

baba News by baba Hebrew

io.github.isaachorowitz/baba-news

このMCPでできること

Searches and analyzes Israeli news in Hebrew and English, including stories, sources, people, trends, coverage gaps, and story timelines.

blindspots_list
Coverage gaps, by camp
Coverage gaps, by camp. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'side': {'enum': ['left', 'centre', 'right', 'haredi', 'religious', 'arab', 'russian', 'business', 'official'], 'type': 'string', 'description': 'Return only stories the named camp did not run. Unknown values are 400.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'state': {'enum': ['blindspot', 'undercovered'], 'type': 'string', 'description': 'Repeatable. Unknown values are 400, unlike on /v1/stories, because this resource is only about these two.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}, 'window': {'type': 'integer', 'maximum': 10080, 'minimum': 15, 'description': 'How many minutes back to consider a state row current, 15-10080. Values below 15 are raised to 15; above 10080 are clamped.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
brief_get
Today in Brief
Today in Brief. Requires the brief API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
changes_list
Incremental change feed
Incremental change feed. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['since'], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 100, 'maximum': 500, 'minimum': 1, 'description': 'Page size, 1-500. Non-integer or negative values are 400; values above 500 are clamped.'}, 'since': {'type': 'string', 'format': 'date-time', 'description': 'ISO 8601 instant. Runs forward in time from here. Values older than seven days are raised to seven days ago, which is as far back as cluster state is kept warm.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
people_get
One person, with every spelling folded into them
One person, with every spelling folded into them. Identity and aliases. recentCoverage is always null: resolving a person to their stories has no index behind it today, and the field is in the contract so filling it later is additive. Requires the people API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'minimum': 1}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
people_list
People in the last 24 hours
People in the last 24 hours. Requires the people API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
search_list
Search stories
Search stories. Requires the search API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['q'], 'properties': {'q': {'type': 'string', 'maxLength': 120, 'minLength': 2, 'description': '2-120 characters. Matches title, summary, and entities. Search lives on /search only.'}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'since': {'type': 'integer', 'maximum': 30, 'minimum': 0, 'description': 'Jerusalem calendar dates back, 0-30, today inclusive. Non-integer or negative values are 400; values above 30 are clamped to 30.'}, 'state': {'type': 'string', 'description': 'Cluster state. Unknown values are ignored.'}, 'topic': {'type': 'string', 'description': 'Desk id. Repeatable.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}, 'source': {'type': 'string', 'description': 'Newsroom key. Repeatable.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
sources_activity
Measured newsroom behaviour
Measured newsroom behaviour. What a newsroom did rather than what its profile says it is: crawl outcomes over the window, and the byline, originality, opinion, press-release and filing-lag rates the profile cron computed over its own 30-day window. successRate is over finished runs only, so a crawl still in flight never reads as a failure. Requires the sources API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string'}, 'days': {'type': 'integer', 'default': 7, 'maximum': 30, 'minimum': 1, 'description': 'Days back, 1-30. Non-integer or negative values are 400; values above 30 are clamped.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
sources_get
One newsroom, with profile when computed
One newsroom, with profile when computed. Requires the sources API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['key'], 'properties': {'key': {'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
sources_list
List newsrooms
List newsrooms. Requires the sources API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
stories_get
Story detail: members, timeline, framing
Story detail: members, timeline, framing. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['ckey'], 'properties': {'ckey': {'type': 'integer', 'minimum': 1}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
stories_list
List stories
List stories. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'since': {'type': 'integer', 'maximum': 30, 'minimum': 0, 'description': 'Jerusalem calendar dates back, 0-30, today inclusive. Non-integer or negative values are 400; values above 30 are clamped to 30.'}, 'state': {'type': 'string', 'description': 'Cluster state. Unknown values are ignored.'}, 'topic': {'type': 'string', 'description': 'Desk id. Repeatable.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}, 'source': {'type': 'string', 'description': 'Newsroom key. Repeatable.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
stories_members
Every article in a cluster, paged
Every article in a cluster, paged. The same member records /v1/stories/{ckey} returns, but paged and filterable by side or lean. side and lean come from the source registry rather than the row, so a filtered page can be shorter than its limit while still issuing a cursor. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['ckey'], 'properties': {'ckey': {'type': 'integer', 'minimum': 1}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'lean': {'enum': ['left', 'center', 'right', 'unrated'], 'type': 'string', 'description': 'Only members with this political lean. Unknown values are 400.'}, 'side': {'enum': ['left', 'centre', 'right', 'haredi', 'religious', 'arab', 'russian', 'business', 'official'], 'type': 'string', 'description': 'Only members from this camp. Unknown values are 400.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
threads_get
One running story and its whole arc
One running story and its whole arc. Every instalment we still hold, newest first, in the same shape as a story on /v1/stories. The arc is bounded by limit and returned whole rather than paged. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'minimum': 1}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Instalments to return, 1-100. Non-integer or negative values are 400.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
threads_list
List running stories
List running stories. Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Malformed values are 400.'}, 'minNodes': {'type': 'integer', 'default': 2, 'maximum': 50, 'minimum': 1, 'description': 'Smallest number of instalments a thread must have, 1-50. One cluster is not yet a running story, so the default is 2.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
topics_list
The desk register with live volume
The desk register with live volume. Requires the sources API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'days': {'type': 'integer', 'default': 1, 'maximum': 7, 'minimum': 1, 'description': 'Days back, 1-7. Non-integer or negative values are 400; values above 7 are clamped.'}, 'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
trending_list
Newsroom momentum ranked by an explicit computed metric (newsroom-momentum-v1)
Newsroom momentum ranked by an explicit computed metric (newsroom-momentum-v1). Requires the stories API scope. English is the fallback for untranslated fields.
読み取り専用 外部アクセスあり
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'lang': {'enum': ['en', 'he'], 'type': 'string', 'default': 'en', 'description': 'Output language. Hebrew falls back to English per field when a row is missing.'}, 'limit': {'type': 'integer', 'default': 40, 'maximum': 100, 'minimum': 1, 'description': 'Page size. Non-integer or negative values are 400; values above 100 are clamped to 100 and echoed as page.limit.'}, 'cursor': {'type': 'string', 'description': 'Opaque keyset cursor from a previous page nextCursor. Ranked by the same metric, so a cursor is only valid for the metric that produced it. Malformed values are 400.'}, 'metric': {'enum': ['acceleration', 'velocity', 'heat', 'importance'], 'type': 'string', 'default': 'acceleration', 'description': 'Which computed signal orders the page. Unknown values are 400.'}, 'window': {'type': 'integer', 'maximum': 10080, 'minimum': 15, 'description': 'How many minutes back to consider a state row current, 15-10080. Values below 15 are raised to 15; above 10080 are clamped.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'additionalProperties': True}
変更
trending_list
2026年10月2日2:40
追加
people_get
2026年9月28日2:40
追加
sources_activity
2026年9月28日2:40
追加
topics_list
2026年9月28日2:40
追加
changes_list
2026年9月28日2:40
追加
stories_members
2026年9月28日2:40
追加
blindspots_list
2026年9月28日2:40
追加
trending_list
2026年9月28日2:40
追加
threads_get
2026年9月28日2:40
追加
threads_list
2026年9月28日2:40
追加
people_list
2026年9月28日2:40
追加
search_list
2026年9月28日2:40
追加
brief_get
2026年9月28日2:40
追加
sources_get
2026年9月28日2:40
追加
sources_list
2026年9月28日2:40
追加
stories_get
2026年9月28日2:40
追加
stories_list
2026年9月28日2:40