Skip to main content
Glama
Jarvis News MCP

Jarvis News MCP

by soothill

Jarvis News MCP

BBC NewsとSky Newsの公式RSSフィードから、Jarvisに最新の出典付きニュースブリーフィングを提供するローカルModel Context Protocolサーバー。

このサーバーはAPIキーを必要としません。Jarvisがツールを呼び出したときだけ発行元のRSSデータを取得し、重複するフィードエントリを除去し、類似するBBC/Skyの報道をグループ化し、新しさ、フィード内の掲載順位、公共への影響度を示す用語、複数発行元での報道状況を用いて記事をランク付けします。

Jarvisが呼び出せるもの

ツール

目的

get_news_summary

一方または両方の発行元にわたるランク付けされたブリーフィングを返す。

search_news

人物、場所、組織、または出来事に関する最近のニュースを見つける。

list_news_feeds

設定されているすべての公式フィードとカテゴリを表示する。

結果には、読みやすいMarkdownに加えて構造化されたJSONも含まれます。各記事には発行元、タイムスタンプ、直接リンクが保持されます。1つのフィードが停止しても、他のフィードは返され、応答には警告が含まれます。

Related MCP server: MCP News Server

インストール

要件: Node.js 20以上。

git clone https://github.com/soothill/news-mcp.git
cd news-mcp
npm ci
npm run build

ビルドされたサーバーのエントリポイントはdist/index.jsです。Jarvisが引き続き起動できるよう、プロジェクトフォルダは恒久的な場所に置いてください。

Jarvisに接続する

Jarvisが一般的なmcpServers設定形式に対応している場合は、このエントリをMCP設定に追加してください:

{
  "mcpServers": {
    "news": {
      "command": "node",
      "args": ["/absolute/path/to/News Feed/dist/index.js"]
    }
  }
}

パスは、このプロジェクトのビルド済みdist/index.jsへの絶対パスに置き換えてください。macOSまたはLinuxでプロジェクトディレクトリ内でpwdを実行すると、そのパスのプロジェクト部分を確認できます。編集可能なバージョンはjarvis.mcp.example.jsonにあります。設定を変更したらJarvisを再起動してください。

このサーバーは標準入出力を介したMCPを使用します。これは、サーバーを子プロセスとして起動するローカルアシスタント向けです。標準出力はMCPメッセージ用に予約されているため、通常の出力は意図的に書き出しません。

Jarvisへのリクエスト例:

  • 「過去12時間で最も重要なBBCとSkyの記事を5つ教えて。」

  • 「今日の英国政治では何が起きましたか?両方のソースを確認してください。」

  • 「BBCとSkyのテクノロジーニュースの過去3日間で量子コンピューティングを検索して。」

  • 「フィードを更新して、ソースリンク付きの簡潔な朝のブリーフィングを提供して。」

最良の一般的なブリーフィングを得るには、Jarvisは両方のソースとtopカテゴリを指定してget_news_summaryを呼び出す必要があります。より幅広い調査の場合は、1回の呼び出しで複数のカテゴリをリクエストできます。

既存のインストールを更新する

プロジェクトディレクトリから:

git pull --ff-only
npm ci
npm run build

その後Jarvisを再起動して、新しいビルドを起動させてください。

ツールの入力

get_news_summaryは以下を受け付けます:

  • sources: bbc、sky、またはその両方。デフォルトは両方。

  • categories: top、uk、world、us、business、politics、technology、science、health、entertainmentのうち1つ以上。デフォルトはtop。

  • lookbackHours: 1〜168。デフォルトは24。

  • maxStories: 1〜30。デフォルトは10。

  • refresh: 短時間のインメモリキャッシュをバイパスする。デフォルトはfalse。

search_newsは同じ入力に加えて必須のqueryを受け付けます。

Skyは現在、設定済みのscienceまたはhealthのRSSフィードを公開していません。これらの組み合わせのリクエストは、BBCの結果に加えて明確な警告を返します。

ランタイム設定

オプションの環境変数:

変数

デフォルト

許容範囲

意味

NEWS_CACHE_TTL_SECONDS

180

0〜3600

フィードごとのインメモリキャッシュの有効期間。

NEWS_HTTP_TIMEOUT_MS

10000

1000〜30000

各発行元へのリクエストのタイムアウト。

NEWS_USER_AGENT

JarvisNewsMCP/1.0...

—

フィードに送信されるHTTP User-Agent。

開発とチェック

npm run check
npm test
npm run test:live

test:liveは実際のBBCとSkyのトップニュースフィードに接続し、現在の記事を5件表示します。他のすべてのテストは決定的で、インターネットを必要としません。

トラブルシューティング

  • Jarvisがサーバーを起動できない場合、node --versionが20以上を返すことと、MCP設定内のパスが絶対パスであることを確認してください。

  • dist/index.jsがない場合は、npm ciを実行してからnpm run buildを実行してください。

  • ブリーフィングにフィードの警告が含まれる場合は、refresh: trueを指定して再試行してください。サーバーは別のフィードが利用できない場合でも正常なフィードを返します。

  • npm run test:liveを実行して、このマシンが両方の発行元に到達できるか確認してください。

  • MCPトランスポートは標準入出力を使用します。node dist/index.jsを直接起動しても何も起こらないように見えますが、これはMCPクライアントを待機しているためです。これは想定どおりです。

「重要度」の推定方法

サーバーはそのランク付けについて透明性を持っています。記事は、新しいほど、発行元のフィードの上位に表示されるほど、トップニュースフィードに掲載されるほど、公共への大きな影響に関連する用語を含むほど、または両方の発行元で独立に報道されているほど、上位に移動します。これは自動化された関連性の推定であり、編集上または事実上の判定ではありません。

返される要約テキストは、発行元が提供するRSSメタデータの短くクリーンなバージョンです。Jarvisはそれらの出典付きの結果をより会話的なブリーフィングに変換できますが、返された記事に存在しない詳細を作り出してはいけません。フィードのテキストは信頼できないデータとして扱われ、サーバーによって指示として解釈されることは決してありません。

データと発行元の利用規約

このプロジェクトは公式の発行元RSSエンドポイントを使用し、出典とリンクを保持します。結果のブリーフィングを個人利用以外で再配布または公開する前に、現在のBBCとSkyのフィード利用規約を確認してください。記事ページ、画像、Cookie、ユーザーデータは一切スクレイピングまたは保存されません。

Available Tools

3 tools
get_news_summaryGet BBC and Sky news summaryA
Read-onlyIdempotent

Fetch and rank important recent events from official BBC News and Sky News RSS feeds. Returns short publisher-supplied summaries, links, timestamps, source corroboration, and partial-feed warnings.

NameRequiredDescriptionDefault
refreshNoBypass the short feed cache when true.
sourcesNoPublishers to include. Use both for corroboration.
categoriesNoNews sections to scan. 'top' is the best default briefing.
maxStoriesNoMaximum number of ranked story clusters to return.
lookbackHoursNoOnly include stories from this many hours ago.

Output Schema

NameRequiredDescription
storiesYes
warningsYes
storyCountYes
generatedAtYes
articleCountYes
lookbackHoursYes
requestedSourcesYes
requestedCategoriesYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral detail: it ranks events, relies on publisher-supplied summaries, provides source corroboration, and may return partial-feed warnings. This goes beyond the structured hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no fluff. The core action is front-loaded, and the return payload is listed concisely. Every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the rich input schema, full parameter descriptions, an output schema, and a complete set of safety annotations, the description covers the essential behaviors including rankings, source corroboration, and partial-feed warnings. Nothing critical is missing for a correct call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameters are fully self-documenting. The description does not add significant meaning beyond the schema; it only mentions corroboration and ranking, which loosely relate to the sources and maxStories parameters. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Fetch and rank') and a clear resource ('important recent events from official BBC News and Sky News RSS feeds'). It also states what is returned, which distinguishes it from siblings like search_news and list_news_feeds.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is for getting ranked news summaries from BBC and Sky, but it does not explicitly contrast with search_news or list_news_feeds. There is no when-to-use or when-not-to-use guidance, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_news_feedsList configured news feedsA
Read-onlyIdempotent

List the official BBC News and Sky News RSS endpoints and categories this server can query.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
feedsYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the operation read-only, idempotent, and non-destructive, so the description carries less burden. It adds useful context by specifying the feeds are official BBC/Sky News endpoints and that the list is limited to what 'this server can query,' but does not describe other behaviors such as output format or ordering.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no redundant wording. It states the action and scope immediately and earns its place without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter, read-only listing tool with an output schema and comprehensive annotations, the description is complete. It tells the agent exactly what the tool returns and is sufficient to invoke correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the input schema carries no semantics to clarify. The description provides the relevant context about what will be listed, making parameter documentation unnecessary. A baseline of 4 is appropriate for a zero-parameter tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List') and the exact resource ('official BBC News and Sky News RSS endpoints and categories this server can query'). This differentiates it from sibling tools like search_news and get_news_summary, which operate on news content rather than enumerating available feeds.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is the discovery mechanism for available endpoints and categories before querying news. However, it does not explicitly name sibling tools or state when to use this tool instead of them, so the guidance is clear but not fully spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_newsSearch BBC and Sky newsA
Read-onlyIdempotent

Search recent BBC News and Sky News RSS stories for a specific person, place, organisation, or event, then return ranked and attributed matches.

NameRequiredDescriptionDefault
queryYesPlain-text topic to find in headlines and descriptions.
refreshNoBypass the short feed cache when true.
sourcesNoPublishers to include. Use both for corroboration.
categoriesNoNews sections to scan. 'top' is the best default briefing.
maxStoriesNoMaximum number of ranked story clusters to return.
lookbackHoursNoOnly include stories from this many hours ago.

Output Schema

NameRequiredDescription
storiesYes
warningsYes
storyCountYes
generatedAtYes
articleCountYes
lookbackHoursYes
requestedSourcesYes
requestedCategoriesYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a read-only, idempotent, non-destructive operation. The description adds useful behavioral context beyond that: it searches recent RSS stories, returns 'ranked and attributed matches,' and covers multiple news sources. No contradictions with the annotations are present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence with no wasted words. It front-loads the core purpose, names the sources, describes the query type, and states the output nature all in one pass.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only search tool with a rich input schema, full parameter documentation, and an output schema present, this description is complete enough. It communicates the domain, freshness, output format, and ranking behavior, while the schema and annotations cover the remaining operational details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already fully documents every parameter, including defaults, constraints, and meanings. The description itself adds no parameter-level detail beyond implying topical search, but it doesn't need to because the schema carries that weight.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Search'), the resource ('BBC News and Sky News RSS stories'), and the intended use case ('for a specific person, place, organisation, or event'). It also describes the output as 'ranked and attributed matches,' making it distinct from the sibling tools, which seem to summarize feeds or list them rather than perform targeted searches.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use the tool: when you need recent news stories about a specific topic or entity. It doesn't explicitly mention the sibling tools or state when not to use them, but the phrasing implies a search-oriented use case that is different from listing or summarizing feeds.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.0
    • First observedget_news_summary
    • First observedlist_news_feeds
    • First observedsearch_news

TDQS

A4.4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: fetching top stories, searching by query, and listing available feeds/categories. There is no realistic confusion between broad summaries, targeted search, or feed metadata.

Naming Consistency5/5

All tool names follow a consistent lowercase snake_case verb_noun pattern: get_news_summary, search_news, and list_news_feeds. The naming is predictable and easy to pattern-match.

Tool Count5/5

Three tools is well-scoped for a focused news RSS server. Each tool covers a distinct user need without redundancy or wasted surface area.

Completeness4/5

The core news workflows—listing available sources, getting a ranked summary, and searching stories—are covered. The main minor gap is that list_news_feeds advertises categories/endpoints but there is no explicit tool to fetch news from a specific category directly.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables searching news, fetching top headlines, listing sources, and generating tech briefings via NewsAPI, with an optional browser frontend.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Fetches news from trusted global sources using NewsAPI and RSS feeds, enabling search, headline retrieval, and source listing.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Enables news search and headline retrieval using NewsAPI. Supports getting top headlines by country and category, and searching articles across thousands of sources.
    2
    MIT