=== UPDATES === - fieldedge: Added apps, tools, main server entry, full rebuild - lightspeed: Added complete src/ directory with tools + apps - squarespace: Full rebuild — new apps, clients, tools, types modules - toast: Full rebuild — api-client, apps, tools, types - touchbistro: Full rebuild — api-client, tools, types, gitignore - servicetitan: Added 4 React UI apps (call-tracking, lead-source-analytics, performance-metrics, schedule-calendar) All servers restructured from single-file to modular architecture.
7.8 KiB
7.8 KiB
FieldEdge MCP Server
Complete Model Context Protocol (MCP) server for FieldEdge field service management platform. Provides comprehensive access to jobs, customers, invoices, estimates, technicians, dispatch, equipment, inventory, service agreements, and reporting.
Features
45+ Tools Across 10 Categories
Jobs Management (9 tools)
fieldedge_jobs_list- List and filter jobsfieldedge_jobs_get- Get job detailsfieldedge_jobs_create- Create new jobfieldedge_jobs_update- Update jobfieldedge_jobs_complete- Mark job completefieldedge_jobs_cancel- Cancel jobfieldedge_jobs_line_items_list- List job line itemsfieldedge_jobs_line_items_add- Add line item to jobfieldedge_jobs_equipment_list- List equipment on job
Customer Management (8 tools)
fieldedge_customers_list- List and filter customersfieldedge_customers_get- Get customer detailsfieldedge_customers_create- Create new customerfieldedge_customers_update- Update customerfieldedge_customers_delete- Delete/deactivate customerfieldedge_customers_search- Search customersfieldedge_customers_locations_list- List customer locationsfieldedge_customers_equipment_list- List customer equipment
Invoice Management (6 tools)
fieldedge_invoices_list- List and filter invoicesfieldedge_invoices_get- Get invoice detailsfieldedge_invoices_create- Create invoicefieldedge_invoices_update- Update invoicefieldedge_invoices_payments_list- List paymentsfieldedge_invoices_payments_add- Add payment
Estimate Management (6 tools)
fieldedge_estimates_list- List estimatesfieldedge_estimates_get- Get estimate detailsfieldedge_estimates_create- Create estimatefieldedge_estimates_update- Update estimatefieldedge_estimates_send- Send estimate to customerfieldedge_estimates_approve- Approve and convert to job
Technician Management (6 tools)
fieldedge_technicians_list- List techniciansfieldedge_technicians_get- Get technician detailsfieldedge_technicians_create- Create technicianfieldedge_technicians_update- Update technicianfieldedge_technicians_performance_get- Get performance metricsfieldedge_technicians_time_entries_list- List time entries
Dispatch Management (5 tools)
fieldedge_dispatch_board_get- Get dispatch boardfieldedge_dispatch_assign_tech- Assign technician to jobfieldedge_dispatch_technician_availability_get- Get technician availabilityfieldedge_dispatch_zones_list- List dispatch zonesfieldedge_dispatch_optimize- Auto-optimize dispatch schedule
Equipment Management (5 tools)
fieldedge_equipment_list- List equipmentfieldedge_equipment_get- Get equipment detailsfieldedge_equipment_create- Create equipment recordfieldedge_equipment_update- Update equipmentfieldedge_equipment_service_history_list- List service history
Inventory Management (6 tools)
fieldedge_inventory_parts_list- List inventory partsfieldedge_inventory_parts_get- Get part detailsfieldedge_inventory_stock_update- Update stock levelsfieldedge_inventory_purchase_orders_list- List purchase ordersfieldedge_inventory_purchase_orders_get- Get PO detailsfieldedge_inventory_reorder_report- Get reorder report
Service Agreements (6 tools)
fieldedge_agreements_list- List service agreementsfieldedge_agreements_get- Get agreement detailsfieldedge_agreements_create- Create agreementfieldedge_agreements_update- Update agreementfieldedge_agreements_cancel- Cancel agreementfieldedge_agreements_renew- Renew agreement
Reporting & Analytics (6 tools)
fieldedge_reports_revenue- Revenue reportfieldedge_reports_job_profitability- Job profitability analysisfieldedge_reports_technician_performance- Tech performance metricsfieldedge_reports_aging- A/R aging reportfieldedge_reports_service_agreement_revenue- Agreement revenuefieldedge_reports_equipment_service_due- Equipment service due
16 Interactive MCP Apps
- job-dashboard - Interactive jobs overview with filtering
- job-detail - Detailed job view with all information
- job-grid - Spreadsheet-style bulk job management
- customer-detail - Complete customer profile
- customer-grid - Customer data grid view
- invoice-dashboard - Invoice and payment tracking
- estimate-builder - Interactive estimate creation
- dispatch-board - Visual dispatch board
- schedule-calendar - Job scheduling calendar
- technician-dashboard - Tech performance dashboard
- equipment-tracker - Equipment and maintenance tracking
- inventory-manager - Inventory and stock management
- agreement-manager - Service agreement management
- revenue-dashboard - Revenue analytics
- performance-metrics - Performance analytics
- aging-report - A/R aging visualization
Installation
npm install
npm run build
Configuration
Set the following environment variables:
export FIELDEDGE_API_KEY="your_api_key_here"
export FIELDEDGE_BASE_URL="https://api.fieldedge.com/v2" # Optional, defaults to production
Usage
With Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"fieldedge": {
"command": "node",
"args": ["/path/to/fieldedge/dist/main.js"],
"env": {
"FIELDEDGE_API_KEY": "your_api_key_here"
}
}
}
}
Standalone
FIELDEDGE_API_KEY=your_key npm start
Example Queries
Jobs:
- "Show me all emergency jobs scheduled for today"
- "Create a new HVAC maintenance job for customer C123"
- "What jobs are assigned to technician T456?"
- "Mark job J789 as complete"
Customers:
- "Find all commercial customers in Chicago"
- "Show me customer details for account C123"
- "List all equipment for customer C456"
Invoices:
- "Show me all overdue invoices"
- "Create an invoice for job J789"
- "Add a $500 payment to invoice INV-123"
Dispatch:
- "Show me today's dispatch board"
- "Assign technician T123 to job J456"
- "What's the technician availability for tomorrow?"
- "Optimize the dispatch schedule for tomorrow"
Reports:
- "Show me revenue for the last 30 days"
- "What's the profitability of job J123?"
- "Generate an aging report"
- "Show technician performance metrics for this month"
Architecture
src/
├── client.ts # API client with auth, pagination, error handling
├── types.ts # TypeScript type definitions
├── tools/ # Tool implementations
│ ├── jobs-tools.ts
│ ├── customers-tools.ts
│ ├── invoices-tools.ts
│ ├── estimates-tools.ts
│ ├── technicians-tools.ts
│ ├── dispatch-tools.ts
│ ├── equipment-tools.ts
│ ├── inventory-tools.ts
│ ├── agreements-tools.ts
│ └── reporting-tools.ts
├── apps/ # MCP app implementations
│ └── index.ts
├── server.ts # MCP server setup
└── main.ts # Entry point
API Client Features
- Bearer Token Authentication - Automatic authorization header injection
- Pagination Support - Built-in pagination handling with
getPaginated()andgetAllPages() - Error Handling - Comprehensive error handling with detailed error messages
- Request Methods - Full REST support (GET, POST, PUT, PATCH, DELETE)
- Type Safety - Full TypeScript typing for all API responses
Development
# Install dependencies
npm install
# Build
npm run build
# Development with watch mode
npm run build -- --watch
# Run tests (if implemented)
npm test
License
MIT
Support
For issues or questions:
- FieldEdge API documentation: https://developer.fieldedge.com
- MCP Protocol: https://modelcontextprotocol.io