Skip to content

Chrome extensions · MCP TOOL

search_extensions

Search the separate Chrome Web Store catalog.

Set up your assistant · Authentication and errors

When to use it

Find extensions by publisher words, category or observed metrics. Trending and rising accept category filtering only and can report not_ready or stale until usable scores exist.

Parameters

NameTypeRequiredDefaultAllowed valuesDescription
limitintegerNo20—Maximum number of results requested. Minimum: 1. Maximum: 50.
countbooleanNo——Request an exact total when supported; broad or deep searches can still omit it.
cursorintegerNo0—Zero-based offset; use the returned nextCursor to continue. Minimum: 0.
afterstringNo——Opaque keyset token from nextAfter; replaces the offset when provided. Minimum length: 1. Maximum length: 1024.
qstringNo——Words in an extension’s name or publisher. Minimum length: 1. Maximum length: 200.
categorystringNo——Store category ID; all means the overall chart where supported. Pattern: ^[a-z_]+(\/[a-z_]+)?$.
typestringNo"extension"extension, theme, appChrome Web Store listing type.
minUsersintegerNo——Minimum observed Chrome store users. Minimum: 0.
maxUsersintegerNo——Maximum observed Chrome store users. Minimum: 0.
minRatingnumberNo——Minimum star rating. Minimum: 0. Maximum: 5.
minRatingCountintegerNo——Minimum observed rating count. Minimum: 0.
updatedWithinDaysintegerNo——Require a store update within this many days. Minimum: 1. Maximum: 3650.
publishedWithinDaysintegerNo——Require publication within this many days. Minimum: 1. Maximum: 3650.
manifestVersionintegerNo——Chrome manifest version. Minimum: 1. Maximum: 3.
featuredbooleanNo——Filter by featured status.
sortBystringNo"users"users, ratingCount, rating, updated, published, trending, risingResult ordering.
orderstringNo"desc"asc, descExtension sort direction.

Defaults and constraints come from the published Zod input schema. “—” means no schema default or no enum restriction. Use JSON values of the listed type; additional handler rules are described above.

Example prompts

  • Find grammar extensions ordered by users.

Example call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_extensions",
    "arguments": {
      "q": "grammar",
      "sortBy": "users",
      "limit": 5
    }
  }
}

Example result

Illustrative, abridged JSON-RPC result. Only selected fields are shown; empty arrays illustrate a response with no rows. These are not current catalog observations. Parse the JSON inside content[].text.

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"data\":[],\"pagination\":{\"nextCursor\":null,\"nextAfter\":null,\"totalCount\":0,\"limit\":5}}"
      }
    ]
  }
}

Free vs paid results

Free keeps extension identities at absolute positions 1–10 and locks identities at 11+. User counts and ratings remain visible. Paid plans unlock identities.

Paid access does not fill coverage gaps or unknown values. Returned plan metadata and lock notes explain redaction where applicable. Read the full Free data policy.

Rate limits and usage credit

PlanCalls per tool / dayAll tools / week
Free550
Basic100700
Pro3002,500

Days reset at 00:00 UTC. The combined ISO week resets Monday at 00:00 UTC. Every served tool call counts, including cached reads. Failed or refused calls are released along with any charge. Compare plans.

After either allowance, Basic and Pro can opt in to pay $0.02 in usage credit per call to search_extensions. A call exceeding both windows is charged once. Free is refused past its allowances; paid plans without opt-in or enough credit are also refused with HTTP 402 / JSON-RPC -32004.

Credential request throttles and, for live keyword work, store-work throttles also apply. Follow retry instructions in the error reference.