Summary
Let your AI work in Base (Baselinker): find orders across shops and marketplaces, check statuses and shipments, move orders between statuses, and look up products, prices and stock per warehouse. One account, with its API token.
Guided setup
Connect Base to Microsoft Copilot in 2 minutes
Start a free trial on AnythingMCP Cloud, connect Base in the guided setup, then add your MCP URL to Microsoft Copilot. No code and no server to run.
No credit card · 7-day trial · Self-host alternative available
Try asking
Example prompts for Base (Baselinker)
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Base (Baselinker), paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
Base (Baselinker) + Microsoft Copilot
Let your AI work in Base (Baselinker): find orders across shops and marketplaces, check statuses and shipments, move orders between statuses, and look up products, prices and stock per warehouse. One account, with its API token.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
BASELINKER_TOKEN
Step 1 — Get credentials
- In Base (formerly Baselinker) open Account & other → My account → API.
- Generate a token, or copy the existing one, and paste it into
BASELINKER_TOKEN. Generating a new token invalidates the old one, so anything still using the old token stops working. - If the AI should see what changed in your orders with
baselinker_get_journal_list, enable the order journal in the same API settings. Without it the journal stays empty. - Install the connector and run
baselinker_get_order_status_list. It checks the token and lists your account's order statuses.
One token, the whole account: the token sees everything in the account: orders from every source (your own shop, connected shops and marketplaces such as Allegro, Amazon or eBay), every product catalog and every warehouse.
What it reads: orders with buyer, delivery and payment data, status and products; the shipments of an order with tracking number and tracking status; order events of the last 3 days; products with SKU, EAN, prices per price group and stock per warehouse; warehouses and couriers.
Confirm first: the only change the AI can make out of the box is moving an order to another status with baselinker_set_order_status. A status change can start automatic actions set up in your account (customer emails, invoices, marketplace updates), so the AI shows you the order and the target status and waits for your yes. For a read-only setup, switch this tool off.
Switched off at install: baselinker_add_order creates orders, baselinker_update_inventory_products_stock overwrites stock with absolute quantities that your connected shops and marketplaces pick up, and baselinker_create_package books a shipment with a courier, which orders a real label the courier may charge for. Turn them on only if the AI should do these things; it then confirms each one with you.
Limits: Base allows 100 requests per minute per account, and going over blocks the API for the account for a while. The AI therefore filters by status, source or date rather than paging through everything; one call returns at most 100 orders.
Common errors: ERROR_BAD_TOKEN: the token is wrong or was regenerated. ERROR_USER_ACCOUNT_BLOCKED: the account or its API access is blocked, often after exceeding the request limit, so wait before retrying. ERROR_UNKNOWN_METHOD, ERROR_PARSE_JSON_PARAMETERS or a message naming a field: the input was wrong. A stock update can partly succeed and reports problems per product as warnings.
The connector does not cover invoices and receipts, returns, CRM clients, creating or editing products, price updates, documents, purchase orders or downloading labels.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Microsoft Copilot
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Microsoft Copilot uses MCP servers through agents built in Copilot Studio: you add AnythingMCP to an agent as a tool, then publish the agent to Microsoft 365 Copilot and Teams. Copilot Studio connects from Microsoft's cloud over Streamable HTTP, which AnythingMCP supports.
- In Copilot Studio, open your agent (or create one), go to Tools and choose Add a tool → New tool → Model Context Protocol.
- Enter a Server name (for example
AnythingMCP), a Server description that says what the connector does, and the Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio uses the description to decide when to call the server. - Under authentication, choose API key, set Type to Header and the header name to
X-API-Key, then select Create. - In Add tool, choose Create a new connection, paste an MCP API key from AnythingMCP (MCP Servers → your server → API keys) and select Add to agent.
- Try it in the agent's Test pane: ask for something that needs the
Base (Baselinker)tools. - Select Publish, then Channels → Microsoft 365 and Microsoft Teams, keep Make agent available in Microsoft Copilot selected and choose Add channel. See agent in Teams installs it for you; in Microsoft 365 Copilot, type @ and pick the agent.
Prefer per-user sign-in? Choose OAuth 2.0 → Dynamic discovery instead of an API key: each user then signs in to AnythingMCP the first time the agent calls it.
Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Copilot Studio connects from Microsoft's cloud, so localhost does not work.
Available tools
| Tool | What it does |
|---|---|
baselinker_get_order_status_list | List the order statuses defined in the order manager: id, name, color, group id and the name shown to customers |
baselinker_get_order_sources | List order sources grouped by type (personal, shop, allegro, amazon, ebay and other marketplaces): per source its id and name |
baselinker_get_orders | Get orders from the order manager with buyer, delivery and invoice data, payment, status, products and prices |
baselinker_get_journal_list | List order events of the last 3 days (created, confirmed, paid, status changed, package created, ...) with event id, order id, type and… |
baselinker_get_order_packages | List the shipments created for an order: package id, consignment (tracking) number, courier code, tracking status (0 unknown, 1 label… |
baselinker_set_order_status | Move an order to another status |
baselinker_add_order | Create an order in the order manager, with buyer, delivery and invoice data and products |
baselinker_get_inventories | List the product catalogs (inventories): inventory id, name, description, languages, price group ids and default price group, warehouse ids… |
baselinker_get_inventory_warehouses | List warehouses: type (bl for own warehouses, shop, warehouse, fulfillment), id, name, address, whether stock may be edited by hand and… |
baselinker_get_inventory_products_list | List or search products of a catalog with id, parent id, SKU, EAN, name, gross prices per price group and stock per warehouse. 1000… |
baselinker_get_inventory_products_data | Get full data of selected products: SKU, EAN, tax rate, weight and size, category, manufacturer, prices per price group, stock and… |
baselinker_get_inventory_products_stock | Get stock (and reservations, where enabled) per warehouse for the products of a catalog, variants included, optionally filtered. 1000… |
baselinker_update_inventory_products_stock | Set the stock of products or variants in a catalog's own warehouses to absolute quantities (not a delta); connected shops and marketplaces… |
baselinker_get_couriers_list | List the couriers available in the account, with the courier code (e.g. dpd, inpost, gls) and name |
baselinker_get_courier_fields | Get the form fields a courier needs to create a shipment (id, name, type, options, defaults) and the package fields (weight, size), plus… |
baselinker_create_package | Create a shipment with a courier for an order, which orders a real label and may be charged by the courier |
Example prompts
- "Show me the orders confirmed in the last 7 days that have no shipment yet, grouped by shop or marketplace."
- "Which products in our main catalog have fewer than 5 units left in our own warehouse?"
- "What is the tracking status of the shipments for order 48213907?"
- "Move order 48213907 to our Shipped status, but show me the order and the target status before you change it."
FAQ
Which Copilot is this for? Microsoft 365 Copilot at work, through agents built in Copilot Studio. The Microsoft Copilot app for personal accounts has no option to add your own MCP server.
What do I need? A work account with access to Copilot Studio (a license or a trial) to build the agent. People who use it in Microsoft 365 Copilot or Teams need access to the agent: share it with them, or ask an admin to publish it to the organization. If your organization applies data policies to Power Platform connectors, they cover MCP servers too.
The agent doesn't call the tools. Check that the header name is exactly X-API-Key and that the key belongs to the same MCP server as the URL, and make the server description specific: Copilot Studio uses it to decide when to call the server. Publish the agent again after each change; in an open chat, type "start over" to get the new version.
Next steps
- Connector landing page
- Connect to Claude
- Connect to ChatGPT
- Connect to Cursor
- Connect to Gemini
- Connect to Meta Muse
Was this guide helpful?