How to use lvexplore
Two ways in: look at your VIs in the browser, or let your AI agent read them. Both need an account (by invitation).
Start here
- Apply. When you are approved you get a one-time link: set your password with it, then sign in.
- In the browser: on Files, upload a VI (or open the sample project) and click it to see its front panel and block diagram.
- With your agent: on Account, make a key, add the service to your agent (below), and ask it about your VIs.
In the browser
- Files takes single files (.vi, .ctl, .vim, .llb …). A project with its folders goes up as a .zip through your agent; it then appears on Files too.
- Click a file to open it: the block diagram and front panel as drawn from the file, case by case; a project opens with its item tree on the left.
- Each upload is one workspace, kept until you delete it; uploading the same project or VI again makes its next version. Its id is what your agent needs to read the same files.
Compare versions
- Upload the project again after a change: same name, next version. On Files, “compare with v1” lists every VI whose logic changed, was added or deleted.
- Each changed VI has a text report (nodes, wires, constants, cases, and how sure the pairing is) and a side-by-side view of the two block diagrams with each difference circled.
- Your agent does the same with
vi_diff_tree,vi_diffandvi_diff_viewand the newer upload asworkspace_b.
Connect your agent
MCP address https://lvexplore.tailc2cd24.ts.net/mcp, with the header Authorization: Bearer KEY (your key from Account). One key works for MCP and REST; make one per agent or machine.
Most agents refuse tools they were not told to allow, and that looks exactly like a broken service: allow the read-only ones — service_guide, workspace_list, workspace_files, kept_list, vi_summary, vi_content, vi_layout, vi_neighborhood, vi_structure, vi_types, project_overview, llb_members, vi_diff, vi_diff_view, vi_diff_tree, vi_callers, vi_picture.
Claude Code (verified 2026-10-01 (claude -p))
claude mcp add --transport http lvexplore https://lvexplore.tailc2cd24.ts.net/mcp --header "Authorization: Bearer KEY"
- Restart the session after adding it; `claude mcp list` should say Connected.
- It asks before the first call of each tool. Headless (`claude -p`) cannot ask, so every call is refused ("you haven't granted it yet") unless you pass --allowedTools "mcp__lvexplore__service_guide mcp__lvexplore__workspace_list mcp__lvexplore__workspace_files mcp__lvexplore__kept_list mcp__lvexplore__vi_summary mcp__lvexplore__vi_content mcp__lvexplore__vi_layout mcp__lvexplore__vi_neighborhood mcp__lvexplore__vi_structure mcp__lvexplore__vi_types mcp__lvexplore__project_overview mcp__lvexplore__llb_members mcp__lvexplore__vi_diff mcp__lvexplore__vi_diff_view mcp__lvexplore__vi_diff_tree mcp__lvexplore__vi_callers mcp__lvexplore__vi_picture"
Codex CLI (verified 2026-10-01 (0.159.2))
export LVEXPLORE_KEY=KEY codex mcp add lvexplore --url https://lvexplore.tailc2cd24.ts.net/mcp --bearer-token-env-var LVEXPLORE_KEY
- The read-only tools run without approval (they are marked read-only). workspace_upload / workspace_delete need your approval; under `codex exec -c approval_policy="never"` they are refused.
Gemini (Antigravity CLI, agy) (verified 2026-10-01 (agy 1.2.14))
agy mcp add -H "Authorization: Bearer KEY" lvexplore https://lvexplore.tailc2cd24.ts.net/mcp # then in ~/.gemini/antigravity-cli/settings.json, permissions.allow: "mcp(lvexplore/service_guide)", "mcp(lvexplore/workspace_list)", "mcp(lvexplore/workspace_files)", "mcp(lvexplore/kept_list)", "mcp(lvexplore/vi_summary)", "mcp(lvexplore/vi_content)", "mcp(lvexplore/vi_layout)", "mcp(lvexplore/vi_neighborhood)", "mcp(lvexplore/vi_structure)", "mcp(lvexplore/vi_types)", "mcp(lvexplore/project_overview)", "mcp(lvexplore/llb_members)", "mcp(lvexplore/vi_diff)", "mcp(lvexplore/vi_diff_view)", "mcp(lvexplore/vi_diff_tree)", "mcp(lvexplore/vi_callers)", "mcp(lvexplore/vi_picture)"
- Headless (`agy --print`) refuses every MCP call that is not allowed, and prints nothing with exit code 0 -- check its log, not the exit code. Do not use --dangerously-skip-permissions: it allows the write tools too.
Cursor (from the client's documentation, not yet run against this service)
~/.cursor/mcp.json: {"mcpServers": {"lvexplore": {"url": "https://lvexplore.tailc2cd24.ts.net/mcp", "headers": {"Authorization": "Bearer KEY"}}}}Gemini CLI (gemini) (from the client's documentation, not yet run against this service)
~/.gemini/settings.json: {"mcpServers": {"lvexplore": {"httpUrl": "https://lvexplore.tailc2cd24.ts.net/mcp", "headers": {"Authorization": "Bearer KEY"}}}}- A different program from agy; its flags and files differ.
Claude Desktop (from the client's documentation, not yet run against this service)
claude_desktop_config.json: {"mcpServers": {"lvexplore": {"command": "npx", "args": ["mcp-remote", "https://lvexplore.tailc2cd24.ts.net/mcp", "--header", "Authorization: Bearer KEY"]}}}- Its Connectors page expects OAuth, which this service does not offer yet; the mcp-remote bridge carries the key instead.
Things to ask
Once connected, ask in your own words; the agent uploads, then reads. For example:
Use lvexplore: upload my project folder as a zip, then tell me what the main VI does and which states its state machine has.
In workspace <workspace id>, read Main.vi and list every subVI it calls, with what goes in and out.
In workspace <workspace id>, which VIs call Config.vi? Show the case of each caller that calls it.
I uploaded my project twice (workspaces <workspace id> and the newer one): compare the two uploads -- which VIs changed in the logic, not the layout?
Without MCP (REST)
Every tool has a plain HTTP twin with the same arguments and answer: for scripts, or when your MCP client cannot reach the service. The full reference is the text guide your agent reads: /api/v1/guide.
curl -H 'Authorization: Bearer KEY' -F files=@project.zip https://lvexplore.tailc2cd24.ts.net/api/v1/workspaces
Your files
- Your uploads stay until you delete them. Your account has a storage quota and an upload quota over 30 days; deleting files frees storage but not the upload quota. A copy for improving the parser is kept only if you tick “keep a copy” (or ask for it when reporting a problem) — and a copy from “keep a copy” stays after you delete the files only if the parser met something it could not read in them. You can withdraw it any time on Files.
- Your reading logs and problem reports are kept for the number of days you choose on Account (at most 30). Deleting your account there signs you out and stops your keys at once; after 7 days everything it holds is deleted for good.
- A password-protected VI is read for what it is only — never its panel or diagram.
- Every reading records the codes of what the parser could not name (no text from your files, no file names), so we know what to fix next.