mcpField
S
Smarter Weather

Smarter Weather

リモート
smarterweather.com地図・旅行11 日前に更新
リポジトリ公式サイト

Smarter Weather について

Smarter Weatherは、ローカルのMCPクライアントをSmarter Weatherのホスト型サービスにつなぐstdioからStreamable HTTPへのブリッジです。APIキーの解決とメッセージ転送を担い、天気ツールやスキーマはリモート側が提供します。

主な機能

  1. 01ホスト型天気MCPサービスへの接続
  2. 02環境変数または.envからキーを取得
  3. 03mcp-remoteのフラグを引き継ぎ
  4. 04MCPエンドポイントの変更

活用シーン

  1. 01Claude Desktopから天気ツールを呼び出す
  2. 02Cursorをリモート天気MCPに接続する
  3. 03ローカルMCPクライアント用のAPIキーを設定する

MCP 対応

stdioでMCPメッセージを受け取り、Smarter WeatherのStreamable HTTPエンドポイントへプロキシします。天気処理とツールスキーマはリモートMCPサーバー側にあります。

設定

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

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

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

パッケージ
npm@smarterweather/mcp-weather0.1.1

ツール

14
パラメーター型必須説明
fuzzybooleanいいえ部分入力やスペルミス入力向けの自動候補表示モードです。デフォルトは false(完全一致検索)です。
limitintegerいいえ返す候補の最大数(1~10)。デフォルトは 5 です。
querystringはい場所の検索語:都市、"city, state"、ZIP、部分テキスト、または有効な場合は施設/住所。
near_latnumberいいえこの地点の近くにある施設/住所を優先して並べます。near_lon と併用してください。
near_lonnumberいいえ

詳細

@smarterweather/mcp-weather

Smarter Weather のホスト型 MCP サーバー https://mcp.smarterweather.com 用の、stdio から Streamable HTTP へのブリッジです。Claude Desktop、Claude Code、Cursor、MCP Inspector などのローカル専用 MCP クライアントが、API キーを使ってネットワーク経由で sw-mcp に接続できるようにします。

Node.js 22 以降が必要です。

このパッケージは mcp-remote を薄くラップしたものです。天気関連のロジックは含まれておらず、プロトコルの実装をフォークしていません。すべてのツール、スキーマ、レート制限、使用量の計測は、サーバー側の sw-mcp にあります。

API キーを取得する

プロジェクトディレクトリで、次のいずれかを実行します。

# A human is present: device sign-in in the browser (free account, no card)
npx -y @smarterweather/mcp-onboarding@latest login

# No human present: mint a trial key you can claim into a free account later
npx -y @smarterweather/mcp-onboarding@latest trial

どちらも SMARTERWEATHER_API_KEY を ./.env(モード 0600、Git の追跡対象外)に書き込み、キーそのものではなく、キーのプレフィックスのみを表示します。

ブリッジは次の順にキーを解決します。

  1. プロセス環境内の SMARTERWEATHER_API_KEY
  2. SMARTERWEATHER_ENV_FILE で指定されたファイル
  3. 作業ディレクトリ内の .env(作業ディレクトリが / または $HOME の場合は読み込みません)

展開されていない ${…} プレースホルダーは未設定として扱われます。ブリッジはキーを Authorization:${SMARTERWEATHER_AUTH_HEADER} として mcp-remote に渡します。Bearer トークンは子プロセスの環境変数にのみ含まれ、argv には渡されません。

キーがなくてもブリッジは接続します。また、search_locations や search_catalog などの検索ツールは引き続き無料で利用できます。その他のツール呼び出しでは、login と trial を案内する next_steps を含む x402 の支払い要件(Base 上の USDC)が返されます。ブリッジ経由の OAuth サインインにはまだ対応していません。API キーを使用してください。

インストール

npx -y @smarterweather/mcp-weather --version

Claude Desktop

claude_desktop_config.json に追加します(macOS の場合:~/Library/Application Support/Claude/claude_desktop_config.json)。

{
  "mcpServers": {
    "smarterweather": {
      "command": "npx",
      "args": ["-y", "@smarterweather/mcp-weather"],
      "env": {
        "SMARTERWEATHER_ENV_FILE": "/absolute/path/to/your/project/.env"
      }
    }
  }
}

Claude Desktop は env プレースホルダーを展開しないため、login または trial が書き込んだ .env を絶対パスでブリッジに指定してください。このファイルにキーを貼り付けないでください。ブリッジは、プロキシ経由のすべてのリクエストに Authorization: Bearer <key> を付けて送信します。

Cursor

プロジェクトの .cursor/mcp.json で envFile を使用します(envFile には "type": "stdio" が必要です)。

{
  "mcpServers": {
    "smarterweather": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@smarterweather/mcp-weather"],
      "envFile": "${workspaceFolder}/.env"
    }
  }
}

または、プロセス環境から ${env:NAME} を使用します。

{
  "mcpServers": {
    "smarterweather": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@smarterweather/mcp-weather"],
      "env": {
        "SMARTERWEATHER_API_KEY": "${env:SMARTERWEATHER_API_KEY}"
      }
    }
  }
}

環境変数

変数用途デフォルト
SMARTERWEATHER_API_KEYAPI キーです。設定されている場合は優先されます。展開されていない ${…} は次の候補に進みます。未設定(次に SMARTERWEATHER_ENV_FILE、その次に .env)
SMARTERWEATHER_ENV_FILEプロセス環境のキーが未設定の場合に読み込む、.env の絶対パスです。未設定 → cwd/.env(/ または $HOME ではない場合)
SMARTERWEATHER_MCP_URL接続先の MCP エンドポイントを上書きします。位置引数の URL が指定されている場合は、そちらが優先されます。https://mcp.smarterweather.com

mcp-remote の任意のフラグは変更せずに引き継がれます。例:

  • --debug:~/.mcp-auth/{server_hash}_debug.log に詳細ログを出力します。
  • --transport http-only:Streamable HTTP を強制します(SSE へのフォールバックをスキップします)。
  • --header "X-Custom:value":ヘッダーを追加します。クロスプラットフォームで引数をエスケープする場合は、スペースなしの形式を使用してください。
"args": [
  "-y", "@smarterweather/mcp-weather",
  "--debug",
  "--transport", "http-only"
]

トラブルシューティング

  • ツール呼び出しで「Payment required」が返される:ブリッジがキーを見つけられませんでした。標準エラー出力には、確認した場所がすべて表示されます。プロジェクトディレクトリで login または trial を実行するか、SMARTERWEATHER_ENV_FILE に .env のパスを設定してから、MCP クライアントを再起動してください。
  • 「Incompatible auth server: does not support dynamic client registration」:サーバーがキーを拒否しました(不明、失効済み、または期限切れ)。ブリッジにはサインインへのフォールバックがありません。login または trial で新しいキーを作成し、クライアントを再起動してください。ブリッジはキーをそのまま渡します。
  • 「Connection error: fetch failed」:お使いのマシンからエンドポイントに到達できることを確認してください。curl -i https://mcp.smarterweather.com は、HTTP 405 と Method not allowed. Use POST. を返すはずです(エンドポイントは POST のみ受け付けます)。
  • Cursor にサーバーが表示されない:.cursor/mcp.json が有効な JSON であることを確認してから、Cursor を再起動してください。MCP パネルには、起動されたプロセスの標準エラー出力が記録されます。

仕組み

bin は小さな Node スクリプトです。URL(位置引数 → SMARTERWEATHER_MCP_URL → デフォルト)と API キー(上記を参照)を解決し、子プロセスの環境に SMARTERWEATHER_AUTH_HEADER を設定します。キーが見つかった場合は --header "Authorization:${SMARTERWEATHER_AUTH_HEADER}" を追加してから、mcp-remote の dist/proxy.js を spawn() します。mcp-remote は標準入出力経由で JSON-RPC を読み取り、各メッセージをホストされた Streamable HTTP エンドポイントにプロキシします。シグナル(SIGINT/SIGTERM/SIGHUP)は転送され、終了コードは引き継がれます。このラッパーは MCP トラフィックを変換したり検査したりしません。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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