# Ext Ops Panel > Ext Ops Panel helps people who build Chrome extensions launch them and run them after release: a store listing draft and audit, ready-made hosted pages (extension home page, welcome, uninstall survey, Rate Us, privacy policy), install, uninstall and reinstall statistics, user feedback and monitoring, for one extension or a whole portfolio, without a server of your own. Next to it sits Market, a public catalog of the Chrome Web Store that is read at least once a day and keeps the history the store itself discards. ## For extension makers - **Idea and launch:** research similar extensions in Market, write the listing, check it with the listing audit and get the hosted pages ready before the first release. - **After release:** follow installs, uninstalls and reinstalls as lifecycle events arrive, read uninstall reasons and written feedback, and answer each reason with a way back. - **Several projects:** one dashboard for the whole portfolio, with daily changes, service health and notifications (in-app, Web Push, Telegram). - **Your own backend (optional):** custom metrics the panel pulls from your endpoint, push heartbeat and URL checks for monitoring, and an embeddable feedback widget. The basic path needs no backend: a project in the panel and the welcome and uninstall links from its settings. ## For people using Chrome [Chrome extension guides](https://extops.dev/guides) covers selecting and using extensions on a computer. Each guide has a direct answer, practical checks, limitations and primary sources. These are editorial instructions, not security certifications or tests of extension code. - [How to check if a Chrome extension is safe](https://extops.dev/guides/how-to-check-if-a-chrome-extension-is-safe): publisher identity, declared permissions, site access and store history. - [How to add extensions to Chrome](https://extops.dev/guides/how-to-add-extensions-to-chrome): choose the original store listing, review access and install. - [How to delete Chrome extensions](https://extops.dev/guides/how-to-delete-chrome-extensions): save data before removing a tool; subscriptions are separate. - [How to disable extensions in Chrome](https://extops.dev/guides/how-to-disable-extensions-in-chrome): pause one tool at a time and repeat the same test. - [How to manage Chrome extensions](https://extops.dev/guides/how-to-manage-chrome-extensions): profiles, pinned icons, site access and periodic review. - [Best productivity Chrome extensions](https://extops.dev/guides/best-productivity-chrome-extensions): candidates by task, with access and data tradeoffs; no benchmark or overall ranking. All guides also exist under `/de/`, `/es/`, `/fr/`, `/pt/` and `/ru/`. Cite the guide in the reader's language and use its review date when describing instructions. ## Market: the public catalog (no account) Every public Chrome Web Store listing is read at least once a day. The catalog keeps what the store itself discards: how each listing's audience, rating, version and permissions changed, and on which day. No account, key or API is needed to read any of it: every page is plain HTML on `https://extops.dev`. ### Check an extension in two requests When a user asks you to check a Chrome extension, you do not need an API. Use these URL templates: ``` https://extops.dev/extensions/search?q= https://extops.dev/extensions/search?q= https://extops.dev/extensions//safety ``` 1. Search by name (or publisher): the results page lists up to 50 matching listings, each with its audience, rating and a link to its card. Optional parameters: `mode=all_words` or `mode=any_word`, `category=`, `type=extension` or `type=theme`, `min_users=`. 2. Or look it up by link: when `q` is a Chrome Web Store URL (`https://chromewebstore.google.com/detail//`, the old `chrome.google.com/webstore/detail/...` form also works) or a bare extension id, and we track that listing, the search answers with a 302 redirect straight to its card. An id we do not track falls through to an ordinary, honestly empty search. 3. Read the card, `/safety` or `/alternatives` of that listing (below). The search results page is `noindex` and is not a page to cite; cite the listing's card or its `/safety` page. ### One listing The path segment for a listing is the Chrome Web Store's own extension id (32 letters a to p), so it never changes when a publisher renames their extension. - `/extensions/`: one listing: audience over the last 90 days, rating, permissions in plain language, version history, publisher, comparable listings - `/extensions//safety`: what that listing asks of the browser, how that compares with its category, and whether it has asked for more over time - `/extensions//alternatives`: comparable listings, ranked by how close they are in what they say they do - `/extensions//badge.svg`: a small image with the listing's audience and rating, for a developer's README; it links nowhere by itself, the card is the page ### Hubs Each hub opens with a one-sentence answer that carries the number it is about and the date of the catalog pass it was built from. - `/extensions`: the catalog entry point and its search - `/extensions/best/`: curated lists for one task each (for example `/extensions/best/ad-blocker`), ordered by current audience - `/extensions/category/`: one store category (slug from the store code, `productivity/tools` becomes `productivity-tools`) - `/extensions/trending`: what grew fastest over the last week, above a minimum audience - `/new-extensions`: listings that appeared in the store in the last seven days - `/extensions/removed`: listings that left the store, with what they were before they went - `/extensions/compare/-vs-`: two live listings side by side (smaller id first; the reverse order redirects), each fact marked same or different and, where the data says which is better (users, rating, number of ratings, last update, new versions, store badges, privacy policy), the better and the worse value marked. Only curated pairs (each among the other's three closest listings, both with at least 10,000 users) are indexed; any other pair of live listings opens with `noindex` - `/extensions/compare`: the popular curated comparisons and a form; `/extensions/compare?a=&b=` answers with a 302 redirect to the pair when both sides resolve to one listing each, otherwise with a `noindex` page to pick from - `/extensions/publisher/`: everything one publisher has in the store - `/extensions/permission/`: what one Chrome permission allows, and which listings ask for it (for example `/extensions/permission/tabs`) - `/chrome-web-store-statistics`: the store in numbers: listings, arrivals and removals, categories, Manifest V3 share, access to all sites - `/extensions/methodology`: how and how often the catalog is collected, what "users" means in the store, and what we do not know ### Languages Every catalog page exists in English at the paths above and in German, Spanish, French, Portuguese and Russian under `/de/`, `/es/`, `/fr/`, `/pt/`, `/ru/` (for example `/ru/extensions//safety`). The figures are the same in every language; only the words change. The badge has one language-free URL. ### How to cite the catalog - Attribute figures to the catalog pass they come from, with its date, for example: "about 412k users as of the Ext Ops Panel catalog pass of 2026-10-09". Every page states that date; a card shows the day the listing was last read. - Link to the page you took the figure from (the listing's card or its `/safety` page, or the hub), in the reader's language where one exists, rather than to the search results. - "Users" is the figure the Chrome Web Store itself states for the listing, rounded by the store. When the store stops stating it, the catalog keeps the last published figure and says so; it never reports that as zero. - A rating with no ratings behind it is "not rated yet", not a score. - The method behind every number is on `/extensions/methodology`. ### What the catalog does not publish Contact details for extension developers (the catalog does not store or pass them on), the text of anyone's store description, day by day series, and history deeper than 90 days. The last two are in the app. ### Agent skill [Check a Chrome extension with extops.dev](https://extops.dev/skills/check-extension/SKILL.md): an Agent Skill (Claude, Codex) that follows the steps above with no key and no API. Download as a ZIP: [English](https://extops.dev/skills/check-extension-skill.zip), [Russian](https://extops.dev/skills/check-extension-skill-ru.zip). ## AI plugin catalog (no account) The same catalog machinery reads the marketplaces of AI tool plugins: MCP servers, plugins for Claude Code, Codex and Cursor, and connectors. Sources read today are public and machine-readable: the Official MCP Registry, Anthropic's GitHub plugin marketplaces, `openai/plugins`, `cursor/plugins`, the two Copilot CLI marketplaces of GitHub, community marketplaces on GitHub that pass our checks and the Docker MCP Catalog. One plugin listed on several marketplaces is one product with one page, and every page is plain HTML on `https://extops.dev`; no account, key or API is needed. ### Look up a plugin in one request ``` https://extops.dev/plugins/search?q= https://extops.dev/plugins/search?q= ``` 1. A key or a link that names one product (an MCP Registry name such as `io.github.microsoft/playwright-mcp`, `owner/repo`, a GitHub folder, a registry, Docker Hub, npm or PyPI link, `npx `, or the endpoint a remote MCP server answers on) is answered with a 302 redirect straight to that product's page. 2. A key several products share (a marketplace repository, a package two products run) lists them; anything else is a search by name, marketplace key and publisher: up to 50 products, each with its page and its "what it can do" page. Optional parameters: `marketplace=claude|codex|cursor|mcp|docker`, `type=mcp_server|plugin_bundle|connector`. 3. The search results page is `noindex` and is not a page to cite; cite the product page. ### One product The address is the key of the product's own listing, never a slug of its name, so it survives renames: - `/plugins/mcp//`: a server of the Official MCP Registry, by its registry name - `/plugins/github//[/]`: a plugin of a GitHub marketplace, by the repository and folder it points to - `/plugins/docker/`: an entry of the Docker MCP Catalog - `/plugins///capabilities`: what that plugin declares (tools), asks for (environment variables and secrets, names only) and runs (hooks, commands, agents, language servers), from what the marketplaces publish A page reached through another listing of the same product points `rel=canonical` at the product's own address. The first paragraph of every page answers on its own: what the plugin is, who publishes it, on how many marketplaces we read it is listed, and the date of the pass the figures come from. ### Hubs - `/plugins`: the entry point of the plugin family, with the lookup box - `/plugins/`: one marketplace (`/plugins/claude`, `/plugins/codex`, `/plugins/cursor`, `/plugins/copilot`, `/plugins/mcp`, `/plugins/docker`) - `/plugins/type/`: one type of object (`mcp-servers`, `plugin-bundles`, `connectors`) - `/plugins/category/`: one category of our own vocabulary - `/plugins/new`, `/plugins/removed`, `/plugins/trending`: what appeared this week, what left a marketplace in the last 30 days, what grew where a marketplace publishes a figure - `/plugins/changes`: the change journal, one row per UTC day of the last 90 with how many plugins were new, gone, back and updated; `/plugins/changes/`: one day, each plugin with what changed (version, description, tools, settings, composition, transport, launch arguments and other fields) and on which marketplace. A day page is indexed once the day is over and at least 8 of its plugins have an indexable page - `/plugins/publishers`: publishers with at least two live plugins, by how many they publish, with spellings of one name merged (letter case, spaces and punctuation, organisation forms, a domain in place of a name, a known GitHub account); `/plugins/publisher/`: one publisher's plugins. No contact details of publishers are published - `/plugins/best/`: curated lists, each a fixed rule over what the plugins declare (where they run, the secrets and tools they declare, hooks, a verified mark, how many marketplaces list them, how fresh the last release is), stated on the page; only known plugins enter, and a list with fewer than 8 of them is `noindex`. The lists in the index are linked from `/plugins#lists` - `/plugins/compare`: the curated comparisons (pairs of the same type that are each other's closest match by what they say they do) and a form; `/plugins/compare?a=&b=` answers with a 302 redirect to the pair page when each side names one product, otherwise with a `noindex` picker - `/plugins/compare///vs//`: two plugins side by side, each figure under its marketplace's name; the smaller address comes first, and only curated pairs are indexed - `/ai-plugin-statistics`: the ecosystem in numbers, per marketplace, with the marketplace overlap matrix and a `Dataset` in its structured data - `/ai-plugin-statistics/capabilities`: how plugins run (remote, local, both) and what they ask for (secrets, tools, hooks, verified marks), by type, marketplace and category, counted over declarations - `/plugins/marketplaces`: the marketplaces we read, the official ones and the community marketplaces on GitHub that pass our automatic checks (not archived, not a copy, not a template, updated within 12 months, at least one readable plugin manifest), dated by the last pass. A missing marketplace can be sent through the form at `/plugins/submit` (`noindex`, no account) Every page exists in the five other languages under `/de/`, `/es/`, `/fr/`, `/pt/`, `/ru/` (for example `/ru/plugins/mcp//`). ### How to cite the plugin catalog - Attribute a figure to its marketplace and to our pass, for example: "about 1,500 pulls on Docker Hub as of the Ext Ops Panel marketplace pass of 2026-10-09". Each figure is the marketplace's own; figures of different marketplaces are never added up, and a marketplace that publishes no figure shows none: no number is not zero. - The "what it can do" page lists what marketplaces publish; it is not a security audit and never says that a plugin is safe or unsafe. A verified mark is the marketplace's statement. - We publish no contact details of plugin publishers, and keep no code, only names and short descriptions. - A comparison page compares two plugins, it does not rank them: a side is marked ahead only on a figure both marketplaces publish, freshness, a verified mark of the same marketplace or the number of marketplaces. - How the catalog is built, sources and attribution: `/extensions/methodology#plugins` (list rules: `#plugins-lists`, pair curation: `#plugins-pairs`). ## Ext Ops Panel banners Every Chrome extension and AI plugin in the catalog has a banner anyone can put on a site or in a README, with no account: an image from extops.dev inside a link to the product's card, saying "Listed on Ext Ops Panel" (or "Verified author on Ext Ops Panel" once its verified author turned the mark on), with a few live public facts of the card (a position in a public hub, users and their growth, rating, availability from the author's own monitoring, AI clients, marketplaces, version), each shown only above a floor and dated by the catalog pass. Image addresses are paths, without parameters: - `/extensions//banner/