MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

J
Japanese Weather MCP

MCP server by tsukiyama85

Created 7/20/2025
Updated 3 days ago
Repository documentation and setup instructions

Japanese Weather MCP

日本の天気情報を提供するModel Context Protocol (MCP) サーバーのサンプルプログラムです。

🌟 特徴

  • 🌤️ 日本全国対応: 全国110都市の天気情報を提供
  • 🗣️ 自然言語対応: 地名の漢字・ひらがな・カタカナ入力に対応
  • 🤖 MCP準拠: Claude DesktopなどのMCPクライアントで使用可能
  • 🌐 HTTP対応: HTTPトランスポートでWeb経由でも利用可能
  • 🐳 Docker対応: 簡単なデプロイメント

🛠️ 技術スタック

  • FastMCP - MCPサーバーフレームワーク
  • Python 3.10+
  • uv - Python依存関係管理(推奨)
  • OpenMeteo API - 天気データソース
  • pandas(地名データ処理)
  • httpx(HTTP通信)

⚡ クイックスタート

# リポジトリをクローン
git clone https://github.com/tsukiyama85/japanese-weather-mcp.git
cd japanese-weather-mcp

# MCPサーバーを起動
docker compose build
docker compose up -d

# MCPクライアントを起動
uv sync
uv run -m examples.gemini_mcp_client

📦 インストール

1. リポジトリのクローン

git clone https://github.com/tsukiyama85/japanese-weather-mcp.git
cd japanese-weather-mcp

2. 依存関係のインストール

uv使用(推奨)

# 依存関係のインストール
uv sync

# 開発用依存関係も含む場合
uv sync --dev

pip使用

pip install -e .

3. 動作確認

uv使用

uv run -m src.japanese_weather_mcp.main

pip使用

python -m src.japanese_weather_mcp.main

Docker Composeを使用

docker-compose up --build

🚀 使用方法

Claude Desktopでの使用

Claude Desktopの設定ファイル(claude_desktop_config.json)に追加:

uv使用

{
  "mcpServers": {
    "japanese-weather": {
      "command": "uv",
      "args": ["run", "python", "-m", "src.japanese_weather_mcp.main"],
      "cwd": "/path/to/japanese-weather-mcp"
    }
  }
}

pip使用

{
  "mcpServers": {
    "japanese-weather": {
      "command": "python",
      "args": ["-m", "src.japanese_weather_mcp.main"],
      "cwd": "/path/to/japanese-weather-mcp"
    }
  }
}

HTTPサーバーとして実行

uv使用

uv run -m src.japanese_weather_mcp.main

pip使用

python -m src.japanese_weather_mcp.main

🔧 利用可能なツール

| ツール名 | 説明 | パラメータ | |---------|------|-----------| | get_weather | 天気予報を取得 | location: 地域名, days: 日数(1-7) | | get_current_weather | 現在の天気を取得 | location: 地域名 | | search_locations | 地域を検索 | query: 検索クエリ |

💬 使用例

Claude Desktopでの質問例

「東京の明日の天気は?」
「大阪の3日間の予報を教えて」
「札幌の現在の気温は?」

🤖 Gemini AIクライアントでの動作確認

examples/gemini_mcp_client.pyを使って、Gemini AIと連携した自然言語での動作確認ができます:

準備

  1. Google AI StudioでAPIキーを取得

    • https://makersuite.google.com/app/apikey
  2. 環境変数設定

cd examples
cp .env.example .env
# .envファイルにGEMINI_API_KEYを設定
  1. 依存関係インストール
# uvの場合
uv sync

# pipの場合
pip install -r examples/requirements.txt

実行手順

  1. MCPサーバーを起動(別ターミナル)
   # uvの場合
   uv run -m src.japanese_weather_mcp.main
   uv run -m examples.gemini_mcp_client
   # pipの場合
   python -m src.japanese_weather_mcp.main
   python -m examples.gemini_mcp_client

使用イメージ

💬 質問: 東京の今日の天気はどうですか?
🤖 回答: 東京の今日の天気は晴れで、気温は22℃です。湿度は65%、降水確率は10%となっています。

このクライアントは自然言語での質問を理解し、適切なMCPツールを自動選択して実行します。

🌍 対応地域

全国110都市に対応:

  • 北海道: 札幌、函館、旭川
  • 東北: 仙台、青森、盛岡 など
  • 関東: 東京、横浜、さいたま など
  • 中部: 名古屋、静岡、金沢 など
  • 関西: 大阪、京都、神戸 など
  • 中国・四国: 広島、岡山、高松 など
  • 九州・沖縄: 福岡、熊本、那覇 など

⚙️ 環境変数

| 変数名 | デフォルト値 | 説明 | |--------|-------------|------| | MCP_TRANSPORT | streamable-http | トランスポート方式 | | MCP_HOST | 127.0.0.1 | HTTPサーバーのホスト | | MCP_PORT | 8000 | HTTPサーバーのポート | | MCP_PATH | /mcp/ | HTTPエンドポイントパス | | LOG_LEVEL | INFO | ログレベル |

🤝 開発・貢献

examples フォルダについて

examples/ フォルダには開発・テスト用のクライアントが含まれています:

  • gemini_mcp_client.py - Gemini AIを使用したインテリジェントクライアント
  • .env.example - 環境変数のテンプレート

これらは参考実装として提供
本体のMCPサーバーとは独立しています。

📝 ライセンス

MIT License

🙏 謝辞

  • OpenMeteo - 無料の天気データAPI
  • FastMCP - MCPサーバーフレームワーク
Quick Setup
Installation guide for this server

Install Package (if required)

uvx japanese-weather-mcp

Cursor configuration (mcp.json)

{ "mcpServers": { "tsukiyama85-japanese-weather-mcp": { "command": "uvx", "args": [ "japanese-weather-mcp" ] } } }