MCPcopy Index your code
hub / github.com/commerce-operations-foundation/mcp-reference-server

github.com/commerce-operations-foundation/mcp-reference-server @v0.5.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.5.1 ↗ · + Follow
591 symbols 1,520 edges 110 files 150 documented · 25%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Commerce Operations Foundation MCP Server

Universal Fulfillment System for the AI Era

The Commerce Operations Foundation MCP Server implements the Order Network eXchange Standard (onX), providing a standardized interface between AI agents and fulfillment systems through the Model Context Protocol (MCP).

This project enables AI assistants like Claude to seamlessly interact with any fulfillment system, streamlining commerce operations from order capture through delivery.

Project Purpose

  • Standardize Fulfillment Integration: Define a universal protocol for fulfillment operations
  • Enable AI-Driven Commerce: Allow AI agents to manage orders, inventory, and fulfillment
  • Simplify Implementation: Provide plug-and-play adapters for different Fulfillment backends
  • Accelerate Innovation: Create a foundation for next-generation commerce automation

Project Structure

/server

The core Fulfillment MCP Reference server implementation that:

  • Handles MCP protocol communication (stdio transport)
  • Routes requests to appropriate adapters
  • Provides 12 standardized fulfillment operations (5 action + 7 query tools)
  • Includes a built-in mock adapter for testing

/adapter-template

Template for creating custom Fulfillment adapters to allow the MCP Reference server to connect to your Fulfillment system:

  • Boilerplate code for new integrations
  • TypeScript interfaces and types
  • Testing framework setup
  • Publishing guidelines for vendors

/docs

Comprehensive documentation covering:

  • Order Network eXchange specification and standards
  • Architecture and design decisions
  • Integration guides for different stakeholders
  • API reference and examples

/schemas

JSON Schema definitions for:

  • Order data structures
  • Customer information
  • Product catalog
  • Inventory models

Quick Start

For AI Developers

Integrate order management capabilities into your AI applications:

git clone https://github.com/cof-org/mcp-reference-server.git
cd mcp-reference-server/server
npm install
npm run build
node dist/index.js

The server uses the mock adapter by default (ADAPTER_TYPE=built-in, ADAPTER_NAME=mock). Configure your AI platform (like Claude Desktop) to execute node /absolute/path/to/server/dist/index.js. See the Installation Guide for platform-specific setup.

For Fulfillment Vendors

Create an adapter for your fulfillment system:

# Copy the adapter template
cp -r adapter-template your-fulfillment-adapter
cd your-fulfillment-adapter

# Install dependencies and start developing
npm install
npm run dev

For Retailers & Commerce Platforms

Deploy the server with your chosen adapter:

git clone https://github.com/cof-org/mcp-reference-server.git
cd mcp-reference-server/server
npm install
cp .env.example .env
# edit .env and set ADAPTER_TYPE/ADAPTER_PACKAGE/ADAPTER_PATH as needed
npm run build
npm start

Core Capabilities

The server provides 12 essential fulfillment operations:

Action Tools

  • create-sales-order - Create new orders from any channel
  • update-order - Modify order details and line items
  • cancel-order - Cancel orders with reason tracking
  • fulfill-order - Mark orders as fulfilled and return shipment details
  • create-return - Create returns for order items with refund/exchange tracking

Query Tools

  • get-orders - Retrieve order information
  • get-customers - Get customer details
  • get-products - Get product information
  • get-product-variants - Retrieve variant-level data
  • get-inventory - Check inventory levels
  • get-fulfillments - Track fulfillment status
  • get-returns - Query return records and status

Architecture Overview

┌──────────────┐     ┌────────────────┐     ┌──────────────────┐
│ AI Platform  │────▶│  MCP Server    │────▶│ Fulfillment      │
│  (Claude)    │     │ (This Project) │     │   Adapter        │
└──────────────┘     └────────────────┘     └──────────────────┘
                              │                       │
                              ▼                       ▼
                         ┌─────────┐           ┌──────────┐
                         │ Schemas │           │Fulfillment│
                         │  (JSON) │           │  Backend  │
                         └─────────┘           └──────────┘

Testing

The project includes comprehensive testing at all levels:

# Run all tests
cd server
npm test

# Run specific test suites
npm run test:unit        # Unit tests
npm run test:integration # Integration tests

# Test with coverage
npm run test:coverage

Documentation

Documentation is available in the following locations:

Contributing

We welcome contributions from the community! Whether you're:

  • A Fulfillment vendor creating an adapter
  • A developer improving the core server
  • A user reporting issues or suggesting features

Please open an issue or pull request to get started.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Resources

Get Started

Ready to revolutionize your fulfillment operations with AI?

  1. Fulfillment Vendors: Create your adapter
  2. AI Developers: Integrate the server
  3. Commerce Teams: Deploy the solution with Docker or your preferred runtime

Together, we're building the foundation for AI-powered commerce operations.

Extension points exported contracts — how you extend this code

IFulfillmentAdapter (Interface)
(no doc) [3 implementers]
server/src/types/adapter.ts
MCPResponse (Interface)
(no doc)
server/tests/helpers/test-client.ts
AdapterOptions (Interface)
(no doc)
adapter-template/src/types.ts
Matchers (Interface)
(no doc)
adapter-template/tests/setup.ts
RetryOptions (Interface)
* Configuration options for retry behavior
server/src/utils/retry.ts
MCPRequest (Interface)
(no doc)
server/tests/fixtures/mcp-test-client.ts
YourFulfillmentApiResponse (Interface)
(no doc)
adapter-template/src/types.ts
MockConfigOptions (Interface)
* Mock Configuration * Configuration for mock adapter behavior
server/src/adapters/mock/mock-config.ts

Core symbols most depended-on inside this repo

string
called by 146
server/src/utils/sanitizer.ts
now
called by 64
server/src/utils/date-utils.ts
parse
called by 58
server/src/utils/date-utils.ts
info
called by 53
server/src/utils/logger.ts
error
called by 48
server/src/utils/logger.ts
sendRequest
called by 44
server/tests/helpers/test-client.ts
number
called by 41
server/src/utils/sanitizer.ts
createAdapter
called by 37
server/src/adapters/adapter-factory.ts

Shape

Method 388
Class 129
Function 41
Interface 31
Enum 2

Languages

TypeScript100%

Modules by API surface

adapter-template/src/adapter.ts56 symbols
server/src/adapters/mock/mock-adapter.ts37 symbols
server/src/utils/errors.ts32 symbols
server/src/types/adapter.ts32 symbols
server/src/services/service-orchestrator.ts24 symbols
server/src/logging/structured-logger.ts24 symbols
server/tests/fixtures/mcp-test-client.ts21 symbols
server/src/services/health-monitor.ts21 symbols
adapter-template/src/utils/api-client.ts18 symbols
server/src/config/config-manager.ts17 symbols
server/src/services/adapter-manager.ts16 symbols
server/tests/unit/adapters/adapter-factory.test.ts15 symbols

For agents

$ claude mcp add mcp-reference-server \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page