MCP 服务器

baba News by baba Hebrew

io.github.isaachorowitz/baba-news
媒体与内容 搜索与研究 公开且可连接 MCP 2025-11-25

此 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日 02:40
已添加
people_get
2026年9月28日 02:40
已添加
sources_activity
2026年9月28日 02:40
已添加
topics_list
2026年9月28日 02:40
已添加
changes_list
2026年9月28日 02:40
已添加
stories_members
2026年9月28日 02:40
已添加
blindspots_list
2026年9月28日 02:40
已添加
trending_list
2026年9月28日 02:40
已添加
threads_get
2026年9月28日 02:40
已添加
threads_list
2026年9月28日 02:40
已添加
people_list
2026年9月28日 02:40
已添加
search_list
2026年9月28日 02:40
已添加
brief_get
2026年9月28日 02:40
已添加
sources_get
2026年9月28日 02:40
已添加
sources_list
2026年9月28日 02:40
已添加
stories_get
2026年9月28日 02:40
已添加
stories_list
2026年9月28日 02:40