Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

ocular

by xyun1996version 0.1.0i★ –iRuns on your computer
Registry nameio.github.xyun1996/ocular

Install

Overview

Description from the maker (original English)

Vision tools for coding agents: screenshots, OCR, UI diffs, errors, tables, and charts.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other
  • You need to fill in: OCULAR_BASE_URL, OCULAR_API_KEY, OCULAR_MODEL

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: OCULAR_BASE_URL, OCULAR_API_KEY, OCULAR_MODEL

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "ocular": {
      "command": "npx",
      "args": [
        "-y",
        "ocular-mcp"
      ],
      "env": {
        "OCULAR_BASE_URL": "your-value",
        "OCULAR_API_KEY": "your-value",
        "OCULAR_MODEL": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add ocular --env OCULAR_BASE_URL=your-value --env OCULAR_API_KEY=your-value --env OCULAR_MODEL=your-value -- npx -y ocular-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "ocular": {
      "command": "npx",
      "args": [
        "-y",
        "ocular-mcp"
      ],
      "env": {
        "OCULAR_BASE_URL": "your-value",
        "OCULAR_API_KEY": "your-value",
        "OCULAR_MODEL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "ocular": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "ocular-mcp"
      ],
      "env": {
        "OCULAR_BASE_URL": "your-value",
        "OCULAR_API_KEY": "your-value",
        "OCULAR_MODEL": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • OCULAR_BASE_URL required env
    OpenAI-compatible API base URL
  • OCULAR_API_KEY secret required env
    API key for the configured vision model provider
  • OCULAR_MODEL required env
    Vision-capable model identifier

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account xyun1996, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 32744 servers in this category
  • Published to the registry more recently than 23% of the other 32744 servers in this category
  • Basic checks equal to or better than 100% of the other 32744 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is ocular safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: OCULAR_BASE_URL, OCULAR_API_KEY, OCULAR_MODEL

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.1.0) reached the registry 3 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Date Math

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated 2 days ago
Install

Date Math

by JowenDelaPena

Exact date/time math for agents: business days, holidays, time zones, cron, RRULE, SLA. x402 paid.

Runs in the cloudUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

ocular

Vision for coding agents.

ocular is an MCP server that lets text-first coding agents analyze screenshots, UI mockups, terminal errors, documents, tables, and charts through OpenAI-compatible vision models.

It is designed for both local stdio use and remote HTTP deployments. For remote agents, image bytes can travel through a binary upload side channel while MCP tool calls carry only a lightweight file_id, avoiding large inline base64 payloads.

Project status: early-stage and actively evolving. Feedback, bug reports, integrations, and real-world usage reports are welcome.

Why ocular?

Coding agents are good at reading source code but often lose context when the important evidence is visual: a broken layout, a terminal screenshot, an error dialog, a chart, or a design reference.

ocular turns those visual inputs into structured data an agent can reason about.

  • Agent-oriented output — tools return structured JSON instead of prose-only descriptions.
  • 8 focused vision tools — general analysis, OCR, UI inspection, error diagnosis, UI comparison, table extraction, chart analysis, and upload orchestration.
  • OpenAI-compatible provider interface — point ocular at a compatible multimodal endpoint and model; reproducibly tested configurations are tracked in Provider compatibility.
  • Remote-friendly uploads — binary PUT /upload flow for large images with content-addressed file_id references.
  • Local or remote MCP — stdio for local clients, HTTP for hosted/private deployments.
  • Caching and persistence — deduplicated uploads plus result caching for repeated agent workflows.

How it works

flowchart LR

A[Coding agent] -->|MCP tool call| B[ocular] C[Image / screenshot] -->|binary upload or base64| B B -->|OpenAI-compatible request| D[Vision model] D -->|multimodal response| B B -->|structured JSON| A

For remote HTTP deployments, the recommended path is:

image bytes -> PUT /upload -> file_id -> MCP vision tool -> structured result

See Architecture for the upload and caching model.

Demo

Want to see the full handoff from screenshot to coding-agent evidence? Read the end-to-end demo.

It walks through a remote image upload, a diagnose_error_screenshot call, the structured fields returned to the agent, and how that evidence is combined with repository context. Example model output is explicitly marked representative rather than presented as a benchmark.

Quick start

1. Install

The published npm package is ocular-mcp. It installs the CLI command ocular.

Global install:

npm install -g ocular-mcp

Or run it without a global install:

npx -y ocular-mcp

To build from source instead:

git clone https://github.com/xyun1996/ocular.git

cd ocular npm install npm run build

2. Configure a vision provider

ocular requires an OpenAI-compatible multimodal endpoint, API key, and model name:

OCULAR_BASE_URL=https://your-openai-compatible-endpoint.example/v1

OCULAR_API_KEY=your_api_key OCULAR_MODEL=your_vision_model

For a local compatible endpoint, use that server's base URL and vision-capable model name. Compatibility depends on the endpoint/model combination; see Provider compatibility for the reproducible smoke-test procedure and verified configurations.

3. Run in stdio mode

With a global install:

ocular

Or:

npx -y ocular-mcp

The server communicates over stdio, so it may appear idle when started directly. In normal use an MCP client launches it and exchanges protocol messages over stdin/stdout.

4. Connect an MCP client

Claude Code example:

claude mcp add ocular \

-e OCULAR_BASE_URL=https://your-openai-compatible-endpoint.example/v1 \ -e OCULAR_MODEL=your_vision_model \ -e OCULAR_API_KEY=your_api_key \ -- npx -y ocular-mcp

Avoid putting long-lived API keys directly in shell history on shared machines. Use your client's environment/secret-management mechanism when available.

For a generic MCP client:

{

"mcpServers": { "ocular": { "command": "npx", "args": ["-y", "ocular-mcp"], "env": { "OCULAR_BASE_URL": "https://your-openai-compatible-endpoint.example/v1", "OCULAR_MODEL": "your_vision_model", "OCULAR_API_KEY": "your_api_key" } } } }

See Claude Code setup for a fuller walkthrough.

Example workflows

Diagnose a screenshot

Ask your coding agent to inspect an error screenshot and extract the exact message, likely cause, and next checks.

{

"file_id": "e21ba723...", "task": "Extract the exact error and suggest the next debugging checks", "project_context": "Node.js TypeScript project" }

Review a UI implementation

Use analyze_ui_screenshot to turn a screenshot into implementation-oriented observations about hierarchy, alignment, spacing, typography, contrast, and likely visual defects.

Compare expected vs actual UI

Use compare_ui_screenshots with a reference screenshot and an implementation screenshot to identify regressions and layout differences.

See Screenshot debugging example.

Tools

ToolPurpose
analyze_imageGeneral structured image analysis
extract_text_from_imageOCR with reading-order/layout awareness
analyze_ui_screenshotUI hierarchy, spacing, typography and accessibility review
diagnose_error_screenshotExtract and diagnose terminal/browser/build errors
compare_ui_screenshotsCompare reference and implementation screenshots
extract_table_from_imageExtract table data into structured output
analyze_chart_imageAnalyze chart labels, values, trends and uncertainty
create_upload_sessionReturn upload endpoint and instructions for remote clients

Every vision tool accepts file_id; local workflows can also use inline image_base64 where appropriate.

Remote deployment

Set HTTP transport and authentication:

MCP_TRANSPORT=http

MCP_HTTP_HOST=127.0.0.1 MCP_HTTP_PORT=3000 MCP_HTTP_PATH=/mcp MCP_AUTH_TOKEN=replace_with_a_long_random_token MCP_AUTH_HEADER=authorization MCP_AUTH_SCHEME=Bearer

Upload raw bytes:

curl --request PUT \

--data-binary @/path/to/image.png \ "https://your.host/upload" \ -H "Content-Type: image/png" \ -H "Authorization: Bearer your_mcp_auth_token"

The server returns a content-addressed file_id; pass that id to a vision tool instead of sending a large base64 string through MCP.

For reverse proxy and systemd examples, see Deployment.

Configuration

Common variables:

VariablePurpose
OCULAR_BASE_URLOpenAI-compatible API base URL
OCULAR_API_KEYProvider API key
OCULAR_MODELVision-capable model name
OCULAR_HEADERSOptional custom provider headers as JSON
OCULAR_TEMPERATUREGeneration temperature
OCULAR_MAX_TOKENSMaximum generated tokens
OCULAR_TIMEOUT_MSProvider timeout
OCULAR_MAX_IMAGE_MBMaximum image size
OCULAR_CACHE_ENABLEDEnable result cache
OCULAR_CACHE_DIRCache directory
OCULAR_UPLOADS_DIRPersistent upload directory
OCULAR_UPLOAD_URL_BASEPublic base URL used in upload instructions

See .env.example for the full configuration surface.

Verification and benchmarks

Provider compatibility claims are based on real endpoint/model smoke tests, not on API naming alone. See Provider compatibility.

The repository also includes synthetic, redistributable visual fixtures for repeatable project-level measurements. See Benchmark fixtures. The benchmark measures execution, structural JSON output, and timing; it is not presented as a broad model-quality ranking.

Development

npm install

npm run build npm test npm run check npm run dev

The repository includes tests for authentication, caching, image handling, MCP server behavior, provider payloads, tool execution, npm packaging, Registry metadata consistency, and release smoke checks.

Security and privacy

Do not commit provider API keys or MCP authentication tokens. Public HTTP deployments should sit behind HTTPS and a reverse proxy; the Node process should generally bind to a private interface.

See SECURITY.md for vulnerability reporting guidance.

Roadmap

Near-term areas where contributions are useful:

  • Real-world MCP client integration and usage reports
  • Provider/model compatibility verification
  • Published fixture-based benchmark results from real endpoints
  • Community-driven tool and prompt improvements

If you are using ocular in a real workflow, open a Usage report issue describing the client, provider/model, and use case. Public reports are useful even when nothing is broken and help keep compatibility/adoption claims grounded in real usage.

Contributing

Contributions are welcome. Start with CONTRIBUTING.md, run npm run check before opening a PR, and include reproduction details for behavior changes.

Release and registry

The npm package is ocular-mcp; the installed CLI is ocular. Release automation uses npm Trusted Publishing rather than a long-lived repository token. See Publishing.

ocular is published in the official MCP Registry as io.github.xyun1996/ocular. See MCP Registry for the live identity and release flow.

License

MIT — see LICENSE.

If ocular is useful in your agent workflow, a GitHub star helps other developers discover the project.

Ask PopNx