Etsy Automation Manager is an MCP server I built so an AI agent can manage my own Etsy shops: listings, stock and prices, media, shipping profiles and orders. Giving an agent write access to a real shop is the risky part. A wrong call can publish a listing, which costs a listing fee, or change stock and prices. So the design starts from one rule: the agent can propose any change, but nothing runs until I have seen it and agreed.
The risk of a helpful agent
An agent that wants to help will act. Ask it to tidy up a listing and it may also adjust the price, the quantity or the shipping profile, all through valid API calls. The API cannot tell a change I wanted from one the agent guessed.
The server works with several Etsy accounts and shops in different regions, which makes a mistaken write easier to miss. Writes are where I wanted a hard stop that the agent cannot skip, even when it is confident. For extra caution there is a read-only login that registers only the read tools, so in that mode the agent cannot even see a write tool.
The term "Etsy" is a trademark of Etsy, Inc. This application uses the Etsy API but is not endorsed or certified by Etsy, Inc. The server is tested offline against mocked HTTP; tests against a live shop are still pending.
Preview first, then confirm
Every write is two calls. The first returns a preview with the effects, any warnings and the state before the change, and it changes nothing. The agent shows me that preview. Only after I agree does it send the same call with confirm set to true, and that works within ten minutes and only once.
The key is a hash of the tool, the shop and the arguments, so if the agent changes anything, it needs a new preview. New listings are always drafts, and publishing is a separate confirmed change. Tokens stay in files only I can read, and login uses OAuth with PKCE.
What the API does not allow
Before promising features, I mapped what the Etsy API cannot do. There is nothing for messages, ads, stats, coupons or refunds, marketplace search is out of scope, and there is no endpoint to copy a listing. That is why automatic product research and template products are planned, not built.
The server itself is tested offline against mocked HTTP, and tests against a live shop are still pending. Mapping the limits early kept the project honest about what an agent can really do in a shop.
Project: Etsy Automation Manager