Skip to content

Submit MCP server: singleops-mcp #4534

Description

@sanjibani

Server name

sanjibani/singleops-mcp

Repository

https://github.com/sanjibani/singleops-mcp

Description

First MCP server for the SingleOps Public API. SingleOps is the leading US green-industry field-service platform (landscaping, tree care, irrigation, lawn care, sod farms), part of Granum (1,000+ customers). 7 tools across 4 endpoint groups: list_operations + list_custom_inputs (reference data), search_clients_by_email + search_clients_by_phone (client lookup with prefix-match + pagination), create_lead_for_existing_client + create_lead_with_new_client (lead creation in a single POST to /jobs), health_check. Auth: SINGLEOPS_USER_EMAIL + SINGLEOPS_USER_TOKEN (body for POST, URL query params for GET, per SingleOps docs at docs.singleops.com). 33 tests via respx + hypothesis, ruff + mypy --strict clean, isError-compliance per the Blackwell MCP security audit pattern, JSONL audit logging per tool call with secret + PII redaction (user_token, email, phone, mobile all stripped), typed exception hierarchy, application-level retry with exponential backoff honoring Retry-After, dispatch table for HTTP status -> exception, shared httpx.AsyncClient with connection pooling + transport retries. Saturation check confirmed: no first-party SingleOps MCP, no Zapier MCP for SingleOps specifically, no Supergood.ai wrapper. Adjacent saturated picks: Aspire/Service Autopilot/Arborgold (Supergood MCPs), RealGreen (WorkWave MCPs), FieldRoutes (covered in #18), Jobber (covered in #6), LMN (Granum sibling but no public API for MCP wrapping). SingleOps is the leader in the green-industry mid-market and the only Granum-family product with a clean public REST API for MCP wrapping.

Tools exposed

7

Connection info

  • Installation: see repo README
  • Transport: stdio (default)
  • Auth: env vars (SINGLEOPS_USER_EMAIL (required, the API user's email address; provision by emailing support@singleops.com) + SINGLEOPS_USER_TOKEN (required, the API user's secret token issued by SingleOps support) + SINGLEOPS_BASE_URL (optional, defaults to https://app.singleops.com) + SINGLEOPS_TIMEOUT (optional, defaults to 30s) + SINGLEOPS_MAX_RETRIES (optional, defaults to 3) + SINGLEOPS_AUDIT_LOG (optional JSONL audit log file path, defaults to stderr))

Self-check

  • Repository is public
  • README has install + usage instructions
  • Server has at least one tool
  • MIT-licensed

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions