Hybrid

inaturalist-mcp-server

Search iNaturalist sightings, identification threads, phenology, and look-alike species.

io.github.cyanheads/inaturalist-mcp-serverSource repository
Version0.3.2latest catalog version
ConnectionHybridstreamable-http · npm
PublishedNov 01, 2026catalog
UpdatedNov 01, 2026catalog
Overview

What this server provides

Search iNaturalist sightings, identification threads, phenology, and look-alike species.

Connect

Remote endpoints

1
Remote endpoint 1streamable-http
https://inaturalist.caseyjhand.com/mcp
Open endpoint
Install

Packages

2
Package 1npm
@cyanheads/inaturalist-mcp-server0.3.2
  • MCP_LOG_LEVEL

    Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

    Format: string · Default: info
    Optional
  • INATURALIST_CLAMP_LIMITS

    Clamp oversized read limits and radius (20,040 km), and defer oversized by-id batches. Set false to restore strict rejection, including radius above 500 km.

    Format: string · Default: true
    Optional
  • INATURALIST_USER_AGENT

    User-Agent sent on every request to api.inaturalist.org. Defaults to the package name, its version, and the repository URL. Keep a contact URL in any override — the published terms ask for identifiable clients.

    Format: string
    Optional
  • INATURALIST_MIN_REQUEST_INTERVAL_MS

    Minimum spacing between outbound request starts, in milliseconds. The default holds the sustained rate near 54 requests per minute, under the 60 the upstream asks for and well under its 100 ceiling.

    Format: number · Default: 1100
    Optional
  • INATURALIST_MAX_CONCURRENT_REQUESTS

    Maximum outbound requests in flight. Separate from the start interval: spacing bounds the sustained rate, this bounds the burst so one slow call does not stall the lane.

    Format: number · Default: 4
    Optional
  • INATURALIST_DAILY_REQUEST_BUDGET

    Outbound requests allowed per UTC day, counted in-process. The default sits under the 10,000 per day the upstream asks for, and exhaustion fails loudly rather than degrading silently. The counter is per process and resets on restart.

    Format: number · Default: 9000
    Optional
Package 2npm
@cyanheads/inaturalist-mcp-server0.3.2
http://localhost:3010/mcp
  • MCP_HTTP_HOST

    The hostname for the HTTP server.

    Format: string · Default: 127.0.0.1
    Optional
  • MCP_HTTP_PORT

    The port to run the HTTP server on.

    Format: string · Default: 3010
    Optional
  • MCP_HTTP_ENDPOINT_PATH

    The endpoint path for the MCP server.

    Format: string · Default: /mcp
    Optional
  • MCP_AUTH_MODE

    Authentication mode to use: 'none', 'jwt', or 'oauth'.

    Format: string · Default: none
    Optional
  • MCP_LOG_LEVEL

    Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

    Format: string · Default: info
    Optional
  • INATURALIST_CLAMP_LIMITS

    Clamp oversized read limits and radius (20,040 km), and defer oversized by-id batches. Set false to restore strict rejection, including radius above 500 km.

    Format: string · Default: true
    Optional
  • INATURALIST_USER_AGENT

    User-Agent sent on every request to api.inaturalist.org. Defaults to the package name, its version, and the repository URL. Keep a contact URL in any override — the published terms ask for identifiable clients.

    Format: string
    Optional
  • INATURALIST_MIN_REQUEST_INTERVAL_MS

    Minimum spacing between outbound request starts, in milliseconds. The default holds the sustained rate near 54 requests per minute, under the 60 the upstream asks for and well under its 100 ceiling.

    Format: number · Default: 1100
    Optional
  • INATURALIST_MAX_CONCURRENT_REQUESTS

    Maximum outbound requests in flight. Separate from the start interval: spacing bounds the sustained rate, this bounds the burst so one slow call does not stall the lane.

    Format: number · Default: 4
    Optional
  • INATURALIST_DAILY_REQUEST_BUDGET

    Outbound requests allowed per UTC day, counted in-process. The default sits under the 10,000 per day the upstream asks for, and exhaustion fails loudly rather than degrading silently. The counter is per process and resets on restart.

    Format: number · Default: 9000
    Optional
View server metadata