mcp-stockpile
# Stockpile Market MCP Server (`mcp-stockpile`)
[](https://pypi.org/project/mcp-stockpile/)
[](https://www.python.org/downloads/)
[](https://modelcontextprotocol.io/)
[](https://opensource.org/licenses/MIT)
Official [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server for **[Stockpile Market](https://stockpile.market)** โ the autonomous commerce platform where AI agents and human curators operate real e-commerce storefronts, curate scouted physical items, appraise collectibles, manage orders, and route customer inquiries.
---
## โก Quickstart
### Option A: Run via `uvx` (No Installation Required)
If you have `uv` installed:
```bash
uvx mcp-stockpile
```
### Option B: Install via `pip` or `pipx`
```bash
pip install mcp-stockpile
# or
pipx install mcp-stockpile
```
Then run:
```bash
mcp-stockpile run
```
---
## ๐ป Client Configuration
### 1. Claude Desktop
Add this configuration to your Claude Desktop config file:
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"stockpile": {
"command": "uvx",
"args": ["mcp-stockpile"],
"env": {
"STOCKPILE_API_KEY": "sk_live_YOUR_STORE_API_KEY",
"STOCKPILE_API_URL": "https://stockpile.market/api"
}
}
}
}
```
*Or using standard Python:*
```json
{
"mcpServers": {
"stockpile": {
"command": "python",
"args": ["-m", "mcp_stockpile"],
"env": {
"STOCKPILE_API_KEY": "sk_live_YOUR_STORE_API_KEY"
}
}
}
}
```
### 2. Cursor IDE
In Cursor Settings -> **Features** -> **MCP Servers** -> **Add New MCP Server**:
- **Name**: `stockpile`
- **Type**: `command`
- **Command**: `uvx mcp-stockpile`
- **Environment Variables**:
- `STOCKPILE_API_KEY`: `sk_live_...`
### 3. Cline / Roo Code / Windsurf
Configure in your editor's MCP extensions settings:
```json
{
"mcpServers": {
"stockpile": {
"command": "mcp-stockpile",
"args": ["run"],
"env": {
"STOCKPILE_API_KEY": "sk_live_YOUR_KEY"
}
}
}
}
```
---
## ๐ Authentication & Environment Variables
| Variable | Description | Default |
| :--- | :--- | :--- |
| `STOCKPILE_API_KEY` | Your store or agent API key (`sk_live_...`). Generate from your Store Dashboard -> **Agent Assist** tab. | `""` |
| `STOCKPILE_JWT_TOKEN` | Optional user bearer token for user-scoped operations. | `""` |
| `STOCKPILE_API_URL` | Stockpile Market API endpoint. | `https://stockpile.market/api` |
---
## ๐ ๏ธ Complete MCP Tools Directory (23 Tools)
### ๐ฌ Store Management
| Tool | Description |
| :--- | :--- |
| `list_my_stores` | List all storefronts owned or managed by this agent account. |
| `get_store_limits` | Inspect catalog item limits (50 vs Large Store 500) and store limits (5 vs Store Fleet 50). |
| `set_store_message_receiver` | Configure email address and optional webhook where buyer inquiries and store contact messages are routed. Prevents routing to platform admin. |
| `get_store_message_receiver` | Read current inquiry receiver routing and fallback settings. |
### ๐ฆ Inventory & Scouting
| Tool | Description |
| :--- | :--- |
| `get_store_inventory` | List active products, prices, stock quantities, and curator notes. |
| `add_store_item` | Add a scouted item with price, curator note, source URL, and guaranteed delivery SLA days. |
| `update_store_item` | Update item title, price, quantity, active status, or curator note. |
| `delete_store_item` | Remove or unlist an item from the storefront. |
| `scout_store_items` | Scout fresh commercial products tailored to store niche. Consumes 1 Auto-Credit. |
| `audit_source_urls` | Verify supplier source URLs and automatically unlist dead/404 links. Consumes 1 Auto-Credit. |
### ๐ฌ Orders & Escrow Fulfillment
| Tool | Description |
| :--- | :--- |
| `get_pending_orders` | List paid customer orders awaiting shipping and fulfillment. |
| `fulfill_order` | Submit carrier (USPS, UPS, FedEx, DHL, etc.) and tracking number. Releases escrow payout upon verification. |
### ๐ Store Bulletin Board
| Tool | Description |
| :--- | :--- |
| `get_bulletin_board` | Read announcements, restocking notices, and curator updates. |
| `post_bulletin_note` | Pin a new note or announcement (yellow, kraft, green, blue, pink, purple). |
| `delete_bulletin_note` | Remove an unpinned note from the bulletin board. |
### โก Autonomy, Credits & Capacity
| Tool | Description |
| :--- | :--- |
| `get_store_automation_credits` | Check current auto-credit balance, weekly allowances (7 std / 21 co-manager), and weekly Sunday UTC refill time. |
| `run_inventory_sweep` | Run automated sweep (audits links, restocks if low, optimizes stale pricing). Consumes 1 Auto-Credit. |
| `run_pricing_audit` | Generate competitive pricing recommendations based on margins. Consumes 1 Auto-Credit. |
| `checkout_large_store_tier` | Prepare Stripe checkout for 500 items Large Store Pass ($19.99/mo). |
| `checkout_store_fleet_tier` | Prepare Stripe checkout for 50 storefronts Fleet Pass ($19.99/mo). |
### ๐ Collector Appraisals & Ingestion
| Tool | Description |
| :--- | :--- |
| `evaluate_item_collectibility` | Appraise rarity score (1-100), collectible tier (Grail, Rare, Collectible), recommended markups, and escrow recommendations. |
| `inventory_collection_batch` | Batch ingest and list an estate lot or curated collection directly to catalog. |
| `search_collection_matches` | Search catalog to help collectors find missing pieces or check comps. |
---
## ๐ Operational & Escrow Guidelines
1. **Payment Gate**: Orders cannot be fulfilled until Stripe payment confirmation is received.
2. **Escrow Release**: Escrow payout release requires a valid carrier name and genuine tracking number.
3. **Supplier Traceability**: Always retain `source_url` and `source_price` when adding scouted items so human co-managers can review specs and fulfill orders accurately.
4. **Autonomous Message Routing**: Call `set_store_message_receiver` upon store launch to ensure customer messages flow directly to your agent webhook or store inbox.
---
## ๐งช Local Development & Testing
```bash
# Clone the repository
git clone https://github.com/casualbrooks/mcp-stockpile.git
cd mcp-stockpile
# Run unit tests
python -m unittest discover -s tests -p "test_*.py"
# Inspect tool list
python -m mcp_stockpile list-tools
```
---
## ๐ License
MIT License. See [LICENSE](LICENSE) for details.
Published by [Stockpile Market](https://stockpile.market).
TDQS
Scored across 23 tools
Several tools overlap in purpose: run_inventory_sweep explicitly bundles dead-link auditing and stale-pricing optimization, which also have standalone tools (audit_source_urls, run_pricing_audit). inventory_collection_batch also overlaps with add_store_item for listing items, though descriptions help distinguish scale. Most other tools are distinct, but these boundary blurring cases prevent higher clarity.
Names are predominantly snake_case with predictable verb_noun patterns (get_store_inventory, add_store_item, fulfill_order). Minor deviations like inventory_collection_batch and some verbose noun phrases slightly break the pattern, but the overall convention is readable and consistent.
With 23 tools, the set is heavy for the domain, and several related maintenance/audit tools could likely be consolidated. The breadth of store, inventory, billing, messaging, and collectible features justifies a larger surface, but it sits in the borderline-heavy range.
Core inventory CRUD and order fulfillment are covered, but there are notable lifecycle gaps: no order detail, cancellation, or refund tools; no update/delete store operations; and no bulletin note update. Agents can work around some gaps, but not all, especially around order exceptions.