Skip to main content
Glama

@pinpinmo/mcp

Manage your pinpinmo store from Claude, ChatGPT, Cursor, VS Code or any other Model Context Protocol client — products, orders, pricing, promotions, reviews, returns, payouts, posts and AI images — through the same API your pinpinmo AI team uses.

Your assistant can do what your store key allows, and no more:

  • Read operations run straight away.

  • Changes that need you (refunds, price changes, new products, unless you have loosened that in the dashboard) come back as waiting for owner: approve them in pinpinmo → Approvals, and the assistant retries once approved.

  • Owner-only actions (payment cards, payout setup, account details, approving returns) are refused — the assistant gives you a link to the right page of your pinpinmo dashboard.

1. Get a store key

In the pinpinmo dashboard open Agent access and create a key. It starts with sk_ppm_ and works for one store. Treat it like a password.

Related MCP server: mcp-ecom-agent-layer

2. Connect your client

Local (stdio) — Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, …

Requires Node.js 18+.

Claude Desktop — claude_desktop_config.json:

{
  "mcpServers": {
    "pinpinmo": {
      "command": "npx",
      "args": ["-y", "@pinpinmo/mcp"],
      "env": { "PINPINMO_API_KEY": "sk_ppm_…" }
    }
  }
}

Claude Code:

claude mcp add pinpinmo --env PINPINMO_API_KEY=sk_ppm_… -- npx -y @pinpinmo/mcp

Cursor — ~/.cursor/mcp.json (same shape as Claude Desktop above).

VS Code — .vscode/mcp.json:

{
  "servers": {
    "pinpinmo": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@pinpinmo/mcp"],
      "env": { "PINPINMO_API_KEY": "sk_ppm_…" }
    }
  }
}

Remote (Streamable HTTP) — ChatGPT, Claude connectors, and any client that takes a URL

Run the server where your client can reach it over HTTPS:

npx -y @pinpinmo/mcp --http --port 8787

It serves POST /mcp (and GET /health). Every request authenticates with your store key:

Authorization: Bearer sk_ppm_…

The server keeps no state and stores no keys; each request runs with the key it carries. Any MCP client that supports remote servers with a custom header (or bearer token) can use it. A remote server cannot read files on your computer, so upload_file is only in the local version; online images can be added by URL.

Tools

Tool

What it does

search_operations

Finds what your key can do: method, path, parameters and access level for each match.

call_operation

Calls one of those operations. Refuses paths that aren't in your key's list and owner-only actions.

get_approval

Checks whether you approved a change that came back as waiting for owner.

store_overview

Your account and store: plan, credits, payout status.

upload_file

Local (stdio) only. Uploads a file from your computer: a product image, the store logo or banner, or a digital product's download file.

Configuration

Variable

Default

PINPINMO_API_KEY

—

Store key (stdio mode).

PINPINMO_API_URL

https://api.pinpinmo.com

API base URL.

PINPINMO_DASHBOARD_URL

https://pinpinmo.com

Where owner-only links point.

Development

npm install
npm run build
npm test
PINPINMO_API_KEY=sk_ppm_… node smoke.mjs        # stdio, against the real API
PINPINMO_API_KEY=sk_ppm_… node smoke.mjs http   # remote mode on :8799

License

MIT

Related MCP Connectors

Related MCP Servers