replenishradar
ReplenishRadar MCP Multi-channel inventory forecasting and reorder automation for Shopify and Amazon sellers.
What it can do
- Rr Acknowledge Alert: Acknowledge an open alert. Sets status='acknowledged', stamps acknowledged_at + acknowledged_by, and writes an alert_audit row. Use when the seller has read and accepted an alert
- Rr Add Po Note: Add a note to a purchase order. Use for context the seller wants to attach to the PO record (e.g., 'vendor confirmed lead time').
- Rr Add Replenishment Action Note: Add a note to a canonical replenishment action. Use this when the seller wants context attached to the action itself, not just a PO.
What data it sees
Do you need an account
An API key from the service settings is required
ReplenishRadar MCP
Multi-channel inventory forecasting and reorder automation for Shopify and Amazon sellers. Connect an AI agent to live inventory data: predict stockouts, surface what to reorder, and manage purchase orders end to end.
What you can do
Read (works with any read key)
- Stockout risk, inventory positions, and demand forecasts by SKU or location
- Suggested and canonical replenishment actions (what to buy or transfer next)
- Alerts, sales history, top sellers, slow movers, and lost-sales estimates
- Purchase orders, suppliers, sync status, and store/data-health diagnostics
Write (requires a write-scope key + tool group)
- Create, update, approve, send, and cancel purchase orders (always drafted first)
- Execute replenishment actions in draft or, when explicitly enabled, autonomous mode
- Manage locations and stock, import POs from Stocky / Inventory Planner, and store bounded agent context
Auth and safety
Every call is authenticated with an rr_sk_ API key and scoped to a single organization. Read tools need only a read key; write tools require explicit write capabilities and the matching tool group, so a leaked key can't control everything. Purchase orders are always created as drafts and require human approval before they're sent to a supplier.
Get started
Generate an API key in Settings > API Keys at app.replenishradar.com, or request a no-signup, read-only sandbox key to try it against demo data first. Full docs: replenishradar.com/docs/mcp.
How to connect
How to connect replenishradar to Claude
The server address to paste into Claude settings:
https://replenishradar--pro.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect replenishradar to ChatGPT
The server address to paste into ChatGPT settings:
https://replenishradar--pro.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect replenishradar to Cursor
The server address to paste into Cursor settings:
https://replenishradar--pro.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (50)
Raw names from tools/list. Only developers need these.
| rr_acknowledge_alert | Acknowledge an open alert. Sets status='acknowledged', stamps acknowledged_at + acknowledged_by, and writes an alert_audit row. Use when the seller has read and accepted an alert. |
| rr_add_po_note | Add a note to a purchase order. Use for context the seller wants to attach to the PO record (e.g., 'vendor confirmed lead time'). |
| rr_add_replenishment_action_note | Add a note to a canonical replenishment action. Use this when the seller wants context attached to the action itself, not just a PO. |
| rr_cancel_purchase_order | Cancel a PO (status='cancelled'). Cannot cancel POs already in cancelled/received/closed status. |
| rr_create_location | ReplenishRadar MCP tool rr_create_location. |
| rr_create_purchase_order | Create a draft purchase order for a vendor. Status is ALWAYS 'draft' - agents cannot create approved/sent POs directly. Use rr_request_approval to escalate for human approval before sending. Returns the new PO + items_added count. |
| rr_delete_agent_context | ReplenishRadar MCP tool rr_delete_agent_context. |
| rr_dismiss_replenishment_action | Dismiss a canonical replenishment action when the seller decides no buyer work is needed. Records an action event and removes it from active action queues. |
| rr_evaluate_fit | ReplenishRadar MCP tool rr_evaluate_fit. |
| rr_execute_replenishment_action | ReplenishRadar MCP tool rr_execute_replenishment_action. |
| rr_get_agent_context | ReplenishRadar MCP tool rr_get_agent_context. |
| rr_get_alerts | Get active alerts (stockout warnings, sync failures, anomalies). |
| rr_get_data_freshness | Get per-dimension freshness status (sync, positions, demand, risk, recommendations) with staleness thresholds and a primary_concern summary. Call before quoting any specific number (units on hand, days to stockout, reorder point, forecast) - if the relevant dimension is stale, lead the reply with one sentence of caveat before the number. |
| rr_get_demand_forecast | Get demand forecast for a SKU including predicted demand, confidence, and seasonal factors. SKU is required. |
| rr_get_document_upload_url | ReplenishRadar MCP tool rr_get_document_upload_url. |
| rr_get_inventory_position | Get current inventory positions (on-hand, in-transit, available) for a SKU. SKU is required. |
| rr_get_inventory_value | Get total inventory value (units and value across all active locations). |
| rr_get_lost_sales | Get estimated lost sales due to stockouts. |
| rr_get_po_documents | ReplenishRadar MCP tool rr_get_po_documents. |
| rr_get_po_notes | Get all notes for a purchase order, most recent first. |
| rr_get_po_pdf | ReplenishRadar MCP tool rr_get_po_pdf. |
| rr_get_purchase_order | Get detailed info for a specific purchase order. |
| rr_get_recent_activity | Summarize the last N days of org activity (default 7, max 30). Returns counts only - alerts created/resolved, POs created/received, sync runs total/failed, and a one-word headline (sync_health_degraded / alert_storm / receiving_active / normal / quiet_week). No monetary fields. Use for 'what should I focus on today?' or 'what happened this week?' - one call replaces a fan-out of five. |
| rr_get_replenishment_action | Get one replenishment action with child item provenance, snapshots, linked execution records, and event history. |
| rr_get_replenishment_actions | List canonical replenishment actions for buyer work. Prefer this over suggested purchase orders or alerts when deciding what action the user should take next. |
| rr_get_sales_history | Get sales history for SKUs over a time period. |
| rr_get_setup_status | Check onboarding milestones and compute the next setup step. Returns counts (connected_stores, suppliers, items), activation milestones, and a next_step enum (connect_store, wait_for_sync, add_supplier, run_first_forecast, review_first_suggested_po, done). Call for onboarding questions or before suggesting reorder points / deeper features - don't advise a number when next_step is still connect_store. |
| rr_get_sku_health | Org-wide SKU health snapshot: stockout-risk counts by level and active alert counts by type. |
| rr_get_slow_movers | Overstock / dead-stock / slow movers: SKUs you are HOLDING (on-hand > 0) that aren't selling - capital tied up. Returns on_hand, units sold in the window, and a dead_stock flag (held with zero sales). Inventory-first, so never-sold dead stock is surfaced too. |
| rr_get_stockout_risk | Get stockout risk assessment for SKUs. Returns risk levels, days to stockout, and velocity. |
| rr_get_store_health | Diagnose each connected store's health. Returns per-store connection status, hours since last sync, and a diagnosis enum (disconnected / error / pending_setup / sync_paused / stale / healthy), plus a summary with primary_diagnosis. Call FIRST for any sync-failure, missing-inventory, or 'why isn't X working' question - a disconnected store is upstream of every sync error it has. |
| rr_get_suggested_purchase_orders | Get AI-suggested purchase orders based on stockout risk, demand, and supplier reliability. |
| rr_get_sync_status | Get sync status for connected stores. Pass the sync_event_id returned by rr_trigger_sync to get that request's own receipt (sync_event) and its attempts (sync_event_attempts) alongside recent runs. |
| rr_get_top_sellers | Get top-selling SKUs ranked by units sold. |
| rr_import_purchase_orders | Import open and historical purchase orders from a CSV export (the migration on-ramp for sellers leaving Stocky or Inventory Planner). One row per line item, grouped by po_number; column names from both tools are recognized automatically. Records received quantities as a snapshot only - it NEVER moves stock. Idempotent on po_number (re-running the same file is safe). preview defaults to true: it validates and returns what would import without writing; pass preview=false to actually import. Returns per-PO counts, warnings, and errors. |
| rr_list_agent_context | ReplenishRadar MCP tool rr_list_agent_context. |
| rr_list_items | List inventory items with optional filters. For an exact SKU identity question, provide the exact value in search and set include_listing_identity=true to resolve Amazon seller SKUs and return source listing identifiers such as ASIN and FNSKU. |
| rr_list_purchase_orders | List purchase orders with status, amounts, and delivery info. |
| rr_list_suppliers | List suppliers with performance metrics. |
| rr_prepare_replenishment_action | ReplenishRadar MCP tool rr_prepare_replenishment_action. |
| rr_record_pi_review | ReplenishRadar MCP tool rr_record_pi_review. |
| rr_request_approval | Generate a one-time approval link for a draft/review PO. The link expires in 15 minutes. Use BEFORE rr_send_purchase_order - sending without approval will fail. Supersedes any prior pending request. |
| rr_resolve_replenishment_action | ReplenishRadar MCP tool rr_resolve_replenishment_action. |
| rr_retry_replenishment_action | ReplenishRadar MCP tool rr_retry_replenishment_action. |
| rr_send_purchase_order | Mark an approved PO as sent (status='sent', sent_at=now). Will fail if status is not 'approved' - use rr_request_approval first. |
| rr_set_agent_context | ReplenishRadar MCP tool rr_set_agent_context. |
| rr_set_stock_at_location | ReplenishRadar MCP tool rr_set_stock_at_location. |
| rr_trigger_sync | Trigger an inventory sync for a connected Shopify or Amazon store. Skipped if a sync ran in the last 5 minutes for this connector type. Returns {status: 'queued'|'skipped', sync_event_id, requested_store_id, blocking_sync_event_id, message}. Pass sync_event_id to rr_get_sync_status to follow the request; sync_run_id is not known at queue time and is always null here. |
| rr_update_purchase_order | Update a draft or suggested PO. Allowed fields: notes, expected_delivery_date, vendor_id. Edits are recorded in the PO's revision history. Status changes are NOT supported here - use rr_send_purchase_order or rr_cancel_purchase_order. Only draft/suggested POs are editable; approved/sent/received/cancelled POs are not. |
| search_knowledge | Search the ReplenishRadar knowledge base for product features, best practices, and inventory management concepts. Use for questions that aren't answered by the seller's live data. |