Agent skill · operations · membranedev
servicem8
ServiceM8 integration. Manage Organizations, Users, Goals, Filters. Use when the user wants to interact with ServiceM8 data.
Why this skill is useful
Adds specific commands and workflows for integrating with ServiceM8 that the AI wouldn't reliably generate on its own.
What it needs
Requires @membranehq/cli installed locally. Requires membrane account access. About 4k tokens when loaded. Last updated 2026-04-28. 253 stars on the source repository.
What this skill does
ServiceM8 ServiceM8 is a field service management software designed for trade businesses like electricians, plumbers, and HVAC technicians. It helps these businesses manage jobs, scheduling, invoicing, and communication with clients, all in one platform. Essentially, it's a mobile-first CRM and operations tool for small to medium-sized service businesses. Official docs: https://developer.servicem8.com/ ServiceM8 Overview Client Site Job Staff Material Quote Invoice Checklist Template Form SMS Message Email Working with ServiceM8 This skill uses the Membrane CLI to interact with ServiceM8. Membrane handles authentication and credentials refresh automatically — so you can focus on the integration logic rather than auth plumbing. Install the CLI Install the Membrane CLI so you can run membrane from the terminal: Authentication This will either open a browser for authentication or print an authorization URL to the console, depending on whether interactive mode is available. Headless environments: The command will print an authorization URL. Ask the user to open it in a browser. When they see a code after completing login, finish with: Add --json to any command for machine-readable JSON output. Agent Types : claude, openclaw, codex, warp, windsurf, etc. Those will be used to adjust tooling to be used best with your harness Connecting to ServiceM8 Use membrane connection ensure to find or create a connection by app URL or domain: The user completes authentication in the browser. The output contains the new connection id. This is the fastest way to get a connection. The URL is normalized to a domain and matched against known apps. If no app is found, one is created and a connector is built automatically. If the returned connection has state: "READY", skip to Step 2. 1b. Wait for the connection to be ready If the connection is in BUILDING state, poll until it's ready: The --wait flag long-polls (up to --timeout seconds, default 30) until the state changes. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills membranedev/servicem8