Skip to content

Add a Cursor plugin manifest and drop scraping language from listing copy - #16

Merged
kev1n merged 1 commit into
mainfrom
cursor-marketplace-manifest
Sep 5, 2026
Merged

kev1n merged 1 commit into
mainfrom
cursor-marketplace-manifest

Conversation

@kev1n

@kev1n kev1n commented Sep 4, 2026

Copy link
Copy Markdown
Member

Why

Two things blocked us, both in this repo.

Cursor Marketplace. cursor.com/marketplace accepts only a root plugin.json (Agent Plugins standard) or .cursor-plugin/plugin.json. It does not read .claude-plugin/plugin.json, which is all this repo had, so the repo could not be submitted. Firecrawl, Exa, Apify and Bright Data are already listed there; AnyAPI is not.

Listing copy. We were calling the product scraping, and pairing platform names with collection verbs (scrape linkedin, scrape instagram). That is the wrong description of what a customer buys, and it is a liability on marketplaces owned by the platforms themselves.

What changed

  • .cursor-plugin/plugin.json - new. Validated against cursor/plugins schemas/plugin.schema.json with jsonschema.Draft7Validator. Points skills at ./skills/ and mcpServers at the existing ./.mcp.json, and declares ANYAPI_API_KEY as a plugin variable so Cursor prompts the user for it and no secret lives in the repo.
  • assets/logo.png - new, from the brand kit's anyapi-circle-512.png. Cursor resolves a relative logo path to a raw GitHub URL.
  • Copy in README.md, .claude-plugin/plugin.json, .claude-plugin/marketplace.json and gemini-extension.json now says what a customer gets - social media, search and SEO, maps and local business data, company and contact enrichment, e-commerce, and structured JSON from any public web page.

What did not change

skills/anyapi/SKILL.md still says scraping. It is byte-gated by scripts/check_skills.py against the canonical skill served from getanyapi.com/agent-onboarding/SKILL.md, so editing it here would only create drift. Changing it is a product-copy decision in the main repo (src/lib/agentSkill.ts).

web.scrape is a real SKU identifier and stays as it is.

Proof

bash scripts/check.sh
skills checks passed (1 manifest-listed skill)

.cursor-plugin/plugin.json validates clean against Cursor's published schema.

…copy

Cursor's marketplace accepts only a root plugin.json (Agent Plugins) or
.cursor-plugin/plugin.json; it does not read .claude-plugin/plugin.json, so
this repo could not be submitted to cursor.com/marketplace. Adds the Cursor
manifest, validated against cursor/plugins schemas/plugin.schema.json, with
the API key declared as a plugin variable so no secret lives in the repo.

Listing copy now describes what a customer gets - social media, search and
SEO, maps, enrichment, e-commerce, and structured JSON from any public web
page - instead of calling it scraping, and no platform is paired with a
data-collection verb. SKILL.md is byte-gated against the canonical skill
served from getanyapi.com and is unchanged here.
@kev1n
kev1n merged commit 950dd1a into main Sep 5, 2026
1 check passed
@kev1n
kev1n deleted the cursor-marketplace-manifest branch September 5, 2026 07:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant