mcpField
P
PanoOn Street View

PanoOn Street View

Local
github.com/fanrj3Maps & Travel0Updated 3w ago

About PanoOn Street View

PanoOn Street View is a zero-dependency stdio MCP server for code agents that wraps the PanoOn local service and distributed controller. It supports scanning Street View areas for PanoIDs and downloading imagery.

Key features

  1. 01Scan polygon areas for PanoIDs
  2. 02Download Street View imagery
  3. 03Check scan and download job status
  4. 04Cancel scans and download jobs
  5. 05Inspect service and worker status

Use cases

  1. 01Find PanoIDs within a selected area
  2. 02Download imagery for identified PanoIDs

MCP support

Exposes PanoOn scanning, download, status, and cancellation operations as tools to MCP clients. It connects to the PanoOn service running locally at the configured URL.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"fanrj3-panoon": {
"command": "npx",
"args": [
"-y",
"panoon-mcp"
],
"env": {
"PANOON_SERVICE_URL": "<PANOON_SERVICE_URL>"
}
}
}
}
Run commandnpx -y panoon-mcp
Environment variables to set
PANOON_SERVICE_URLPanoOn local service base URL (default http://127.0.0.1:8787)

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmpanoon-mcp0.2.21

Tools

10

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.