概要
JAXA Earth API を MCPサーバとして接続し、衛星データ(降水量・海水温・クロロフィルなど)を Claude から自然言語で取得・可視化する環境を構築してみました。その過程で、一見JSONエラーに見えるが実際はデータ指定ミスや仕様差異だった(?)という状況に遭遇したため、調査内容・実際のやり取りを実施記録としてまとめます。
やろうとしたこと
- MCPサーバとして JAXA Earth API を接続
- Claude から自然言語で衛星データを取得
- 以下の分析を試みる
- 関東地方の降水量分析
- 鎌倉の海水温の年次比較・予測
- 相模湾クロロフィル量の可視化
お試し
1. 降水量データの取得
まずは、設定など参考にさせていただいたブログ(JAXAが公開したMCPサーバーを触ってみる)で記載されていた内容でそのまま試すと、あっさりできたので喜んでいました。
- GSMaP データを用いた降水量可視化に成功
- 空間統計グラフの生成も問題なし
- 東西で降水傾向の違いを確認できた
→ MCPサーバ + JAXA API の基本動作はとりあえずOK
2. 衛星データの API が使われないケース
わざわざ MCP を呼ばなくても答えられる場合は、ツールを使わずそのまま返してくれるみたいです。場所も指定し忘れていますが、まずは東京を調べてくれました。
3. 鎌倉の海水温度(五年分)比較と今年の温度予測
「JAXA Earth API の MCP サーバーが現在応答しない状態」と言われてしまいました。雲行きが怪しい。
ログを見るとタイムアウトが発生していました。
アカウント(選択)>Settings>Developerから確認できるLocal MCP Serversのステータスもfailedになっています。
何度か試すうちに、ちらっと出てすぐ消えるエラーメッセージがあることにも気づきました。
調査
1. pyproject.toml
はじめは、数日前にできていたがその日にできなくなったと思っていたので、何か依存関係か何かが変わったのかもしれないと思い、pyproject.tomlを確認。
- 依存パッケージ(例:mcp、fastmcp、pydantic、jaxa-earth など)
- ビルド設定(poetry / setuptools / hatch など)
- Pythonバージョン制約
- 開発ツール設定(formatter、linter 等)
特に問題なさそうでした。
MCPサーバ確認
次に、上記スクリーンショットの通り、以下のエラーが発生していたので、MCP サーバの実装不備・JSON 破損・stdout 汚染あたりを疑いました。
- Unexpected token
- No number after minus sign
- Unexpected end of JSON input
直接起動して確認してみます。
python mcp_server.py
何も出力されない → stdout に余計なものが出ていないことを確認。MCP 自体は正常に起動していました。
3. Python単体での動作確認
MCP を介さず直接関数を実行して切り分けてみます。
DEBUG_DIRECT=1 python mcp_server_debug.py 2> debug.log
ログにこんなエラーが出ていました。
cat debug.log
ここで以下のエラーを確認:
Error! Requested collection name was not found !
requested : JAXA.G-Portal_GSMaP.v6_operational_half_monthly_global
collection ID が存在しないことが判明。
4. catalogの確認
正しい ID を確認するためカタログを取得しました。
curl -L https://data.earth.jaxa.jp/app/mcp/catalog.md -o catalog.md
見てみたところ、LLM が推測で生成した ID だったようです。
対処
collection ID が誤っていたので、配布されている mcp_server.py をいじってデバッグしてみたり、設定ファイル(JSON)に connectionTimeout を追加してみたり(効果なし)、しましたが、同じ条件ではどうにもならず、

根本的な解決ではないですが、以下を調整することで通るようになりました。
日付範囲を狭くする(5 年 → 1 年、月も指定する)
場所の指定を適度な広さにする(bbox が狭すぎると NaN が返ってきたりした)
ここで先ほどの右上のエラー(Unexpected token/No number after minus signなど)が出るものの先に進み


無事出力できました。6月に入っても予測では暖かそうですが、こんなに毎年上昇しているものでしょうか?やはりもう少し広い範囲で予測してみたいものです。
(余談)青い線が気になり質問してみると、
だいぶ雑な予測ですね...最高水温32°にはなっていないと思うので、1点のみで推移を予測するのは避けた方が良さそうです。
感想
- ChatGPTに相談しても、いろいろな力が及ばず完全な解決には至りませんでした...
- 遊びで試しただけなので 5 年でも 1 か月でも今回はどちらでも良かったですが、いつかとても困った際は...より真剣に調査してみます。
- 日常的に観測データを使う場面は今のところあまりなさそうですが、簡単に試せるのは楽しかったです。他業者とのサービスと組み合わせるのも面白そう。








