mcpField
P
Pondlog Mushroom Observer

Pondlog Mushroom Observer

ローカル
github.com/andrewschristison科学・教育03 週間前に更新

Pondlog Mushroom Observer について

Pondlog Mushroom Observerは、菌類データを扱う人向けのMCPサーバーです。Mushroom Observerの観察記録、菌類の分類、地域別の情報を提供し、APIキーなしで利用できます。

主な機能

  1. 01Mushroom Observer記録の検索
  2. 02菌類の分類情報の調査
  3. 03地域別の菌類データの発見
  4. 04APIキー不要

活用シーン

  1. 01地域内の菌類観察記録の検索
  2. 02菌類の分類と関連記録の確認
  3. 03AIエージェントによるMushroom Observerデータの検索

MCP 対応

MCPクライアントに、菌類学を中心とするMushroom Observerのツールを5つ提供します。APIキーなしで実行できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"andrewschristison-pondlog-mushroomobserver": {
"command": "npx",
"args": [
"-y",
"@pondlog/mcp-mushroomobserver"
]
}
}
}
起動コマンドnpx -y @pondlog/mcp-mushroomobserver

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@pondlog/mcp-mushroomobserver0.1.5

ツール

5

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
latnumberいいえWGS84 の緯度(十進度)。範囲は -90~90 です。例:ワシントン州ポートエンジェルスは 48.118。
lngnumberいいえWGS84 経度(10 進表記)、-180~180。例:Port Angeles, WA の場合は -123.4307。
namestringいいえ共通の分類群名で絞り込みます(MO の学名インデックスに対する部分文字列一致)。例:「Amanita」、「Cantharellus formosus」、「Boletales」。
pageintegerいいえ1 から始まるページ番号です。MO は 1 ページあたり約 100 件を返します。デフォルトは 1 です。
detailenumいいえ詳細レベルです。'low'(デフォルト)はフラットな ID を返します(1 レコードあたり約 1KB)。'high' は場所/共通判定/所有者/画像のネストされたオブジェクトを返します(1 レコードあたり約 3~4KB)。'high' は必要な場合のみ使用してください。low | high
regionstringいいえMushroom Observer の地域サフィックス文字列です。MO では、国名で終わるカンマ区切りの場所名として地理情報を扱います(例:「Clallam Co., Washington, USA」、「Marin Co., California, USA」、「Sussex, England, UK」)。フィルターはサフィックス一致です。必要な範囲のうち最も具体的な末尾を指定してください。より広いサフィックスは、より多くの場所に一致します。まず `search_regions` を使って、適切な形式のサフィックスを探してください。
date_tostringいいえ観察日の上限(含む)です。形式は YYYY-MM-DD。例:「2025-12-01」。
date_fromstringいいえ観察日の下限(含む)です。形式は YYYY-MM-DD。例:「2025-09-01」。
radius_kmnumberいいえ検索半径(キロメートル単位)です。最大値は 500、デフォルトは 25 です。Mushroom Observer の記録は、太平洋岸北西部、北カリフォルニア、米国北東部、西ヨーロッパに最も集中しています。記録が少ない地域では、範囲を広げるために 50~100 km を指定してください。
has_imagesbooleanいいえtrue の場合、写真が 1 枚以上ある観察記録のみを返します。画像による同定ワークフローに便利です。
confidence_minnumberいいえ投票で重み付けされた ID 信頼度の最小値です(範囲:[-3..3])。MO の観察記録には、菌類学の専門家と市民科学者の投票を集計した共通判定の信頼度が付与されています。不確かな ID を除外するには 1.0 以上が妥当な基準です。2.0 以上は強い合意を示し、負の値は共通名に異論があることを示します。
include_subtaxabooleanいいえtrue の場合、検索名の下位分類群の観察記録も含めます(例:属内の全種)。デフォルトは false です。

詳細

pondlog

開発者向けの場所に基づく自然データです。今、この座標で自然界では何が起きているでしょうか?

pondlog は、無料の公開 API(iNaturalist、eBird、USA-NPN、USGS、Mushroom Observer)に、ローカルでの天文計算 (astronomy-engine)と NOAA の潮汐・雲量データを組み合わせ、2 つのインターフェースを備えたデータレイヤーを提供します。

  • 人向けの CLI(pondlog inat nearby --lat 48.118 --lng -123.43)
  • AI エージェント(Claude Desktop、Cursor)向けのソースごとの MCP サーバー

Andrew Christison によるプロジェクトです。

内容

8 つのデータソース。7 つの MCP サーバー。1 つの統合 CLI。USDA 耐寒性ゾーンとコンパニオンプランティングのグラフを備えた、約 1000 種の作物に対応するガーデンプランナーです。

パッケージnpm機能
pondlognpm統合 CLI
@pondlog/corenpm共通型、Result<T>、レートリミッター、USDA ゾーン、作物カレンダー、コンパニオンプランツ
@pondlog/source-inaturalistnpmiNaturalist API クライアント
@pondlog/source-ebirdnpmeBird API クライアント(21 個のエンドポイント)
@pondlog/source-npnnpmUSA-NPN フェノロジークライアント
@pondlog/source-usgsnpmUSGS Water Services クライアント
@pondlog/source-nightskynpmローカルの夜空ブリーフィング(astronomy-engine)
@pondlog/source-mushroomobservernpmMushroom Observer(菌類学)クライアント
@pondlog/source-treflenpmTrefle.io 植物分類クライアント
@pondlog/mcp-inaturalistnpmiNaturalist MCP サーバー(9 個のツール)
@pondlog/mcp-ebirdnpmeBird MCP サーバー(21 個のツール)
@pondlog/mcp-npnnpmNPN MCP サーバー(8 個のツール)
@pondlog/mcp-usgsnpmUSGS MCP サーバー(4 個のツール)
@pondlog/mcp-mushroomobservernpmMushroom Observer MCP サーバー(5 個のツール、菌類学を重視)
@pondlog/mcp-gardennpmガーデンプランニング MCP サーバー(8 個のツール、カレンダー+ゾーン+コンパニオンプランツ+Trefle)
@pondlog/mcp-pondlognpm集約 MCP サーバー(5 個のツール、8 つすべてのデータソース)

ステータス

ソースライブラリCLIMCP
iNaturalist✅✅✅
eBird✅✅✅
NPN(フェノロジー)✅✅✅
USGS(水質)✅✅✅
Mushroom Observer(菌類学)✅✅✅
Garden(USDA ゾーン+約5,000作物のカレンダー+コンパニオンプランツ+Trefle)✅✅✅
夜空(astronomy-engine)✅✅✅(mcp-pondlog 経由)
集約(pondlog today / mcp-pondlog)該当なし✅✅

クイックスタート

AI エージェントとして(MCP)

Claude Desktop の設定に追加します (macOS では ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "pondlog-inaturalist": {
      "command": "npx",
      "args": ["-y", "@pondlog/mcp-inaturalist"]
    }
  }
}

次のように Claude に尋ねます:

過去1週間に、WA州ポートエンジェルス付近で目撃された両生類はいますか?

同じ JSON は、Cursor の ~/.cursor/mcp.json でも使用できます。任意の MCP サーバーを1つのコマンドで実行できます:

npx -y @pondlog/mcp-inaturalist          # no key
npx -y @pondlog/mcp-garden               # offline garden tools
EBIRD_API_KEY=... npx -y @pondlog/mcp-ebird
npx -y @pondlog/mcp-pondlog              # aggregate of all eight sources
人間として(CLI)
npm install -g pondlog
pondlog config set-location --lat 48.118 --lng -123.4307 --name "Port Angeles"
pondlog today                          # unified briefing
pondlog inat nearby
pondlog ebird notable
pondlog npn active
pondlog usgs flow --site 12045500
pondlog nightsky                       # tonight's curated briefing
pondlog garden now                     # what to plant this week

すべてのコマンドで、機械処理用の出力に --json を使用できます。

アーキテクチャ

                          ┌─────────────────────────┐
                          │      @pondlog/core      │
                          │  types, Result<T>,      │
                          │  RateLimiter, withRetry,│
                          │  USDA zones, crops,     │
                          │  companion graph        │
                          └────────────┬────────────┘
                                       │
        ┌──────────┬──────────┬────────┼─────────┬──────────┬──────────┐
        ▼          ▼          ▼        ▼         ▼          ▼          ▼
 source-inat  source-ebird  source-npn  source-usgs  source-mo  source-trefle  source-nightsky
        │          │          │        │         │          │          │
        └──────────┴──────────┴────────┼─────────┴──────────┴──────────┘
                                       │
                  ┌────────────────────┴────────────────────┐
                  ▼                                         ▼
            pondlog (CLI)                       7 × @pondlog/mcp-* servers
            ├─ pondlog today (aggregate)         ├─ mcp-inaturalist
            ├─ pondlog inat/ebird/...             ├─ mcp-ebird
            └─ pondlog garden/nightsky            ├─ mcp-npn / mcp-usgs
                                                  ├─ mcp-mushroomobserver
                                                  ├─ mcp-garden
                                                  └─ mcp-pondlog  ◀── aggregate

ソースクライアントがすべての処理(Zod による検証、レート制限、再試行、正規化)を行います。CLI と MCP サーバーは、その薄いラッパーです。

設計原則

  • データレイヤーは1つ、インターフェースは2つ。 各ソースは型付きライブラリです(Zod による検証、レート制限を備え、Result<T> を返します)。CLI と MCP サーバーは薄いラッパーです。そこにビジネスロジックはありません。
  • 障害があっても適切に処理します。 ソースが停止している場合でも、集約処理は他に正常に動作したソースの結果を返し、エラーも結果に含めて報告します。
  • レート制限を遵守します。 各クライアントが自身のリクエストを調整します。呼び出し元を信用してはいけません。
  • 不要なキーは求めません。 iNaturalist、NPN、USGS、Mushroom Observer、夜空のソースはすべてキーなしで動作します。無料キーが必要なのは eBird と Trefle だけです。
  • データが外部にない場合はローカルで計算します。 天文学は純粋な数学です。@pondlog/source-nightsky はネットワーク呼び出しも、レート制限も、障害要因も一切ありません。庭のカレンダー、ゾーン、コンパニオンプランツのグラフは JSON に同梱されており、すべてオフラインで利用できます。

関連プロジェクト:CropGraph

CropGraph は、@pondlog/core と @pondlog/mcp-garden で使用されている約1,000作物の栽培カレンダー、USDA 耐寒性ゾーン、コンパニオンプランツのグラフと同じデータを公開する姉妹 HTTP API です。任意の言語から HTTP 経由でデータを取得する場合は CropGraph をご利用ください。スキーマはこのリポジトリと常に同期されています。

コントリビュート

PR を歓迎します。ビルドには pnpm を使用します:

git clone https://github.com/andrewschristison/pondlog.git
cd pondlog
pnpm install
pnpm typecheck
pnpm build
pnpm test
pnpm smoke   # live tests against iNaturalist
作物カレンダー/コンパニオンプランツのデータ

作物カレンダー(packages/core/src/data/crop-calendar.json)とコンパニオングラフ(packages/core/src/data/companions.json)へのコミュニティからの PR を受け付けています。どちらにも、データとともに JSON Schema が用意されています:

  • packages/core/src/data/crop-calendar.schema.json
  • packages/core/src/data/companions.schema.json

作物のエントリーを追加する場合は、実在する普及機関(USDA、Cornell、WSU、Oregon State、UMass、UF/IFAS など)を引用する source をエントリーごとに記載してください。コンパニオンの関連を追加する場合は、evidence(strong または moderate)と citation URL を記載してください。Zod による検証はモジュールの読み込み時に実行されるため、不正な PR があると import "@pondlog/core" は直ちに失敗します。

コード

各パッケージは、docs/METHODOLOGY.md に記載されている厳格なパターンに従います。ソースクライアントは、それを使用する CLI コマンドや MCP ツールより先に提供されます。

ライセンス

MIT。詳細は LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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