mcpField
M
MeteoSwiss MCP Server

MeteoSwiss MCP Server

リモート
github.com/eins78地図・旅行41 週間前に更新
リポジトリ

MeteoSwiss MCP Server について

MeteoSwiss MCP Server は、MeteoSwiss Open Data の天気・気候情報を AI アシスタントに提供します。スイス各地の予報と観測に加え、観測地点の検索、花粉情報、気候系列、公式サイト検索に対応しています。

主な機能

  1. 01スイス各地の複数日予報
  2. 02気象観測所のリアルタイム測定値
  3. 03名称、州、座標による観測所検索
  4. 04花粉情報と過去の気候データの取得
  5. 05MeteoSwiss サイトの検索とコンテンツ取得

活用シーン

  1. 01スイスの町や郵便番号から予報を確認
  2. 02観測所の風速や気温などの最新値を確認
  3. 03花粉測定値や長期気候系列を検索
  4. 04MeteoSwiss のページを検索して内容を取得

MCP 対応

MeteoSwiss の予報、測定値、観測所検索、花粉・気候データ、サイト検索と取得を MCP ツールとして公開します。ホスト型サービスは `https://meteoswiss-mcp.ars.is/mcp` で利用でき、セルフホストも可能です。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://meteoswiss-mcp.ars.is/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

パッケージ
npmmeteoswiss-mcp2.0.2

ツール

7
パラメーター型必須説明
pageintegerいいえページネーションのページ番号(1 始まり)。上流 API は常に 1 ページあたり 10 件の結果を返します。ページサイズは設定できません。
sortenumいいえ結果の並び順。注:date-asc は関連性を大幅に低下させます。クエリとの一致度よりもページの古さが結果に強く反映されます。relevance | date-desc | date-asc
querystringはい検索クエリ文字列
languageenumいいえ検索結果の言語de | fr | it | en
contentTypeenumいいえコンテンツタイプで絞り込みます。デフォルトは "content" で、アプリケーションページを除外します。公式レポートには "publication" を使用してください。content | press-release | blog-article | publication

詳細

🌦️ MeteoSwiss MCP サーバー

npm version License: CC0-1.0 Node.js >= 22 Cursor Directory

MeteoSwiss の気象データを利用する MCP サーバーです。MeteoSwiss Open Data を活用しており、MeteoSwiss のアプリやウェブサイトと同じデータを提供します。

このパッケージは、リポジトリの スキルと MCP の比較事例 における サーバー 側です。同じデータは、インフラ不要の エージェントスキル としても利用できます。

meteoswiss-mcp.ars.is — セットアップ不要ですぐにお試しいただけます。

  • 複数日間の予報:スイス国内約 6,000 か所(郵便番号、観測所、地名)
  • リアルタイム観測値:約 300 か所の観測所(総合的な気象観測約 160 か所+降水量のみの観測約 140 か所)。10 分ごとに更新
  • 観測所の検索:名称、州、GPS 座標で検索
  • 花粉モニタリング:スイス全土約 15 か所の観測所
  • 気候時系列データ:国立基本気候観測網(NBCN)のデータ。数十年前まで遡れます
  • MeteoSwiss ウェブサイト:検索とコンテンツの取得

ホスト型サービスを利用する

インストールは不要です。サーバーは https://meteoswiss-mcp.ars.is でホストされています。

Claude Code
claude mcp add meteoswiss https://meteoswiss-mcp.ars.is/mcp
Claude Desktop

設定ファイル(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します。

{
  "mcpServers": {
    "meteoswiss": {
      "command": "npx",
      "args": ["mcp-remote", "https://meteoswiss-mcp.ars.is/mcp"]
    }
  }
}
Cursor

Cursor Directory からインストールするか、Settings → MCP → Add Server から手動で追加し、https://meteoswiss-mcp.ars.is/mcp を貼り付けます。

Claude.ai

Settings → Integrations → Add MCP Server を開き、https://meteoswiss-mcp.ars.is/mcp を貼り付けます。

質問の例
  • 「今週のチューリッヒの天気予報は?」
  • 「明日のベルンの天気はどうですか?」
  • 「ジュネーブの天気は?」
  • 「ルガーノの天気は?」
  • 「今、ユングフラウヨッホではどれくらい風が強いですか?」
  • 「チューリッヒの花粉データを表示してください」

利用可能なツール

ツール説明
meteoswissLocalForecast郵便番号、観測所、地名を指定して、スイス国内の任意の場所の複数日間の予報を取得します
meteoswissCurrentWeather自動気象観測所のリアルタイム観測値(気温、風、湿度、気圧)を取得します
meteoswissStations名称、州、座標を使って MeteoSwiss の観測所ネットワークを検索・閲覧します
meteoswissPollenData観測所の現在の花粉濃度データを取得します
meteoswissClimateDataNBCN の気候時系列データ。気温、降水量、日照時間、気候指標を数十年前まで遡って取得できます
searchMeteoSwiss ウェブサイトのコンテンツを検索します(DE、FR、IT、EN)
fetchMeteoSwiss のページから、Markdown、テキスト、HTML 形式でコンテンツ全体を取得します

プロンプト

よく使われる気象情報の問い合わせ向けに、プロンプトがあらかじめ設定されています。

プロンプト言語説明
wetterNordschweizドイツ語スイス北部の予報と現在の天気
wetterSchweizドイツ語スイス国内の任意の場所の天気
meteoSuisseRomandeフランス語スイス西部の予報と現在の天気
meteoTicinoイタリア語スイス南部の予報と現在の天気

セルフホスティング

Docker
docker run -p 3000:3000 ghcr.io/eins78/meteoswiss-mcp:latest

カスタム URL を指定する場合:

docker run -p 3000:3000 -e PUBLIC_URL=https://your-domain.com ghcr.io/eins78/meteoswiss-mcp:latest
Docker Compose
docker compose up
ソースから実行する
git clone https://github.com/eins78/meteoswiss-llm-tools.git
cd meteoswiss-llm-tools/packages/meteoswiss-mcp
pnpm install
pnpm build
pnpm start

サーバーは http://localhost:3000 で利用できます。MCP エンドポイント:http://localhost:3000/mcp。

ローカル MCP 設定
{
  "mcpServers": {
    "meteoswiss-local": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:3000/mcp"]
    }
  }
}

環境変数

変数デフォルト説明
PORT3000サーバーのポート
PUBLIC_URL—URL 生成に使用する公開 URL 全体(例:https://meteoswiss-mcp.ars.is)
USE_TEST_FIXTURESfalseライブ API の代わりにローカルのテストデータを使用します
BIND_ADDRESS0.0.0.0バインドするインターフェース
MAX_SESSIONS100同時セッションの最大数
MAX_SESSIONS_PER_CLIENT10クライアント IP(TRUST_PROXY 経由で確認)あたりの同時セッションの最大数。以降の初期化リクエストには 429 が返されます
SESSION_TIMEOUT_MS300000セッションのタイムアウト時間(ミリ秒)
TRUST_PROXY0クライアント IP(X-Forwarded-For)について信頼するリバースプロキシのホップ数。Caddy などのプロキシ 1 台の背後に配置する場合は 1 に設定します。クライアントがサーバーに直接接続する場合は 0 のままにしてください。そうしないと、クライアントが IP を偽装してレート制限を回避できる可能性があります
DEBUG—デバッグ用の名前空間(例:mcp:*)

開発

前提条件
  • Node.js v22 以降(nvm を推奨)
  • pnpm
セットアップ
nvm use
pnpm install
コマンド
コマンド説明
pnpm devホットリロードを有効にして起動します
pnpm startサーバーを起動します
pnpm buildTypeScript をビルドします
pnpm testテストを実行します
pnpm run lint型チェックと ESLint を実行します
pnpm run fixlint エラーを自動修正します
pnpm run ciCI 全体(lint + build + test)を実行します
pnpm run dev:inspectMCP Inspector でテストします
プロジェクト構成
src/
  index.ts              # Entry point
  server.ts             # MCP server (factory pattern)
  data/                 # Data access and transformation
  schemas/              # Zod schemas for validation
  tools/                # MCP tool implementations
  support/              # Logging, validation, HTTP, sessions
  views/homepage/       # Server homepage content
test/
  integration/          # Integration tests for all tools
  __fixtures__/         # Test data
デバッグ

DEBUG 環境変数を使用して、デバッグ出力を有効にします。

DEBUG=mcp:* pnpm dev          # All debug output
DEBUG=mcp:tools pnpm dev      # Tool execution only
DEBUG=mcp:transport pnpm dev  # Transport layer only

詳しくは、docs/debugging-guide.md を参照してください。

コントリビューション

コントリビューションを歓迎します。コミット前に pnpm run fix && pnpm run ci を実行してください。

リリース手順については、docs/releasing.md を参照してください。

ライセンス

CC0-1.0 — パブリックドメイン

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。