npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

etchpress-mcp

v0.4.0

Published

Find EtchPress library items and kit pages and insert them into the Etch builder with your class prefix; compose sections from the library, place a section you wrote after EtchPress checks it, rewrite a block's words. From Claude Code, Codex, Cursor or an

Readme

EtchPress for AI agents

Lets your AI agent (Claude Code, Codex, Cursor, or anything that speaks MCP) find EtchPress sections, components and kit pages and put them straight into the page you have open in Etch, with your class prefix.

Ask in plain words: "add a three-plan pricing table after the hero", "build the Landscaping home page", "which testimonial layouts are there?". The agent searches the library, reads an item's options, and inserts it. The item goes from etchpress.com to your builder without passing through the agent, so a whole page costs it almost nothing.

You need an EtchPress Lifetime licence and Etch on WordPress or Etch Studio. Searching and reading items works without a licence key.

1. Start Etch's Connector

Etch's own Connector links your agent to the builder tab. In a terminal:

npx @digital-gravy/etch-connector serve

In WordPress, turn on Etch, Settings, AI, AI Connector (once). Open the page in the Etch builder (WordPress or Studio) and click the AI button in the left sidebar. If Chrome asks to let the site reach devices on your local network, choose Allow.

2. Add EtchPress to your agent

Your licence key is on your account page at etchpress.com.

Claude Code

claude mcp add etchpress --scope user --env ETCHPRESS_LICENCE_KEY=your-key --env ETCHPRESS_PREFIX=acme -- npx -y etchpress-mcp

Codex (~/.codex/config.toml)

[mcp_servers.etchpress]
command = "npx"
args = ["-y", "etchpress-mcp"]
env = { ETCHPRESS_LICENCE_KEY = "your-key", ETCHPRESS_PREFIX = "acme" }

Cursor (~/.cursor/mcp.json) and most other tools

{
  "mcpServers": {
    "etchpress": {
      "command": "npx",
      "args": ["-y", "etchpress-mcp"],
      "env": { "ETCHPRESS_LICENCE_KEY": "your-key", "ETCHPRESS_PREFIX": "acme" }
    }
  }
}

ETCHPRESS_PREFIX is optional. With acme, the library's .pricing-table arrives as .acme-pricing-table.

3. Check it

Ask your agent to "check the EtchPress setup". It says what is missing and how to fix it.

What the agent can do

| Tool | What it does | | --- | --- | | etchpress_search | Finds items and kit pages by plain words | | etchpress_item | An item's options, variants, states, tokens, what it needs and how to change it | | etchpress_insert | Puts an item (any of its variants) or a whole kit page into the open page, with your prefix, and with the words the agent wrote for its components (fills) | | etchpress_compose | For what you describe ("a pricing section for a cleaning company, three plans"), the library parts that fit and the props the agent may write words into; the agent chooses, writes, and inserts them with fills | | etchpress_place_section | When nothing in the library fits, the agent writes one section as Etch blocks with your prefix and sends it here; EtchPress checks it (block types, the prefix on every class, tokens only, no literal colours, no scripts, headings, every class styled) and places it when it passes, or returns the faults to fix | | etchpress_texts and etchpress_set_texts | Read the words of the block you selected in Etch, and write them back rewritten to your instruction ("shorter", "in Spanish", "for a plumber in Austin") | | etchpress_section_rules | The house rules for a section the agent writes, and for a component (props, a repeater with a loop, conditions); read before etchpress_place_section, which takes a component since 0.4.0 | | etchpress_copy_rules | The EtchPress copy rulebook and the facts sheet: four modes (clearer, for intent, for search, more human), nothing invented; read it before a rewrite (0.3.0) | | etchpress_status | Checks the licence, the Connector and the connected tabs | | etchpress_save | Writes an item to a file to paste by hand, when the Connector is not running |

Inserting does not save the page unless you ask the agent to. Cmd+Z in Etch undoes an insert. If a component in the item is already on your site in a different version, the agent asks you first: keep yours, or update it everywhere.

The composing tools (0.2.0) are the EtchPress composer for people who work through an agent: the model doing the choosing and the writing is your agent itself, on your own Claude or ChatGPT plan, so no API key is needed. A section the agent wrote passes the code checks here; look at it on your canvas in light and dark before you save (the contrast checks run in the EtchPress panel inside Etch).

Good to know

  • The first time it runs, this program adds an activation called "AI agent on " to your licence. You can see and remove it with your sites on your account page.
  • It runs on your computer. It talks to etchpress.com and to Etch's Connector, nothing else, and it only ever runs its own insert script in your builder. Your agent passes item names and ids, never code.
  • Etch Studio works too: connect the Studio builder tab the same way. The agent adds Studio's own navigation for a header, repairs the class links Studio's paste can drop, and gives a kit page's lists their demo rows as data sources you edit in Studio's Data panel. Showpieces need the EtchPress runtime files in the project's Asset Manager.

Help: [email protected]. Licence for the library: https://etchpress.com/licence/