PanoOn Street View

Official registry Media and design

Scan Street View areas into PanoIDs and download imagery through PanoOn.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package panoon-mcp
Claude Code
claude mcp add panoon-street-view -e 'PANOON_SERVICE_URL=<PANOON_SERVICE_URL>' -- npx -y panoon-mcp@0.2.21
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "panoon-street-view": {
            "command": "npx",
            "args": [
                "-y",
                "panoon-mcp@0.2.21"
            ],
            "env": {
                "PANOON_SERVICE_URL": "<PANOON_SERVICE_URL>"
            }
        }
    }
}

Environment variables

  • PANOON_SERVICE_URL PanoOn local service base URL (default http://127.0.0.1:8787)

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. PanoOn MCP + agent skills
  2. Quick start (npm)
  3. The server
  4. Install per agent
  5. Typical agent flow

PanoOn MCP + agent skills

Give any MCP-capable code agent the ability to scan and download Street View data through PanoOn: mcp/panoon-mcp.mjs is a zero-dependency MCP stdio server that wraps the PanoOn local service and the distributed controller.

Quick start (npm)

npx -y panoon-mcp

The npm package panoon-mcp exposes the panoon-mcp bin. You can also download panoon-mcp.zip from https://app.rjfan.org/panoon/mcp/, or use the copy bundled with PanoOn 0.2.21+ (<install>\mcp\panoon-mcp.mjs).

Prerequisite: the PanoOn app/service is running on the same machine (http://127.0.0.1:8787; the desktop app starts it automatically since 0.2.20).

The server

node mcp/panoon-mcp.mjs
# or with the runtime bundled with PanoOn (no Node install required):
"C:\Users\<you>\AppData\Local\PanoOn\panoon-service-runtime.exe" mcp\panoon-mcp.mjs

Environment:

VariableDefaultMeaning
PANOON_SERVICE_URLhttp://127.0.0.1:8787Local service base URL.

Tools: panoon_status, panoon_area_scan, panoon_area_status, panoon_area_result, panoon_area_cancel, panoon_download, panoon_job_status, panoon_jobs, panoon_workers, panoon_cancel_job.

Install per agent

OpenCode (V2)
opencode mcp add panoon --global -- node <repo>\mcp\panoon-mcp.mjs
opencode mcp list

or by hand in ~/.config/opencode/opencode.jsonc:

{
  "mcp": {
    "servers": {
      "panoon": {
        "type": "local",
        "command": ["node", "<repo>/mcp/panoon-mcp.mjs"],
        "environment": { "PANOON_SERVICE_URL": "http://127.0.0.1:8787" }
      }
    }
  }
}

Skill: copy mcp/skills/panoon/ into your OpenCode skills location (or reference the folder from the skills configuration field).

Claude Code
claude mcp add --scope user panoon -- node <repo>/mcp/panoon-mcp.mjs

or .mcp.json:

{ "mcpServers": { "panoon": { "command": "node", "args": ["<repo>/mcp/panoon-mcp.mjs"] } } }

Skill: copy mcp/skills/panoon/ to ~/.claude/skills/panoon/.

Codex CLI

Add to ~/.codex/config.toml:

[mcp_servers.panoon]
command = "node"
args = ["<repo>/mcp/panoon-mcp.mjs"]
env = { PANOON_SERVICE_URL = "http://127.0.0.1:8787" }

For Codex, paste the workflow section of mcp/skills/panoon/SKILL.md into your AGENTS.md so the agent knows the intended flow.

Any other MCP client (stdio)

Use the generic stdio contract:

{
  "command": "node",
  "args": ["<repo>/mcp/panoon-mcp.mjs"],
  "env": { "PANOON_SERVICE_URL": "http://127.0.0.1:8787" }
}
DeepSeek Harness (dsh)
deepseek mcp add panoon --command node --arg <repo>\mcp\panoon-mcp.mjs
deepseek mcp list

This writes ~/.deepseek/mcp.json (servers.panoon; tools surface namespaced by the harness). Install the skill by copying mcp/skills/panoon/ into ~/.deepseek/skills/panoon/ — dsh uses the same SKILL.md contract as Claude Code — then restart the harness so both are picked up.

On this machine the working example is:

deepseek mcp add panoon --command node --arg D:\04_Dev\PanoOn\mcp\panoon-mcp.mjs
copy D:\04_Dev\PanoOn\mcp\skills\panoon %USERPROFILE%\.deepseek\skills\panoon

Typical agent flow

  1. panoon_status → service healthy, strategies available.
  2. panoon_area_scan { polygon: [{lat,lng}, ...] } → jobId; panoon_area_result → PanoIDs.
  3. Confirm output directory with the user.
  4. panoon_download { panoids, outputDir } → jobId; panoon_job_status for progress.

Safety: downloads are large (~0.5 MB/image) and consume proxy quota. Agents should confirm scope and output paths before submitting jobs; scans are cheap and can be cancelled at any time.

Frequently asked questions

What is PanoOn Street View?

Scan Street View areas into PanoIDs and download imagery through PanoOn.

How do I install PanoOn Street View?

It runs on your machine. In Claude Code: claude mcp add panoon-street-view -e 'PANOON_SERVICE_URL=<PANOON_SERVICE_URL>' -- npx -y panoon-mcp@0.2.21. For other clients, paste the JSON configuration from this page into their MCP settings.

Does PanoOn Street View need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is PanoOn Street View open source?

Its code is public on GitHub, but the repository does not declare a standard license.

Who maintains PanoOn Street View?

It is published by fanrj3. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.