Upmind MCP Server v2.0
Advanced Model Context Protocol (MCP) server for the Upmind platform. Provides API documentation lookup + live API tools for managing brands, products, pricing, clients, contracts, invoices, tickets, and more.
Features
Documentation Tools (no token needed)
- search_endpoints — Multi-word search across 1,255+ API endpoints with relevance scoring
- get_endpoint_details — Full endpoint info (parameters, response schema, headers, permissions)
- list_api_groups — List all 214 API groups/categories
- get_group_endpoints — Get all endpoints within a group
Live API Tools (requires token)
| Domain | Tools | |--------|-------| | Brands | list_brands, get_brand | | Categories | list_categories, create_category | | Products | list_products, get_product, update_product, duplicate_product, reorder_products | | Pricing | list_pricelists, get_product_prices, sync_pricing, list_currencies | | Provisioning | list_provision_fields, get_provision_field_values, update_provision_field_values, list_provision_configs | | Contracts | list_contracts, get_contract, count_active_services, trigger_provision | | Clients | list_clients, get_client | | Invoices | list_invoices, get_invoice, list_payments | | Tickets | list_tickets, get_ticket | | Upgrades | get_upgrade_paths, set_upgrade_paths, remove_upgrade_path | | Reports | get_stats |
38 tools total — 4 documentation + 34 live API.
Setup
npm install
npm run build
Configure API Token
Create a .env file in the project root:
UPMIND_API_TOKEN=your_api_token_here
UPMIND_API_BASE=https://api.upmind.io/api/admin
The token is an admin/staff API token from Upmind. The .env file is gitignored.
Add to Claude Code
claude mcp add --transport stdio --scope user upmind-api-docs -- node /path/to/upmind-mcp/dist/index.js
Or manually in ~/.claude/settings.json:
{
"mcpServers": {
"upmind-api-docs": {
"command": "node",
"args": ["/path/to/upmind-mcp/dist/index.js"]
}
}
}
Important: Upmind API Notes
Admin URL Prefix
When using admin/staff tokens, all URLs use /api/admin/ prefix: `` Docs: GET /api/clients Actual: GET https://api.upmind.io/api/admin/clients ``
Pagination
- Default: 10 results per request
- Use
limitandoffsetquery params to page through - Response includes
totalfield for full count - The MCP server's auto-pagination fetches all pages when needed
Response Structure
{
"status": "ok",
"data": [],
"total": 100,
"error": null,
"messages": []
}
Architecture
src/
├── index.ts # Main MCP server (38 tools)
├── api/
│ └── client.ts # API client (auth, pagination, .env loading)
├── cache/
│ └── documentation-cache.ts # Local JSON file loader
├── tools/
│ ├── search-endpoints.ts # Doc search (multi-word)
│ ├── get-endpoint-details.ts # Doc endpoint details
│ ├── list-groups.ts # Doc groups listing
│ ├── get-group-endpoints.ts # Doc group endpoints
│ └── live/ # Live API tools
│ ├── brands.ts
│ ├── categories.ts
│ ├── products.ts
│ ├── pricing.ts
│ ├── provisioning.ts
│ ├── contracts.ts
│ ├── clients.ts
│ ├── invoices.ts
│ ├── tickets.ts
│ ├── upgrades.ts
│ └── reports.ts
├── types/
│ └── apidoc.ts # TypeScript type definitions
├── utils/
│ ├── matchers.ts # Search algorithms
│ └── formatters.ts # Response formatting
└── data/ # Local API documentation
├── api_data.json # 1,255 endpoints
├── api_project.json # Project metadata
└── api_data_web_hosting.json # Web hosting module (19 endpoints)
Development
npm install # Install dependencies
npm run build # Build TypeScript
npm run dev # Watch mode
npm run typecheck # Type check only
npm start # Run server
License
MIT






