Install
$ agentstack add mcp-cssnr-inaturalist-mcp ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
[](https://github.com/cssnr/inaturalist-mcp/releases/latest) [](https://pypi.org/project/inaturalist-mcp/) [](https://github.com/cssnr/inaturalist-mcp/pkgs/container/inaturalist-mcp) [](https://github.com/cssnr/inaturalist-mcp/pkgs/container/inaturalist-mcp) [](https://pypi.org/project/inaturalist-mcp/) [](https://github.com/cssnr/inaturalist-mcp/actions/workflows/build.yaml) [](https://github.com/cssnr/inaturalist-mcp/actions/workflows/deploy.yaml) [](https://github.com/cssnr/inaturalist-mcp/actions/workflows/release.yaml) [](https://github.com/cssnr/inaturalist-mcp/pulse) [](https://github.com/cssnr/inaturalist-mcp?tab=readme-ov-file#readme) [](https://github.com/cssnr/inaturalist-mcp?tab=readme-ov-file#readme) [](https://github.com/cssnr/inaturalist-mcp/graphs/contributors) [](https://github.com/cssnr/inaturalist-mcp/issues) [](https://github.com/cssnr/inaturalist-mcp/discussions) [](https://github.com/cssnr/inaturalist-mcp/forks) [](https://github.com/cssnr/inaturalist-mcp/stargazers) [](https://cssnr.github.io/) [](https://discord.gg/wXy6m2X8wY) [](https://ko-fi.com/cssnr)
iNaturalist MCP
- [Setup](#setup)
- [Local](#local)
- [Remote](#remote)
- [Development](#development)
- [Building](#building)
- [Support](#support)
- [Contributing](#contributing)
iNaturalist MCP server that provides access to the iNaturalist API via the Model Context Protocol.
Exposes a search_taxa tool that searches for organisms by common or scientific name and returns taxonomic details, common names, photos, and Wikipedia links.
Setup
This can be run in [Local](#local) CLI mode or [Remote](#remote) server mode.
Local
In CLI mode using uv.
View Config - Local uv
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"inaturalist": {
"type": "local",
"command": ["uvx", "inaturalist-mcp"],
"enabled": true
}
}
}
In CLI mode using Python pip.
pip install inaturalist-mcp
View Config - Local Python
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"inaturalist": {
"type": "local",
"command": ["inaturalist-mcp"],
"enabled": true
}
}
}
Remote
With Docker run.
docker run --rm -p 80:8000 ghcr.io/cssnr/inaturalist-mcp:latest
With Docker Compose.
services:
app:
image: ghcr.io/cssnr/inaturalist-mcp:latest
ports:
- '80:8000'
With Python from source.
uv sync
uv run uvicorn inaturalist_mcp.server:app --app-dir src --host 0.0.0.0 --port 8000
View Config - Remote
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"inaturalist": {
"type": "remote",
"url": "http://localhost/mcp",
"enabled": true
}
}
}
Note: Set the url to the host you are running the server on.
[](https://render.com/deploy?repo=https://github.com/cssnr/inaturalist-mcp)
For a Docker Swarm + Traefik example see the docker-compose-swarm.yaml.
For a Portainer Deploy workflow see the .github/workflows/deploy.yaml.
Development
Sync project.
uv sync
Run local server.
run cli
Run remote server (live reload).
run dev
Point your client to: http://localhost:8000/mcp
Run remote Docker Compose (live reload).
run compose
Point your client to: http://localhost/mcp
You can set the PORT environment variable.
Building
Docker Image
To build and test the docker image run.
bash build.sh
docker compose up
Point your client to: http://localhost/mcp
Python Package
This builds the bdist and wheel, if you have a use for it...
run build
Support
If you run into any issues or need help getting started, please do one of the following:
- Report an Issue:
- Q&A Discussion:
- Request a Feature:
- Chat with us on Discord:
[](https://github.com/cssnr/inaturalist-mcp/issues/new?template=1-feature.yaml) [](https://github.com/cssnr/inaturalist-mcp/issues) [](https://github.com/cssnr/inaturalist-mcp/discussions) [](https://discord.gg/wXy6m2X8wY)
Contributing
Please consider making a donation to support the development of this project and additional open source projects.
[](https://ko-fi.com/cssnr)
For a full list of current projects visit: https://cssnr.github.io/
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: cssnr
- Source: cssnr/inaturalist-mcp
- License: MIT
- Homepage: https://cssnr.github.io
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.