Google API: Get Chrome extension details
Looks up a Chrome Web Store extension by name or store link and returns its public listing: developer, users, rating, version, update date, size, category, description, declared privacy practices, website and store link. Permissions are null when the listing does not show them.
Unofficial. Not affiliated with or endorsed by Google.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Extension, required
extension Extension name or Chrome Web Store link, for example Grammarly or https://chromewebstore.google.com/detail/grammarly-ai-writing-assi/kbfnbcaeplbcioakkpcpgfkobkghlhen.
Grammarly
Input as JSON
{ "extension": "Grammarly"}Output
{ "size": "16.87MiB", "version": "14.1333.0", "category": "Communication", "developer": "Grammarly", "store_link": "https://chromewebstore.google.com/detail/grammarly-ai-writing-assi/kbfnbcaeplbcioakkpcpgfkobkghlhen" , "permissions": null, "star_rating": 4.5, "extension_id": "kbfnbcaeplbcioakkpcpgfkobkghlhen", "rating_count": 43131, "website_link": "http://grammarly.com/" , "extension_name": "Grammarly: AI Writing Assistant and Grammar Checker App", "number_of_users": 40000000, "last_updated_date": "2026-09-28", "privacy_practices": [ "The developer declares that this extension handles personally identifiable information, personal communications, location, user activity, website content.", "The developer declares that your data is not being sold to third parties, outside of the approved use cases.", "The developer declares that your data is not being used or transferred for purposes that are unrelated to the item's core functionality." ], "short_description": "Grammarly for Chrome helps you write with confidence. Get AI support for grammar, clarity, and tone, from first draft to final edit."}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"chromewebstore.google.com/get_extension","input":{"extension":"Grammarly"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "chromewebstore.google.com/get_extension" , "input": { "extension": "Grammarly" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "chromewebstore.google.com/get_extension" , "input": { "extension": "Grammarly" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run chromewebstore.google.com/get_extension# with {"extension":"Grammarly"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "extension" ], "properties": { "extension": { "type": "string", "description": "Extension name or Chrome Web Store link, for example Grammarly or https://chromewebstore.google.com/detail/grammarly-ai-writing-assi/kbfnbcaeplbcioakkpcpgfkobkghlhen." } }}Output schema
{ "type": "object", "required": [ "extension_name", "developer", "number_of_users", "star_rating", "rating_count", "version", "last_updated_date", "size", "category", "short_description", "permissions", "privacy_practices", "website_link", "store_link", "extension_id" ], "properties": { "size": { "type": [ "string", "null" ], "description": "Download size as shown on the listing." }, "version": { "type": [ "string", "null" ], "description": "Published version." }, "category": { "type": [ "string", "null" ], "description": "Store category." }, "developer": { "type": [ "string", "null" ], "description": "Publisher name shown on the listing." }, "store_link": { "type": "string", "description": "Link to this Chrome Web Store listing." }, "permissions": { "type": [ "array", "null" ], "items": { "type": "string" }, "description": "Permissions requested when displayed on the listing; null when absent." }, "star_rating": { "type": [ "number", "null" ], "description": "Displayed star rating out of five." }, "extension_id": { "type": "string", "description": "32-letter Chrome extension identifier.", "x-fous-developer": true }, "rating_count": { "type": [ "integer", "null" ], "description": "Number of user ratings." }, "website_link": { "type": [ "string", "null" ], "description": "Publisher website, if listed." }, "extension_name": { "type": "string", "description": "Name of the extension." }, "number_of_users": { "type": [ "integer", "null" ], "description": "Number of users shown on the listing." }, "last_updated_date": { "type": [ "string", "null" ], "format": "date", "description": "Last updated date in YYYY-MM-DD format." }, "privacy_practices": { "type": "array", "items": { "type": "string" }, "description": "Plain sentences describing declared data handling practices." }, "short_description": { "type": [ "string", "null" ], "description": "Short listing description." } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
chromewebstore.google.com/get_extension- Returns
- extension name, developer, users, star rating, rating count, version, last updated date, size, category, short description, permissions, privacy practices, website, store link, extension ID
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method chromewebstore.google.com/get_extension with the inputs above.
Ask your agent
- How many users does the uBlock Origin extension have and when was it last updated?
- Pull up the Chrome Web Store listing for Honey — I need the developer name, rating, and what data it says it collects.
- What version is the LastPass browser extension on right now, and how big is it?
- Check this extension for me: https://chromewebstore.google.com/detail/dark-reader/eimadpbcbfnmbkopoojfekhnkhfdbg — who makes it and what's its star rating and number of reviews?
- Before I install the Google Translate extension for Chrome, show me its category, description, privacy practices, and official website.
See more
All Google methodsFinds Chrome Web Store extensions by keywords in store order, with each listing's developer, users, rating, rating count, short description and store link. Some listings omit developer, users or ratings.
chromewebstore.google.com/search_extensionsGets a public Google Play app listing by app name or Play Store link, with developer, rating, downloads, price, what's new, descriptions and data safety highlights.
play.google.com/get_appGets public user reviews for an Android app on Google Play. The app can be given by name, Play Store link, or app ID.
play.google.com/get_app_reviewsFinds Android apps on Google Play by keywords, in Play search order, with each listing's developer, star rating, price and currency for the chosen country, download range and link. Results are limited to apps shown on the public search page.
play.google.com/search_appsLooks up a public Google Maps place by name and location and returns its profile: address, rating, hours, phone, website and photos.
google.com/get_placeFinds a place on Google Maps by name and location and returns its public reviews in the chosen order.
google.com/get_place_reviewsFinds a verified advertiser in the Google Ads Transparency Center by company name or website domain and returns its Google ads with dates, regions, previews and ad pages. Counts may be approximate; regions and media previews are read for the first 40 ads.
adstransparency.google.com/get_company_adsSearches Google Books by words, author, subject or ISBN, with language, free-ebook and newest-first options. Ratings counts are not shown by the public book feed; newest sorts the available matches by publication date.
books.google.com/search_books