World News Api Mcp について
World News API MCP Serverは、World News APIの検索・抽出機能をAIアシスタントやMCPクライアントに提供します。トップニュース、新聞の一面、ソース検索に加え、記事内容の分析も行えます。
主な機能
- 01テキスト、日付、場所などでニュース検索
- 02各国のトップニュースと新聞の一面を取得
- 03記事とウェブサイト上のニュースリンクを抽出
- 04ニュースソースと位置座標を検索
- 05エンティティと感情を分析
活用シーン
- 01地域やカテゴリ別のニュース追跡
- 02ニュース記事の抽出と内容分析
- 03新聞の一面や監視対象ソースの検索
MCP 対応
MCP サーバーとして、MCP クライアントに World News API のニュース検索、トップニュース、記事抽出、ソース検索、内容分析のツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
World News API MCP Server
World News APIへのアクセスを提供するModel Context Protocol(MCP)サーバーです。このサーバーを使うと、AI アシスタントはMCPプロトコルを通じて、ニュースの検索、トップニュースの取得、記事の抽出、新聞の一面の取得などを行えます。
特長
- ニュース検索:テキスト、日付、場所、カテゴリ、言語などでニュースを検索、絞り込みます
- トップニュース:あらゆる国のニュースを、あらゆる言語で取得します
- 新聞の一面:世界各地の新聞の一面を取得します
- 記事の抽出:ニュースURLから記事全体を抽出します
- ニュースリンクの検出:ウェブサイトからニュースリンクを抽出します
- ソース検索:監視対象のニュースソースを検索します
- 場所の座標:場所による絞り込みに使う地理座標を取得します
- コンテンツ分析:エンティティの抽出、センチメントの検出などを行います
クイックスタート
インストール
npm install -g world-news-api-mcp
セットアップ
-
World News APIキーを取得します(https://worldnewsapi.com/register から無料で取得できます)
-
APIキーを環境変数として設定します:
# Windows (PowerShell) $env:WORLD_NEWS_API_KEY="your_api_key_here" # macOS/Linux export WORLD_NEWS_API_KEY="your_api_key_here"
MCP クライアントでの使用方法
この設定をMCP クライアント(Claude Desktopなど)に追加します:
{
"servers": {
"world-news-api": {
"command": "world-news-api-mcp",
"env": {
"WORLD_NEWS_API_KEY": "your_api_key_here"
}
}
}
}
インストールのテスト
# Set your API key
export WORLD_NEWS_API_KEY="your_key_here"
# Test the server
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | world-news-api-mcp
利用可能なツール
search_news
テキスト、日付、場所、カテゴリ、言語などでニュースを検索、絞り込みます。
パラメーター:
text(string、任意):ニュースコンテンツ内で一致させるテキスト(3文字以上)source-country(string、任意):ISO 3166の国コード(例:"us"、"gb")language(string、任意):ISO 6391の言語コード(例:"en"、"es")min-sentiment/max-sentiment(number、任意):センチメントの範囲 [-1,1]earliest-publish-date/latest-publish-date(string、任意):日付の範囲(YYYY-MM-DD HH:MM:SS)news-sources(string、任意):カンマ区切りのソース一覧authors(string、任意):カンマ区切りの著者一覧categories(string、任意):カテゴリ(politics、sports、business、technologyなど)entities(string、任意):エンティティで絞り込み(ORG:Tesla、PER:Elon Musk)location-filter(string、任意):"latitude,longitude,radius_km"sort(string、任意):並べ替え基準(publish-time)sort-direction(string、任意):ASCまたはDESCoffset(number、任意):スキップする結果の数number(number、任意):返す結果の数(1~100、デフォルト:10)
get_top_news
特定の日付について、ある国のトップニュースを指定した言語で取得します。
パラメーター:
source-country(string、必須):ISO 3166の国コードlanguage(string、必須):ISO 6391の言語コードdate(string、任意):日付(YYYY-MM-DD)。デフォルトは当日ですheadlines-only(boolean、任意):基本情報のみを返します(デフォルト:false)
retrieve_newspaper_front_page
世界各地の新聞の一面を取得します。
パラメーター:
source-country(string、任意):ISO 3166の国コードsource-name(string、任意):出版物の識別子(例:"herald-sun")date(string、任意):日付(YYYY-MM-DD)。最も古い日付:2024-07-09
retrieve_news_articles
ニュースIDを指定して、特定の記事の詳細情報を取得します。
パラメーター:
ids(string、必須):カンマ区切りのニュースID一覧
extract_news
ウェブサイトからニュース記事を抽出し、構造化されたJSONオブジェクトに変換します。
パラメーター:
url(string、必須):ニュース記事のURLanalyze(boolean、任意):コンテンツを分析します(エンティティ、センチメントなど)
extract_news_links
ニュースサイトからニュースリンクを抽出します。
パラメーター:
url(文字列、必須):ニュースサイトの URLanalyze(ブール値、任意):抽出したコンテンツを分析します
search_news_sources
ニュースソースが World News API によって監視されているかどうかを検索します。
パラメーター:
name(文字列、必須):ソース名の(一部)
get_geo_coordinates
位置フィルターで使用する場所の緯度と経度を取得します。
パラメーター:
location(文字列、必須):住所または場所の名前
使用例
AI に関する最近のニュースを検索する
{
"name": "search_news",
"arguments": {
"text": "artificial intelligence",
"language": "en",
"categories": "technology",
"number": 5
}
}
米国のトップニュースを取得する
{
"name": "get_top_news",
"arguments": {
"source-country": "us",
"language": "en"
}
}
URL から記事を抽出する
{
"name": "extract_news",
"arguments": {
"url": "https://www.bbc.com/news/world-us-canada-59340789",
"analyze": true
}
}
場所の近くのニュースを検索する
{
"name": "search_news",
"arguments": {
"text": "earthquake",
"location-filter": "35.6762,139.6503,50",
"language": "en"
}
}
開発
開発モードで実行するには:
npm run dev
ビルドするには:
npm run build
テストするには:
npm test
API のレート制限
World News API のレート制限は、契約プランによって異なります。
- 無料プラン:1 日あたり 150 リクエスト
- 有料プラン:より高い上限を利用できます
詳細については、World News API の料金をご確認ください。
エラー処理
このサーバーは、一般的な API エラーを処理します。
- 401 Unauthorized:API キーが無効です
- 402 Payment Required:API の割り当て量を超過しています
- 429 Too Many Requests:レート制限を超過しています
ライセンス
ISC
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
関連項目
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。