Skip to main content
Glama
bischoff99

MCP Shipping Control Center

by bischoff99

MCP Shipping Control Center

A comprehensive shipping and order management platform built with the Model Context Protocol (MCP), integrating EasyPost shipping services and Veeqo order management.

πŸš€ Features

Core Functionality

  • Order Management: Create, update, and track orders through Veeqo integration

  • Shipping Management: Generate labels, track shipments, and manage rates via EasyPost

  • Unified Workflows: Cross-platform operations combining order and shipping data

  • Real-time Dashboard: Web-based interface for monitoring operations

  • Authentication: JWT-based security with role-based access control

Technical Features

  • MCP Protocol: JSON-RPC 2.0 compliant API

  • TypeScript: Full type safety throughout the application

  • Error Handling: Comprehensive error management with retry logic

  • Logging: Structured logging with correlation IDs

  • Testing: Complete test coverage for all components

  • Docker: Containerized deployment ready

  • Kubernetes: Production-ready orchestration

πŸ“ Project Structure

mcp-server/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ clients/           # API client implementations
β”‚   β”‚   β”œβ”€β”€ easypostClient.ts
β”‚   β”‚   └── veeqoClient.ts
β”‚   β”œβ”€β”€ methods/           # MCP method implementations
β”‚   β”‚   β”œβ”€β”€ easypost.ts
β”‚   β”‚   β”œβ”€β”€ veeqo.ts
β”‚   β”‚   β”œβ”€β”€ unified.ts
β”‚   β”‚   └── web.ts
β”‚   β”œβ”€β”€ utils/             # Utility functions
β”‚   β”‚   β”œβ”€β”€ auth.ts
β”‚   β”‚   β”œβ”€β”€ errors.ts
β”‚   β”‚   β”œβ”€β”€ logger.ts
β”‚   β”‚   β”œβ”€β”€ middleware.ts
β”‚   β”‚   └── retry.ts
β”‚   β”œβ”€β”€ web/               # Web interface components
β”‚   β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ services/
β”‚   β”‚   └── types/
β”‚   β”œβ”€β”€ server.ts          # Main server implementation
β”‚   └── schema.ts          # JSON-RPC schemas
β”œβ”€β”€ tests/                 # Test suites
β”œβ”€β”€ k8s/                   # Kubernetes manifests
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ package.json
└── README.md

πŸ› οΈ Installation

Prerequisites

  • Node.js 18+

  • npm or pnpm

  • Docker (optional)

  • Kubernetes cluster (optional)

Setup

  1. Clone and install dependencies:

cd mcp-server
npm install
# or
pnpm install
  1. Environment configuration:

cp .env.example .env
# Edit .env with your API keys and configuration
  1. Required environment variables:

# API Keys
EASYPOST_API_KEY=your_easypost_api_key
VEEQO_API_KEY=your_veeqo_api_key

# JWT Configuration
JWT_SECRET=your_jwt_secret
JWT_EXPIRES_IN=24h

# Default Admin User
DEFAULT_ADMIN_PASSWORD=admin123

# Logging
LOG_LEVEL=info

πŸš€ Usage

Development

# Start the development server
npm run dev

# Run tests
npm test

# Build for production
npm run build

Production

# Using Docker
docker build -t mcp-server .
docker run -p 3000:3000 mcp-server

# Using Docker Compose
docker-compose up -d

# Using Kubernetes
kubectl apply -f k8s/

πŸ“‘ API Reference

MCP Methods

Veeqo Methods

  • veeqo.createOrder - Create a new order

  • veeqo.getOrder - Retrieve order details

  • veeqo.listOrders - List orders with pagination

  • veeqo.updateOrder - Update existing order

  • veeqo.deleteOrder - Delete an order

  • veeqo.syncInventory - Sync inventory data

EasyPost Methods

  • easypost.createShipment - Create a new shipment

  • easypost.getRates - Get shipping rates

  • easypost.buyLabel - Purchase shipping label

  • easypost.trackShipment - Track shipment status

Unified Methods

  • unified.createOrderWithShipping - Create order and shipping in one operation

  • unified.processReturn - Handle return processing

  • unified.bulkOperations - Batch operations

Web Methods

  • web.login - User authentication

  • web.getDashboardStats - Dashboard statistics

  • web.searchOrders - Search orders

Example Request

{
  "jsonrpc": "2.0",
  "method": "veeqo.createOrder",
  "params": {
    "order": {
      "line_items_attributes": [
        {
          "product_id": "123",
          "quantity": 2
        }
      ],
      "deliver_to": {
        "first_name": "John",
        "last_name": "Doe",
        "address1": "123 Main St",
        "city": "New York",
        "state": "NY",
        "zip": "10001",
        "country": "US"
      }
    }
  },
  "id": 1
}

πŸ”§ Configuration

Docker Configuration

The application includes Docker and Docker Compose configurations for easy deployment:

  • Dockerfile: Multi-stage build for production optimization

  • docker-compose.yml: Complete stack with all services

  • k8s/: Kubernetes manifests for production deployment

Monitoring

  • Prometheus: Metrics collection and monitoring

  • Structured Logging: JSON-formatted logs with correlation IDs

  • Health Checks: Built-in health check endpoints

πŸ§ͺ Testing

# Run all tests
npm test

# Run specific test suites
npm test -- --testNamePattern="EasyPost"
npm test -- --testNamePattern="Veeqo"
npm test -- --testNamePattern="Unified"

# Run with coverage
npm run test:coverage

πŸ“Š Monitoring

The application includes comprehensive monitoring:

  • Metrics: Prometheus metrics for all operations

  • Logging: Structured logging with correlation IDs

  • Health Checks: Built-in health check endpoints

  • Error Tracking: Comprehensive error handling and reporting

πŸ”’ Security

  • JWT Authentication: Secure token-based authentication

  • Role-based Access: Admin and user role permissions

  • Input Validation: Comprehensive input validation

  • Rate Limiting: Built-in rate limiting protection

  • CORS: Configurable CORS policies

🀝 Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests for new functionality

  5. Submit a pull request

πŸ“„ License

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

πŸ†˜ Support

For support and questions:

  • Create an issue in the repository

  • Check the documentation

  • Review the test examples

πŸ”„ Version History

  • v1.0.0 - Initial release with core functionality

  • Complete MCP server implementation

  • EasyPost and Veeqo integrations

  • Web dashboard interface

  • Docker and Kubernetes deployment ready

-
security - not tested
-
license - not tested
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/bischoff99/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server