company-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@company-mcp-serverwhich carriers and services can I use for a shipment?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
company-mcp-server
A Model Context Protocol (MCP) server that connects AI assistants in Cursor (and other MCP hosts) to your company's REST API.
It handles token-based authentication, read-only lookups (account, centers, carriers), and guarded write operations (jobs, headers, packages with optional shipping-label PDFs).
This repo is a generic template: configure your API base URL, credentials, and path overrides via environment variables. No vendor-specific endpoints or secrets are baked in.
Features
Stdio transport — standard MCP integration for Cursor and Claude Desktop
Token-first auth — login via env credentials; JWT passed to subsequent tools
Account vs. centers — separate tools so agents don't mix up single-account data with location lists
Carrier discovery — list carriers and services for job header payloads
Two job-creation flows
All-in-one — single POST with full job body
Header + packages — create header first, then one or more packages
Shipping labels — optional PDF download, local save, HTML viewer, and
file://URL for Cursor's browser tools
Related MCP server: Easyship MCP
Requirements
Node.js 16+
A REST API compatible with the expected request/response shapes (see API paths)
Quick start
git clone <your-repo-url>
cd company-mcp-server
npm install
cp .env.example .env
# Edit .env with your API base URL and credentials
npm run build
npm startConfiguration
Copy .env.example to .env and set at least:
Variable | Required | Description |
| Yes | API origin, no trailing slash (e.g. |
| Yes | Username for the login tool |
| Yes | Password for the login tool |
| No | Directory for saved label PDFs (default: OS temp + |
API paths
Default relative paths (override with COMPANY_API_PATH_* if your backend differs):
Env variable | Default |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Expected login response shape: { "data": { "token": "..." } }.
The token is sent in the Authorization header as-is (no Bearer prefix by default).
Use with Cursor
Add to your MCP settings (.cursor/mcp.json or Cursor Settings → MCP):
{
"mcpServers": {
"company-mcp": {
"command": "node",
"args": ["/absolute/path/to/company-mcp-server/build/index.js"],
"env": {
"COMPANY_API_BASE_URL": "https://api.example.com",
"COMPANY_API_USERNAME": "your-username",
"COMPANY_API_PASSWORD": "your-password"
}
}
}
}Rebuild after source changes: npm run build.
In chat, mention @company-mcp to steer the agent toward these tools.
Tools
Tool | Type | Description |
| Auth | Login; returns JWT |
| Read | Current account ( |
| Auth + read | Login + account in one step |
| Read | List centers for authenticated account |
| Auth + read | Login + centers in one step |
| Read | Carriers and services for job headers |
| Write | Create full job (single payload) |
| Write | Create job header (header + packages flow) |
| Write | Add package; optional label PDF |
Write tools are marked destructive in MCP annotations. The server instructions tell agents to ask for explicit user confirmation before creating or modifying data.
Job creation flows
All-in-one — use company_jobs_create_all_in_one with a JSON jobBody.
Header + packages
company_web_carriers— resolve carrier_idand serviceidcompany_jobs_headers_create— JSONheaderBodycompany_jobs_packages_create— one call per package; distinctreferenceper package
Do not mix both flows for the same user intent.
Shipping labels
company_jobs_packages_create defaults to requestLabel: true. On success the server may:
Decode base64
data.labeland write a PDF underCOMPANY_MCP_LABELS_DIRGenerate a sibling HTML viewer
Attempt to open the viewer in the system browser
Return local paths and a
file://URL for Cursor's Simple Browser or browser MCP
Set requestLabel: false only when the user explicitly does not want a label.
Development
npm install
npm run build # compile TypeScript → build/
npm start # run MCP server on stdioProject layout:
src/index.ts # server, tools, API client helpers
build/ # compiled output (gitignored)
.env.example # template env file (safe to commit)Security
Never commit
.envor real credentials (see.gitignore).Credentials are read only from the MCP process environment, not from tool arguments.
Configure production vs. sandbox URLs via
COMPANY_API_BASE_URLonly — nothing is hardcoded.Review write-tool usage in your environment; agents should confirm before mutating data.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI agents to create shipments, track packages, get rates, validate addresses, schedule pickups, and find UPS locations via the UPS API.9102MIT

Easyship MCPofficial
AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage global shipping operations, including rate comparison, shipment creation, label purchasing, tracking, pickup scheduling, address validation, billing, and analytics, via natural language.30MIT- FlicenseBqualityBmaintenanceIntegrates the Machship freight management platform with MCP-compatible LLMs, enabling shipment creation, quotes, labels, and carrier management via natural language.1001
- AlicenseAqualityBmaintenanceEnables AI assistants to query and manage logistics shipment data, supporting operations like tracking, quoting, and performance analysis via nine tools backed by a demo dataset or a REST API.9253MIT
Related MCP Connectors
Multi-carrier shipping for AI agents: compare rates, buy labels, track packages, validate addresses
A paid remote MCP for ShipSwift, built to return verdicts, receipts, usage logs, and audit-ready JSO
India shipping for AI agents: Shiprocket courier serviceability, create orders, track AWB.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/carmelocompiano/custom-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server