Etsy Mcp Server

io.github.profplum700由 GitHub 账号 profplum700 发布v1.0.0更新于 Oct 24, 2026

A local read-only MCP server for Etsy shops, active listings, and listing variation inventory.

已验证STDIO仅桌面数据与分析商业与电商

概览

AI 生成的概览

本地只读 MCP 服务器,让助手读取 Etsy 店铺信息、在售商品以及商品变体库存。

可以做什么
  • 读取已连接店铺的名称、ID、货币、在售商品数量和网址
  • 列出在售商品,含标题、基础价格、货币、网址和状态,每页 1 至 50 条
  • 读取单个商品的标题、描述、标签、材质、语言、状态和价格
  • 读取商品的变体选项、价格和数量,并按分页偏移继续获取
  • 翻页浏览商品以核对基础价格和变体价格
适用场景
适合让助手在不离开对话的情况下查看或总结自己 Etsy 店铺的商品目录、商品文案、标签或变体定价。不适用于管理订单、修改商品或联系买家。
运行要求
需要 Node.js 24 或更高版本及 npm,通过 npx 以 stdio 在本地运行。需要你自己已获批的 Etsy 开发者应用 keystring 和 shared secret,在隐藏提示中输入,并完成仅授予 shops_r 和 listings_r 的 OAuth 授权。需要操作系统凭据存储(Credential Manager、登录钥匙串,或已解锁的 Secret Service,如 GNOME Keyring 或 KeePassXC),且与客户端处于同一环境和同一账户;设置过程使用 3030 端口的 localhost 回调。
安装前请注意
设置时会要求输入 Etsy 应用的 keystring 和 shared secret;README 要求只在隐藏提示中输入,切勿粘贴到聊天、配置文件、环境变量或命令参数中。凭据和 OAuth 令牌保存在操作系统凭据存储中,没有明文回退方案。工具为只读,不能修改商品、处理订单或发送消息,但会把店铺和商品数据发送给你的 AI 客户端。每个服务器进程在启动时绑定当时的活动店铺,切换店铺后需重启客户端。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Etsy Mcp Server,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Local Etsy MCP server

Connect your AI client to an Etsy shop through a local stdio MCP server. The tools read shop and listing data. They cannot change listings, process orders, or send messages. Your Etsy app credentials and OAuth tokens stay in the operating system credential store.

Prepare your computer

  • Install Node.js 24 or later, including npm. Check with node --version and npm --version.
  • Obtain your own approved Etsy developer app keystring and shared secret.
  • Register http://localhost:3030/oauth/redirect in your Etsy app if required. The Etsy Quick Start demonstrates localhost callbacks. The authentication guide also describes HTTPS callbacks. If Etsy rejects the local callback for your app, setup stops without saving credentials.
  • On Windows, run setup and your AI client under the same Windows account with Credential Manager available.
  • On macOS, unlock your login Keychain and run setup under the same account as your AI client.
  • On Linux, use an unlocked Secret Service implementation such as GNOME Keyring or KeePassXC, accessible through the same desktop D-Bus session. There is no plaintext or Linux kernel-keyring fallback.

A WSL distribution, container, remote development host, and your native desktop are separate execution environments. A connection saved in Windows Credential Manager is not automatically available inside WSL. Keep setup and the MCP process in the same environment and account.

Custom callback URIs passed to the local OAuth API must use loopback HTTP (localhost, 127.0.0.1, or [::1]) and an explicit port from 1 to 65535. Unsupported callbacks are rejected before opening a browser.

Connect your shop

Run this command in a local interactive terminal on macOS or Linux:

sh
npx --yes @profplum700/etsy-mcp-server@latest setup

On Windows, run this in PowerShell. The explicit .cmd avoids PowerShell script execution-policy restrictions on npm shims:

powershell
npx.cmd --yes @profplum700/etsy-mcp-server@latest setup

Enter the keystring and shared secret at the hidden prompts. Do not paste them into an AI chat, configuration file, environment variable, or command argument. Setup opens Etsy and requests exactly shops_r and listings_r. It verifies the shop before saving its credentials in the OS credential store.

When setup offers Codex registration, choose yes only if that is your client. Otherwise choose no and follow the relevant section below. Client registration never replaces Etsy setup.

The examples use npm's latest release. For controlled upgrades, replace @latest with an exact published version in both setup and client configuration. A source checkout or an unmerged PR can contain features that npm has not released yet.

Add the server to your AI client

These configurations use local stdio. Keep existing configuration entries and add only the etsy-mcp-server entry. Do not configure an HTTP URL or put Etsy secrets in these files.

Claude Desktop

Open Settings > Developer > Edit Config. The standard files are ~/Library/Application Support/Claude/claude_desktop_config.json on macOS and %APPDATA%\Claude\claude_desktop_config.json on Windows. Use Edit Config to locate the file on Linux rather than assuming a path. See the official local-server guide.

On macOS or Linux, add:

json
{	"mcpServers": {		"etsy-mcp-server": {			"command": "npx",			"args": ["--yes", "@profplum700/etsy-mcp-server@latest", "serve"]		}	}}

On Windows, use the command processor to launch the npm command shim:

json
{	"mcpServers": {		"etsy-mcp-server": {			"command": "cmd.exe",			"args": ["/d", "/c", "npx.cmd", "--yes", "@profplum700/etsy-mcp-server@latest", "serve"]		}	}}

Quit and reopen Claude Desktop. Check that the server and its tools appear. A GitHub repository import or ZIP import is not an npm MCP installation. This repository does not currently distribute a validated .mcpb extension. See the extension feasibility review.

Claude Code

On macOS or Linux:

sh
claude mcp add --transport stdio --scope user etsy-mcp-server -- npx --yes @profplum700/etsy-mcp-server@latest serveclaude mcp list

On native Windows in PowerShell:

powershell
claude mcp add --transport stdio --scope user etsy-mcp-server -- cmd.exe /d /c npx.cmd --yes @profplum700/etsy-mcp-server@latest serveclaude mcp list

Use /mcp inside Claude Code to inspect the connection. The Claude Code documentation describes user scope and the -- separator. If you use Claude Code in WSL, follow the Linux setup requirements inside WSL.

OpenAI Codex

If setup already added the server, do not add a duplicate. Otherwise, on macOS or Linux:

sh
codex mcp add etsy-mcp-server -- npx --yes @profplum700/etsy-mcp-server@latest servecodex mcp list

On native Windows in PowerShell:

powershell
codex mcp add etsy-mcp-server -- cmd.exe /d /c npx.cmd --yes @profplum700/etsy-mcp-server@latest servecodex mcp list

Restart the relevant local Codex client and inspect /mcp in the CLI. Codex MCP documentation also covers configuration through config.toml. This local command does not provision access in a hosted cloud task.

Cursor

Add the Claude Desktop JSON block for your operating system to your personal Cursor configuration:

  • macOS and Linux: ~/.cursor/mcp.json.
  • Windows: %USERPROFILE%\.cursor\mcp.json.

Add "type": "stdio" inside the etsy-mcp-server object. For one project, use .cursor/mcp.json in that project instead. Open Cursor's MCP settings and check that etsy-mcp-server is enabled and connected. These locations and the mcpServers structure follow Cursor's MCP documentation.

VS Code with GitHub Copilot

For current Copilot harness sessions, open Chat: Open Customizations > MCP Servers > Add Server. Select Command (stdio) and the global Copilot destination. Enter the command and argument array from the Claude Desktop block for your OS. The personal file is $COPILOT_HOME/mcp-config.json, or ~/.copilot/mcp-config.json when unset. It uses mcpServers. See Add MCP servers.

For the VS Code configuration format, run MCP: Open User Configuration. On macOS or Linux, add:

json
{	"servers": {		"etsy-mcp-server": {			"type": "stdio",			"command": "npx",			"args": ["--yes", "@profplum700/etsy-mcp-server@latest", "serve"]		}	}}

On Windows, replace that server's command and args with:

json
{	"command": "cmd.exe",	"args": ["/d", "/c", "npx.cmd", "--yes", "@profplum700/etsy-mcp-server@latest", "serve"]}

Keep "type": "stdio". For a local workspace configuration, use .vscode/mcp.json. Do not copy its servers wrapper into the portable Copilot format. The configuration reference distinguishes these formats. Restart the server, inspect its output, and enable its tools in the selected Copilot session. A remote workspace needs its own runtime and credential-store access.

Gemini CLI

Merge the Claude Desktop JSON block for your operating system into your user settings:

  • macOS and Linux: ~/.gemini/settings.json.
  • Windows: %USERPROFILE%\.gemini\settings.json.

Keep any existing settings alongside mcpServers. Restart Gemini CLI, then run /mcp to inspect the connection. Leave tool confirmations enabled. The Gemini CLI MCP guide documents this format and the optional gemini mcp add registration command.

Verify the connection

Ask your client to call etsy_get_my_shop and show the returned shop ID and name. Confirm that they match the shop you intended. Then ask for one active listing with etsy_list_active_listings and limit: 1. A configured server or successful startup alone does not prove access to Etsy.

The server communicates over stdin and stdout. Diagnostics go to stderr. A manual serve command waits for an MCP client and is not an interactive shell.

Every server process binds to the active shop when it starts. Changing the active shop does not move an already running AI session to another shop. After changing shops, restart that client's MCP server. Successful tool results identify the shop they queried.

Diagnose local problems

Run the diagnostic from a terminal in the same environment as the client:

sh
npx --yes @profplum700/etsy-mcp-server@latest doctornpx --yes @profplum700/etsy-mcp-server@latest doctor --json

On Windows, use npx.cmd in place of npx. The diagnostic checks local prerequisites and saved-connection readiness without making an Etsy request or changing saved credentials. It cannot prove network access, OAuth refresh, client registration, or live API permissions. Its JSON report has schema_version, ok, and a checks array with code, status, and message. Statuses are pass, warn, or fail. A failure returns exit code 1. Warnings alone return exit code 0. It does not print shop names, IDs, local paths, or credential values. Follow the actions it reports. An unreleased source checkout must be built and run locally to test its new diagnostic.

SymptomAction
node or npx is missing in client outputInstall Node.js 24 or later, then restart the client so it inherits PATH.
PowerShell refuses to run npx.ps1Use npx.cmd in the terminal. Use the Windows configuration above in the client.
Linux Secret Service is unavailableStart and unlock your desktop keyring. Run the client in that same D-Bus session.
macOS denies Keychain accessUnlock the login Keychain and review the OS access prompt for the Node process.
No saved connection or rejected scopesRun setup in an interactive terminal and approve only shops_r and listings_r.
Setup cannot bind its callback portClose the process using port 3030, then rerun setup. Do not change the callback to an unregistered address.
Terminal works but a graphical client cannot find the commandResolve the executable with command -v npx on macOS or Linux, or where.exe npx.cmd on Windows. Use its absolute path in the client. For Windows paths with spaces, prefer the direct Node launch below.
Server connects but returns the previous shopSelect the intended profile, then restart the MCP server in that client.

To avoid npm startup downloads and Windows command-shim quoting, install a reviewed version globally with npm install --global @profplum700/etsy-mcp-server@latest. Use npm root --global to find its package directory and node -p "process.execPath" to find Node. Configure the absolute Node executable as command, with the absolute <npm-root>/@profplum700/etsy-mcp-server/dist/cli.js path and serve as separate args. Keep paths as JSON strings with escaped backslashes on Windows. This fallback still requires the same OS credential store.

Manage shop profiles

Run setup again to connect another shop. Each successful setup adds or updates that shop and makes it active without replacing other shops.

sh
npx --yes @profplum700/etsy-mcp-server@latest statusnpx --yes @profplum700/etsy-mcp-server@latest use "Test Shop"npx --yes @profplum700/etsy-mcp-server@latest setup --reuse-app --manual-browser

The last command reuses saved developer-app credentials. Open its authorization URL in the browser profile signed in to the intended Etsy account.

sh
npx --yes @profplum700/etsy-mcp-server@latest disconnectnpx --yes @profplum700/etsy-mcp-server@latest disconnect --shop "Test Shop"npx --yes @profplum700/etsy-mcp-server@latest disconnect --allnpx --yes @profplum700/etsy-mcp-server@latest remove-codex

Use npx.cmd on Windows. Disconnect asks before clearing credentials. Without options it targets the active shop. --shop targets one saved shop and --all clears every shop. Removing the Codex configuration leaves saved Etsy connections intact.

Available tools

  • etsy_get_my_shop reads the connected shop's name, ID, currency, active listing count, and URL.
  • etsy_list_active_listings returns active listings with title, base price, currency, URL, and state. Request 1 to 50 listings per page with offsets up to 10,000.
  • etsy_get_listing reads a connected-shop listing's title, description, tags, materials, language, state, base price, and URL for a content review. It rejects listings owned by another shop.
  • etsy_get_listing_inventory returns variation options, prices, and quantities for a listing owned by the connected shop. Follow next_offset until it is null. Each page contains one entry per offering, so a product can appear more than once.

For a price-range review, page through active listings and filter their base prices. Use inventory for variation prices. These tools do not determine shipping eligibility, profit, order revenue, or conversion rate. All tools remain read-only and request no scopes beyond shops_r and listings_r.

Client instructions were checked against the linked official documentation on 2026-10-24. They describe supported configuration formats, not a claim that every client and OS combination has been exercised. Consult the implementation report and CI results for executed platform tests.

来源:packages/etsy-mcp-server/README.md,提交 2c83c1a

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.0最新Sep 26, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。