/api/analytics/cities
Comparison-ready city summary across published cities.
Platform
Rangifer exposes the same ecological system through two public interfaces: a REST API for applications and scripts, and a remote MCP server for assistants and agentic workflows. The map stays central, but the platform surface lets other tools participate.
Map
Interactive ecological front end
REST
HTTP endpoints for apps and scripts
MCP
Remote tool surface for assistants
Data
DuckDB export and documented schema
The public site is now map-first, but the same underlying ecology system can be queried directly. Pick the interface that matches the workflow rather than forcing every user through the browser.
REST API
The API is the programmatic surface for dashboards, notebooks, GIS tooling, and internal services. Most endpoints use API-key authentication, while public city comparison endpoints remain open.
MCP Server
The MCP server exposes curated ecological tools over a remote endpoint. It is the interface for Claude Desktop, Cursor, and other MCP-compatible clients.
The REST surface is the right choice when your system needs explicit HTTP contracts, predictable auth boundaries, and direct integration into your own services.
Example Requests
Public city comparison
curl https://api.rangifer.ca/api/analytics/citiesAuthenticated inventory query
curl -H "Authorization: Bearer rng_your_api_key_here" \
"https://api.rangifer.ca/api/biodiversity?borough=Plateau-Mont-Royal&limit=50"Species analytics
curl -H "Authorization: Bearer rng_your_api_key_here" \
https://api.rangifer.ca/api/analytics/speciesAccess model
Public entry points
2 routes stay open
City comparison routes remain public so the map and comparison views work without a signup wall.
Authenticated analysis
API key or session
Inventory, parameter, and species analytics routes stay attributable and metered because they are the heavier query surfaces.
Default workflow
Discover first, then authenticate
Use the public map and comparisons for orientation, then move into authenticated queries when you need deeper filtering or automation.
Endpoint Surface
/api/analytics/cities
Comparison-ready city summary across published cities.
/api/analytics/cities/compare
Subset comparison for a named set of cities.
/api/biodiversity
Tree inventory with borough, species, limit, and cursor filters.
/api/analytics/species
Species distribution and ranking surface.
/api/analytics/summary
Aggregated city-level ecological summary.
/api/parameters
Available boroughs and species values for client filtering.
Most API routes require an API key in the form Authorization: Bearer rng_.... Public city comparison routes are intentionally open so the map and public comparisons can work without a signup flow.
The MCP surface lets an assistant choose ecological tools rather than asking it to improvise against an undocumented API. It is public, read-only, and optimized for AI-native workflows.
Client Configuration
{
"mcpServers": {
"rangifer": {
"url": "https://mcp.rangifer.ca/mcp"
}
}
}The remote endpoint works with Claude Desktop, Cursor, Windsurf, and other MCP-compatible clients. A local stdio mode also exists for self-hosted development against the same tool surface.
Available Tools
query_treesget_borough_statsget_species_distributionget_all_citiesget_all_boroughsget_schemarun_readonly_queryExample tool call
curl -X POST https://mcp.rangifer.ca/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_all_cities","arguments":{}}}'The current MCP-safe database focuses on the three-city subset that has been curated for agent-friendly querying: Montreal, Toronto, and Vancouver. That distinction matters and should stay explicit.
The public UI is no longer trying to sell a generic SaaS experience. It is a documentation and exploration surface around a set of ecological capabilities that can be used directly.
Use the REST API when you need stable HTTP endpoints, explicit auth, and direct control over request and response handling.
Use the MCP server when you want a model to choose from ecological tools, fetch context, and reason over the results in natural language.
Pair the API or MCP interface with the public dataset and methodology pages so every number can be traced back to a documented source and transform.
Use the map to explore, use the API to automate, and use MCP when the analyst or assistant needs conversational access to the same ecological surface.