GeoLens runs on your own machine — the client starts it, so there is no endpoint to ping. 1 643 installs a week from pypi. Last commit 25 Oct 2026.
Read-only access to a self-hosted GeoLens spatial catalog: datasets, features, maps, sandboxed SQL.
We read the source, 3 h ago · rules 995398eba69f
Found in continuous integration, deployment or infrastructure files, or in a neighbouring package of the same monorepo. None of this is installed when you add the server: it describes how the project is built and released. We list it because a leaked key in a build pipeline is still a real problem, but it is not something this server does on your machine.
child = subprocess.Popen(
for path in glob.glob(os.path.join(multiproc_dir, f"{prefix}_*.db")):
child = subprocess.Popen(
const handleCollectionSelect = async (collection: StacCollectionSummary) => {
const gen = ++searchGenRef.current;
USER root
env = dict(os.environ if base_env is None else base_env)
Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.
Today is the operative word: we check GeoLens every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.
This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.
claude mcp add geolens -e 'GEOLENS_INSTANCE=<GEOLENS_INSTANCE>' -- uvx geolens-mcp
{
"mcpServers": {
"geolens": {
"command": "uvx",
"args": [
"geolens-mcp"
],
"env": {
"GEOLENS_INSTANCE": "<GEOLENS_INSTANCE>"
}
}
}
}
[mcp_servers.geolens]
command = "uvx"
args = ["geolens-mcp"]
env = { GEOLENS_INSTANCE = "<GEOLENS_INSTANCE>" }
{
"mcpServers": {
"geolens": {
"command": "uvx",
"args": [
"geolens-mcp"
],
"env": {
"GEOLENS_INSTANCE": "<GEOLENS_INSTANCE>"
}
}
}
}
{
"servers": {
"geolens": {
"type": "stdio",
"command": "uvx",
"args": [
"geolens-mcp"
],
"env": {
"GEOLENS_INSTANCE": "<GEOLENS_INSTANCE>"
}
}
}
}
Put your own value in place of
<GEOLENS_INSTANCE> (Base URL of the GeoLens instance, e.g. https://geolens.example.com (the /api suffix is appended automatically)).
The author’s registry entry marks it as required.
Optional settings from the registry entry, left out of the block above:
GEOLENS_API_KEY (API key, sent as X-Api-Key. Omit for public-only access), GEOLENS_TOKEN (JWT bearer token, used only when GEOLENS_API_KEY is unset).
Safety-railed database access: Postgres, MySQL, SQLite, Redis. Read-only by default.
Query your org's data in natural language — read-only MCP access to SQL, NoSQL, files & warehouses.
Read-only MySQL access, with the database and server switchable mid-conversation.
AI access to Quadratic spreadsheets: open files, run Python/SQL, query connected databases.
Safe, read-only database access for AI agents. 5 databases, batch queries, SQLGlot.
Policy-driven, read-only MCP server for safe database access from AI tools.
Safe, read-only-by-default MySQL, PostgreSQL & SQLite access for AI agents. TOON output.
PostgreSQL MCP wrapper with .env credential mapping, tool selection, and safe read-only defaults.
Answers built from our own checks of this server.