πŸ‡΅πŸ‡° Now shipping to 38 countries β€” white-label, no minimums

MCP

Connect your AI assistant to CeePrinto in about five minutes. It can then answer questions from our docs and, with your API key, manage designs, products, publishing, orders, payouts and support tickets for you.

Server address

Every app below connects to this one address. Your API key goes in an Authorization header, never in the address.

MCP server URL
https://ceeprinto.com/wp-json/ceeprinto/mcp

What an AI assistant can do once connected, the two ways to connect (with or without a key) and the server address.

The CeePrinto MCP server lets an AI assistant such as Claude, Cursor or GitHub Copilot answer questions from our docs and, with your API key, work on your CeePrinto account for you.

MCP (Model Context Protocol) is an open standard that lets AI apps use outside tools. Once your app is connected, you can ask it things like "Is design 42 ready to publish?" or "Where is order #1001?". The assistant calls CeePrinto for the answer instead of guessing.

Two ways to connect

Without a key With an API key
What it can do Search and read the CeePrinto documentation Everything in the left column, plus work on your account: designs, products, publishing, orders, payouts and support tickets
What it can see Only the public docs Only what your key's permissions allow
Setup Add the server address Create a key, then add the server address and the key
Good for Quick answers, trying it out Day-to-day work on your store

Supported apps

App Account tools (with key) Help only (no key) Setup guide
Claude Code Yes Yes Claude Code
Claude Desktop Yes (needs Node.js) Yes Claude Desktop
Cursor Yes Yes Cursor
VS Code with GitHub Copilot Yes Yes VS Code
Claude.ai and ChatGPT on the web Not yet Yes Web apps
Windsurf and other MCP apps Yes Yes Other apps

What it will never do

  • See or change your password, bank or payout details.
  • Do anything your key's permissions don't allow.
  • Disconnect a store, delete listings, or manage webhooks. Do these yourself in My Account.
  • Place an order without first showing you a quote to confirm.

Start here

Before you start

What you need: a CeePrinto merchant account, an AI app that supports MCP, and for some apps Node.js.

You need three things, and setup takes about five minutes.

You need Why How to check
A CeePrinto merchant account API keys belong to your account. You can skip this for help-only use. Sign in and open My Account. You should see Store Connections in the menu.
An AI app that supports MCP This is where you talk to the assistant. See Supported apps. Update the app to its latest version first.
Node.js 18 or newer (Claude Desktop and some other apps only) These apps reach CeePrinto through a small bridge program, mcp-remote, which runs on Node.js. In a terminal, run node --version. It should print v18 or higher. If not, install the LTS version from nodejs.org.

To publish designs you also need at least one connected store. If you haven't connected one yet, follow Get Started: connect Shopify or WordPress first. Everything else works without a store.

Create a key in My Account, choose its permissions and copy the secret, which is shown only once.

An API key tells CeePrinto which account the assistant is working for and what it is allowed to do. Skip this step if you only want help-only answers.

  1. Open the API Keys page

    Sign in to CeePrinto and go to My Account β†’ Store Connections. Under Developer, open the API Keys tab. Go straight to API Keys.

  2. Name the key

    In Create a key, type a Name that says which app and device it is for, for example Claude Desktop – work laptop. Use a separate key for each app so you can switch one off without affecting the others.

  3. Tick the permissions

    Under Permissions, tick the boxes for the preset you want from the table below. Only give the assistant what it needs; you can always make a second key later.

  4. Create the key and copy it

    Click Create key. A box titled Your new API key appears with a key that starts with cp_live_ and has a dot in the middle. Copy the whole key into a password manager now: it is shown only once. If you lose it, revoke it and create a new one.

  5. Optional: use the ready-made command

    Just below, the Use with AI assistants box shows the Claude Code command with your new key already filled in. That only works on this page load, so copy it now if you plan to use Claude Code.

Which permissions to tick

Preset Tick these permissions The assistant can
Look things up (recommended to start) Read designs Β· Read the blank-product catalog Β· Read store listings Β· Read orders Β· Read your support tickets Answer questions about your designs, blanks, stores, products, orders, payouts and tickets. It can't change anything.
Design and publish Everything above, plus Create designs from images Β· Create and remove store listings Also create designs from images, generate print artwork, create products and publish them to your stores
Full assistant Everything above, plus Submit orders Β· Open and reply to support tickets Also place orders (always after showing you a quote) and open or reply to support tickets

You never need Connect and disconnect stores or Manage webhook subscriptions for the assistant. Leave them unticked.

Permissions can't be changed after a key is created. To give the assistant more (or less), create a new key, update your app with it, then revoke the old one.

Step 2: Connect your app

Claude Code

Add CeePrinto to Claude Code with one terminal command, then check it is connected.

Claude Code is Anthropic's coding assistant for the terminal. One command connects it to CeePrinto.

  1. Install Claude Code (if you haven't)

    Follow the install steps at claude.com/claude-code, or with Node.js installed run:

    Install
    npm install -g @anthropic-ai/claude-code
  2. Add the CeePrinto server

    In a terminal, run the command below. Replace cp_live_YOUR_KEY with your whole key and keep the word Bearer and the space after it. --scope user makes CeePrinto available in every folder you open Claude Code in.

    With your API key
    claude mcp add --transport http --scope user ceeprinto https://ceeprinto.com/wp-json/ceeprinto/mcp \
      --header "Authorization: Bearer cp_live_YOUR_KEY"

    For help-only answers without a key, leave out the --header line:

    Help only
    claude mcp add --transport http --scope user ceeprinto https://ceeprinto.com/wp-json/ceeprinto/mcp
  3. Check it is connected

    Check
    claude mcp list

    You should see ceeprinto followed by βœ“ Connected. Then start Claude Code with claude and type /mcp: ceeprinto is listed as connected, and you can open it to see its tools.

  4. Try it

    Ask: "Using CeePrinto, who am I and what can this key do?" Claude Code asks for permission the first time it uses each tool. Approve it, and it answers with your account name and the key's permissions. More in Test the connection.

Share the setup with a team without sharing a key

To give everyone working in one project the same setup, put a .mcp.json file in the project folder. It reads the key from an environment variable, so the file itself holds no secret:

.mcp.json
{
  "mcpServers": {
    "ceeprinto": {
      "type": "http",
      "url": "https://ceeprinto.com/wp-json/ceeprinto/mcp",
      "headers": {
        "Authorization": "Bearer ${CEEPRINTO_API_KEY}"
      }
    }
  }
}

Each person sets their own key before starting Claude Code, for example export CEEPRINTO_API_KEY=cp_live_… (macOS/Linux) or setx CEEPRINTO_API_KEY cp_live_… (Windows, then open a new terminal).

Change or remove the key

Remove
claude mcp remove ceeprinto --scope user

To switch to a new key, remove the server, then run the claude mcp add command again with the new key.

Step 2: Connect your app

Claude Desktop

Add CeePrinto to the Claude Desktop config file through the mcp-remote bridge.

Claude Desktop reaches CeePrinto through mcp-remote, a small bridge program that runs on Node.js. You add it once to Claude's config file.

Check Node.js first: run node --version in a terminal. You need v18 or newer. Install the LTS version from nodejs.org if it is missing, then restart your computer so Claude Desktop can find it.

  1. Open Claude's config file

    In Claude Desktop, open Settings (macOS: Claude menu β†’ Settings…; Windows: ☰ menu β†’ File β†’ Settings). Choose Developer, then Edit Config. This opens the folder that holds claude_desktop_config.json. Open that file in a text editor such as TextEdit (plain text mode), Notepad or VS Code.

    You can also open it directly:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. Paste the CeePrinto entry

    If the file is empty or has only {}, replace everything with the text below. If it already has an "mcpServers" section, add just the "ceeprinto": { … } block inside it and put a comma after the entry before it.

    claude_desktop_config.json
    {
      "mcpServers": {
        "ceeprinto": {
          "command": "npx",
          "args": [
            "-y",
            "mcp-remote",
            "https://ceeprinto.com/wp-json/ceeprinto/mcp",
            "--header",
            "Authorization:${CP_AUTH}"
          ],
          "env": {
            "CP_AUTH": "Bearer cp_live_YOUR_KEY"
          }
        }
      }
    }

    Replace only cp_live_YOUR_KEY. Keep Bearer (with its space) in front of it. Authorization:${CP_AUTH} is written without a space on purpose: the key is passed through env so that spaces survive on Windows.

  3. Save and restart Claude Desktop completely

    Save the file. Then quit Claude Desktop fully, not just close its window: ⌘Q on macOS, or right-click the Claude icon in the Windows system tray and choose Quit. Open it again. The first start takes a few seconds longer while npx downloads mcp-remote.

  4. Check it is connected

    Start a new chat and click the tools button (the sliders icon, labelled "Search and tools") below the message box. ceeprinto is listed and switched on, with its tools inside. Ask "Using CeePrinto, who am I?" and choose Allow when Claude asks to use the tool.

Windows: if the server doesn't start

Some Windows setups can't run npx directly. Change the first two settings of the entry to run it through cmd:

Windows variant
"command": "cmd",
"args": ["/c", "npx", "-y", "mcp-remote", "https://ceeprinto.com/wp-json/ceeprinto/mcp", "--header", "Authorization:${CP_AUTH}"],

Where the logs are

If CeePrinto doesn't appear, Claude writes what went wrong to a log file:

  • macOS: ~/Library/Logs/Claude/mcp-server-ceeprinto.log
  • Windows: %APPDATA%\Claude\logs\mcp-server-ceeprinto.log

See Troubleshooting for what the common messages mean.

Help only, without a key or Node.js

For answers from our docs only, go to Settings β†’ Connectors β†’ Add custom connector, name it CeePrinto, paste the server address https://ceeprinto.com/wp-json/ceeprinto/mcp and click Add. Custom connectors depend on your Claude plan.

Step 2: Connect your app

Cursor

Add CeePrinto to Cursor's mcp.json and use it from Agent chat.

Cursor connects to CeePrinto directly over HTTP. You add one entry to its mcp.json file.

  1. Open Cursor's MCP settings

    Open Cursor Settings (βŒ˜β‡§J on macOS, Ctrl+Shift+J on Windows/Linux) and choose MCP (called Tools & Integrations in newer versions). Click New MCP Server (or Add Custom MCP). Cursor opens ~/.cursor/mcp.json.

  2. Paste the CeePrinto entry

    If the file already has an "mcpServers" section, add only the "ceeprinto" block inside it.

    ~/.cursor/mcp.json
    {
      "mcpServers": {
        "ceeprinto": {
          "url": "https://ceeprinto.com/wp-json/ceeprinto/mcp",
          "headers": {
            "Authorization": "Bearer cp_live_YOUR_KEY"
          }
        }
      }
    }

    Replace cp_live_YOUR_KEY with your whole key. For help only, delete the whole "headers" part (and the comma before it).

  3. Save and check it is connected

    Save the file and go back to the MCP settings. ceeprinto shows a green dot and the number of tools. Make sure its toggle is on. A red dot means the key or address is wrong; see Troubleshooting.

  4. Use it in Agent chat

    Open the chat panel (⌘L / Ctrl+L), switch it to Agent and ask "Using CeePrinto, who am I?". Cursor asks before running each tool. Keep that on for anything that changes your account.

Only for one project

Put the same entry in .cursor/mcp.json inside the project folder instead. That file contains your key, so add it to .gitignore and never commit it.

Step 2: Connect your app

VS Code (GitHub Copilot)

Add CeePrinto to VS Code's mcp.json with the key stored as a prompted secret, then use it in Copilot agent mode.

VS Code with GitHub Copilot can use CeePrinto in agent mode. VS Code asks for your key once and stores it securely, so it never sits in a file.

You need a recent VS Code (1.102 or newer) with the GitHub Copilot extension signed in. MCP tools only run in Copilot Chat's Agent mode.

  1. Open the MCP configuration

    Open the Command Palette (βŒ˜β‡§P / Ctrl+Shift+P) and run MCP: Open User Configuration. That makes CeePrinto available in every workspace. To use it in one project only, create .vscode/mcp.json in that project instead.

  2. Paste the CeePrinto entry

    If the file already has a "servers" or "inputs" section, merge these entries into them.

    mcp.json
    {
      "inputs": [
        {
          "type": "promptString",
          "id": "ceeprinto-key",
          "description": "CeePrinto API key (starts with cp_live_)",
          "password": true
        }
      ],
      "servers": {
        "ceeprinto": {
          "type": "http",
          "url": "https://ceeprinto.com/wp-json/ceeprinto/mcp",
          "headers": {
            "Authorization": "Bearer ${input:ceeprinto-key}"
          }
        }
      }
    }
  3. Start the server and enter your key

    Save the file. Click Start above the "ceeprinto" entry. VS Code asks for the CeePrinto API key: paste only the key (cp_live_…), without Bearer. The entry then shows Running and the number of tools.

  4. Use it in Copilot Chat

    Open Copilot Chat, switch the mode to Agent, and click the tools icon to check the CeePrinto tools are ticked. Ask "Using CeePrinto, who am I?" and approve the tool when asked.

To change the key later, run MCP: List Servers, choose ceeprinto, then choose to reset the stored input, or remove and re-add the entry.

Step 2: Connect your app

Claude.ai and ChatGPT (help only)

Add CeePrinto as a custom connector in a web chat app to answer questions from our docs.

Claude.ai and ChatGPT in the browser can add CeePrinto as a custom connector. For now these connectors are help-only: they answer questions from our docs but can't use an API key.

Web chat apps connect to outside servers by signing in, not by sending a key. Until CeePrinto supports that sign-in, use Claude Desktop, Claude Code, Cursor or VS Code for anything that touches your account.

Claude.ai

  1. Add a custom connector

    On claude.ai, open Settings β†’ Connectors and click Add custom connector. On Team and Enterprise plans, an Owner may need to add it for the organisation first.

  2. Enter the server address

    Name it CeePrinto and paste https://ceeprinto.com/wp-json/ceeprinto/mcp as the URL. Leave the advanced OAuth fields empty. Click Add.

  3. Turn it on in a chat

    In a chat, open the tools menu below the message box and switch CeePrinto on. Ask "Using CeePrinto, how do COD payouts work?"

ChatGPT

Where your ChatGPT plan offers custom connectors (look under Settings β†’ Apps & Connectors; some plans need Developer mode switched on under Advanced settings), create a connector with:

Field Value
Name CeePrinto
MCP server URL https://ceeprinto.com/wp-json/ceeprinto/mcp
Authentication No authentication

Menu names in web apps change often. If yours look different, search the app's help for "custom connector" or "MCP connector".

Step 2: Connect your app

Other apps

Settings for Windsurf and any other MCP client, over HTTP or through the mcp-remote bridge.

Any app that supports MCP can connect. Use its remote (HTTP) server setting if it has one, otherwise the mcp-remote bridge.

Option A: the app supports remote HTTP servers with headers

Enter these three values wherever the app asks for a remote MCP server:

Setting Value
Transport / type http (also called "Streamable HTTP")
URL https://ceeprinto.com/wp-json/ceeprinto/mcp
Header Authorization: Bearer cp_live_YOUR_KEY (leave out for help only)

Option B: the app only runs local (stdio) servers

Run CeePrinto through the mcp-remote bridge. It needs Node.js 18+. Most apps take a JSON entry like this one:

mcp-remote entry
{
  "mcpServers": {
    "ceeprinto": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://ceeprinto.com/wp-json/ceeprinto/mcp", "--header", "Authorization:${CP_AUTH}"],
      "env": { "CP_AUTH": "Bearer cp_live_YOUR_KEY" }
    }
  }
}

Windsurf

Open Windsurf Settings β†’ Cascade β†’ MCP servers and choose View raw config. This opens ~/.codeium/windsurf/mcp_config.json. Paste the Option B entry above, save, and click Refresh in the MCP panel. ceeprinto appears with its tools, ready to use in Cascade.

For developers building their own client

  • Protocol: MCP over Streamable HTTP. Responses are single JSON bodies; the server doesn't open SSE streams, so GET returns 405.
  • Sessions: send the Mcp-Session-Id header you get back from initialize on every later request. DELETE the endpoint to end a session.
  • Auth: Authorization: Bearer <key> or X-CP-Key: <key>. A session belongs to the credential that opened it.
  • Browser-based clients can't connect yet, because of cross-origin (CORS) limits.
  • Full tool reference: MCP server (AI assistants) in the API docs.

Step 3: Use it

Test the connection

Three prompts that confirm the connection, your key and its permissions.

Ask these three questions in order. Each one checks one more piece of the setup.

# Ask What you should see What it proves
1 "Using CeePrinto, how do COD payouts work?" An answer with a link to the CeePrinto docs The app can reach the server
2 "Using CeePrinto, who am I and what can this key do?" Your account name and the key's permissions Your key is being sent and works
3 "Show my 5 most recent CeePrinto designs." A list of your designs The key's permissions allow reading your account

The first time the assistant uses each tool, your app asks for permission. Approve it. Many apps let you "always allow" read-only tools, but keep asking for tools that change things.

If question 2 says the session has no API key, the app connected without your key: check the header or env part of your config and restart the app. If question 3 says a permission is missing, create a key with the right permissions (see Step 1).

Step 3: Use it

What you can ask it to do

Every task the assistant can do, with example prompts and the permission each one needs.

Ask in plain language. The assistant picks the right tool, as long as your key has the permission listed.

Help and account

Task Example prompt Permission needed
Answer questions from the docs "How do I connect my Shopify store?" None, works without a key
Show your account and key "Which permissions does this key have?" None, any key

Designs

Task Example prompt Permission needed
Browse blank products "Which blanks can I print on, and in which colours?" Read the blank-product catalog
List and inspect designs "Show my latest designs." Read designs
Check a design is print-ready "Is design 42 ready to publish?" Read designs
Get an editor link "Give me a link to edit design 42." / "Open the editor on the cap." Read designs
Render mockups "Render the mockups for design 42." Read designs
Create a design from an image "Put the logo at https://example.com/logo.png on the cap, left chest." Create designs from images
Fix blank mockups (generate print artwork) "Design 42 shows blank mockups. Generate its artwork." Create designs from images

Image placement can be center, left chest or full (fills the print area), at any scale. The image can be a public web address or a file you give the assistant (PNG, JPEG, WebP or SVG, up to 25 MB). Generating print artwork takes up to about a minute per side.

Products, stores and publishing

Task Example prompt Permission needed
List products, stores and listings "Which stores are connected, and what is listed on each?" Read store listings
Create or update a product "Create a product from design 42 at 2,500 PKR." Create and remove store listings
Publish to a store "Publish design 42 to my Shopify store." Create and remove store listings (plus Create designs from images to fill in missing artwork automatically)
Check a publish job "Has that publish finished?" Read store listings

Publishing runs in the background: your store app picks the job up and creates the product. Ask "has it finished?" after a minute or two.

Orders and money

Task Example prompt Permission needed
Track an order "Where is order #1001?" Read orders
Explain an order problem "Why hasn't order #1001 shipped yet?" Read orders
Quote shipping "How much to ship two tees to Lahore?" Read orders
Place an order "Order one black cap, size M, for Ali Khan, House 12, Street 4, Lahore, 0300 1234567." Submit orders
Payouts "When is my next payout and how much?" Read orders

Placing an order is always two steps: the assistant first shows you a quote, and only places the order after you confirm.

Support

Task Example prompt Permission needed
Check your tickets "What is the status of my support tickets?" Read your support tickets
Open a ticket "Open a ticket: the print on order #1001 is faded." Open and reply to support tickets
Reply to a ticket "Reply to ticket #88 saying I have attached photos by email." Open and reply to support tickets

Tickets opened by an assistant go to the same support team and are marked AI assistant. Attachments in replies open only when you are signed in to CeePrinto in your browser.

What it can't do

  • Cancel or refund orders. Contact support for that.
  • Disconnect stores, delete listings, manage webhooks, or change payout details. Do these in My Account.

Step 3: Use it

Staying safe

Keep keys private, give each app only the permissions it needs, and revoke a key in one click.

Your API key works like a password for your account, limited to the permissions you ticked. A few habits keep it safe.

  • One key per app and device. Name each one, for example Cursor – home PC, so you can revoke one without breaking the others.
  • Give the least it needs. Start with Look things up and add permissions only when you need them.
  • Never paste the key into a chat message. It would be saved in your chat history. Put it only in the app's settings or config file.
  • Keep config files private. Files like mcp.json hold the key in plain text. Don't share them, and never commit them to git. Use the environment-variable setups shown for Claude Code and VS Code in shared projects.
  • Keep approvals on for changes. Let your app ask before tools that create, publish, order or open tickets.

Revoke a key

  1. Open API Keys

  2. Revoke it

    In Your keys, find the key by its name and click Revoke. It stops working immediately in every app that uses it.

  3. Replace it if needed

    Create a new key (Step 1) and put it in the app in place of the old one.

Think a key has leaked? Revoke it first, then work out what happened. The Last used column in Your keys shows when each key was last active.

Limits

Connection Limit
With an API key 120 requests per minute per key. One question can use a few requests.
Without a key 30 requests per minute per internet connection
Support tickets through an assistant 5 new tickets and 20 replies per account every 15 minutes

Fixes for the problems people hit most: 401 errors, missing tools, Claude Desktop not loading the server, timeouts.

Find your symptom in the table. Most problems come from the key not being sent exactly as shown.

Symptom Likely cause Fix
The app shows an error, a red dot or "401 unauthorized" when connecting The key is incomplete, mistyped, missing Bearer , or revoked Copy the whole key again (cp_live_… including the part after the dot). The header must read exactly Authorization: Bearer cp_live_…. In API Keys, check the key's status is Active.
Only three tools appear (search_help, get_help_article, list_help_topics) The app connected without your key Check the headers (or env for Claude Desktop) part of the config, save, and fully restart the app.
"This API key does not have the … scope" The key is missing a permission Create a new key with that permission (Step 1), update the app, and revoke the old key.
Claude Desktop: CeePrinto doesn't appear in the tools menu The config file has a JSON mistake, Node.js is missing, or the app wasn't fully restarted Paste the file into a JSON validator and look for missing or extra commas. Run node --version. Quit Claude completely and reopen it. Check the log file.
"npx: command not found" or "spawn npx ENOENT" Node.js isn't installed, or the app can't find it Install Node.js LTS from nodejs.org and restart the computer. On Windows, use the cmd variant.
"rate_limited" or 429 Too many requests in one minute Wait a minute and ask again. See Limits.
Publishing is refused with "not print-ready" The design has no print artwork, and the key can't generate it Ask "generate the artwork for design 42" with a key that has Create designs from images, or open the editor link the assistant gives you, then add the design to the cart or re-save it.
Publishing or artwork generation is slow or times out Artwork takes up to a minute per side Publish fewer designs at once. If it stopped part-way, ask the assistant to generate artwork for the remaining designs, then publish again.
"Never received" for an order you can see in your store The order didn't reach CeePrinto from your store Check your store connection in Store Connections β†’ Stores, and see Shopify app for order forwarding.
"Session not found" after the app sat idle The session expired Reconnect: in Claude Code type /mcp and reconnect; in other apps restart the server or the app.
Claude.ai or ChatGPT can't see your account Web connectors are help-only for now Use Claude Desktop, Claude Code, Cursor or VS Code for account tasks.

Still stuck?

Open a ticket from My Account β†’ Support. Tell us which app you use, the exact error message, and the time it happened. Never include your API key: we will never ask for it.

Help

FAQ

Cost, privacy, which AI models work, and what happens when a key is revoked.

Short answers to the questions merchants ask most.

Does it cost anything?

No. The MCP server is included with your CeePrinto account. Your AI app's own plan or subscription still applies.

Which AI app or model should I use?

Any app from Supported apps. Recent models follow multi-step tasks such as "create a design, then publish it" most reliably.

What can CeePrinto see of my chats?

Nothing. CeePrinto only receives the requests your assistant makes with your key, such as "list designs". Your conversation stays with your AI provider, under their privacy terms.

Can the assistant spend money?

Only if the key has Submit orders, and only after showing you a quote you confirm. Leave that permission off if you don't want the assistant placing orders.

Can I use a connection code (cp1.…) instead of an API key?

No. Connection codes are for the Shopify app and CeePrinto Connect. For AI assistants, create an API key in the API Keys tab.

Can my team use it?

Yes. Create a separate, named key for each person and app. Each key can be revoked on its own, and the Last used column shows which ones are active.

What happens when I revoke a key?

Any app using it stops being able to reach your account straight away. Help-only answers keep working, because they don't need a key.

Does the assistant always have the latest docs?

Yes. It searches the live documentation on this site each time you ask.