Skip to content

baba News by baba Hebrew

by isaachorowitz · remote · no sign-in to list tools · v1.0.0 · published by GitHub user isaachorowitz

Israeli news in Hebrew and English: stories, sources, comparisons, coverage gaps, people and trends.

Changes · 2

16 tools: 2 change things and 14 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http baba-news https://news.itsbaba.com/mcp --header 'Authorization: <your-authorization>'

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

16 tools

Changes things 2Claude Code: ask
  • sources_activityMeasured newsroom behaviour.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • stories_membersEvery article in a cluster, paged.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
Only reads 14Claude Code: allow
  • blindspots_listCoverage gaps, by camp.No findings

    Why it is in this group

    • The name "blindspots_list" says "list": a word for reading.
    Description, as the server wrote it
    Coverage gaps, by camp. Requires the stories API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • brief_getToday in Brief.No findings

    Why it is in this group

    • The name "brief_get" says "get": a word for reading.
    Description, as the server wrote it
    Today in Brief. Requires the brief API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • changes_listIncremental change feed.No findings

    Why it is in this group

    • The name "changes_list" says "list": a word for reading.
    Description, as the server wrote it
    Incremental change feed. Requires the stories API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • people_getOne person, with every spelling folded into them.No findings

    Why it is in this group

    • The name "people_get" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • people_listPeople in the last 24 hours.No findings

    Why it is in this group

    • The name "people_list" says "list": a word for reading.
    Description, as the server wrote it
    People in the last 24 hours. Requires the people API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • search_listSearch stories.No findings

    Why it is in this group

    • The name "search_list" says "search": a word for reading.
    Description, as the server wrote it
    Search stories. Requires the search API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • sources_getOne newsroom, with profile when computed.No findings

    Why it is in this group

    • The name "sources_get" says "get": a word for reading.
    Description, as the server wrote it
    One newsroom, with profile when computed. Requires the sources API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • sources_listList newsrooms.No findings

    Why it is in this group

    • The name "sources_list" says "list": a word for reading.
    Description, as the server wrote it
    List newsrooms. Requires the sources API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • stories_getStory detail: members, timeline, framing.No findings

    Why it is in this group

    • The name "stories_get" says "get": a word for reading.
    Description, as the server wrote it
    Story detail: members, timeline, framing. Requires the stories API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • stories_listList stories.No findings

    Why it is in this group

    • The name "stories_list" says "list": a word for reading.
    Description, as the server wrote it
    List stories. Requires the stories API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • threads_getOne running story and its whole arc.No findings

    Why it is in this group

    • The name "threads_get" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • threads_listList running stories.No findings

    Why it is in this group

    • The name "threads_list" says "list": a word for reading.
    Description, as the server wrote it
    List running stories. Requires the stories API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true
  • topics_listThe desk register with live volume.No findings

    Why it is in this group

    • The name "topics_list" says "list": a word for reading.
    Description, as the server wrote it
    The desk register with live volume. Requires the sources API scope. English is the fallback for untranslated fields.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http baba-news https://news.itsbaba.com/mcp --header 'Authorization: <your-authorization>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__baba-news__stories_list",
      "mcp__baba-news__stories_get",
      "mcp__baba-news__sources_list",
      "mcp__baba-news__sources_get",
      "mcp__baba-news__brief_get",
      "mcp__baba-news__search_list",
      "mcp__baba-news__people_list",
      "mcp__baba-news__threads_list",
      "mcp__baba-news__threads_get",
      "mcp__baba-news__trending_list",
      "mcp__baba-news__blindspots_list",
      "mcp__baba-news__changes_list",
      "mcp__baba-news__topics_list",
      "mcp__baba-news__people_get"
    ],
    "ask": [
      "mcp__baba-news__stories_members",
      "mcp__baba-news__sources_activity"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as baba-news. Review it before you use it.