{"name":"io.github.cyanheads/inaturalist-mcp-server","slug":"cyanheads-inaturalist-mcp-server","title":null,"description":"Search iNaturalist sightings, identification threads, phenology, and look-alike species.","url":"https://mcp.market/server/cyanheads-inaturalist-mcp-server","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"search","tags":["search"],"presence":{"score":15,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-20T04:33:32.000Z","license":"Apache-2.0"},"uptime":{"percent":100,"checks":2,"ok":2,"last_checked_at":"2026-09-20T22:00:44.201Z","last_ok_at":"2026-09-20T22:00:44.201Z","latency_ms":810},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/cyanheads/inaturalist-mcp-server","website":null,"version":"0.1.2","remotes":[{"type":"streamable-http","url":"https://inaturalist.caseyjhand.com/mcp"}],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/inaturalist-mcp-server","version":"0.1.2","runtimeHint":"node","transport":{"type":"stdio"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:stdio","type":"positional"}],"environmentVariables":[{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"},{"description":"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","name":"INATURALIST_USER_AGENT"},{"description":"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","name":"INATURALIST_MIN_REQUEST_INTERVAL_MS"},{"description":"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","name":"INATURALIST_MAX_CONCURRENT_REQUESTS"},{"description":"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.","format":"number","default":"9000","name":"INATURALIST_DAILY_REQUEST_BUDGET"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/inaturalist-mcp-server","version":"0.1.2","runtimeHint":"node","transport":{"type":"streamable-http","url":"http://localhost:3010/mcp"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:http","type":"positional"}],"environmentVariables":[{"description":"The hostname for the HTTP server.","format":"string","default":"127.0.0.1","name":"MCP_HTTP_HOST"},{"description":"The port to run the HTTP server on.","format":"string","default":"3010","name":"MCP_HTTP_PORT"},{"description":"The endpoint path for the MCP server.","format":"string","default":"/mcp","name":"MCP_HTTP_ENDPOINT_PATH"},{"description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","default":"none","name":"MCP_AUTH_MODE"},{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"},{"description":"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","name":"INATURALIST_USER_AGENT"},{"description":"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","name":"INATURALIST_MIN_REQUEST_INTERVAL_MS"},{"description":"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","name":"INATURALIST_MAX_CONCURRENT_REQUESTS"},{"description":"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","name":"INATURALIST_DAILY_REQUEST_BUDGET"}]}],"tools":[],"scan":null,"grade_history":[],"reviews":[]}