Koskamo

Soundcheck Live MCP

An official MCP server for Soundcheck Live that allows AI agents to access live event staffing and gig management data. It provides public tools for estimating event costs, searching inventory, and listing quote packages, as well as member-only tools for booking and sponsorship requests via OAuth.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Soundcheck Live MCP logo, by Soundcheck LiveVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by Soundcheck Live
MCP endpoint (Streamable HTTP)
https://mcp.soundchecklive.io/public/mcp
Vendor documentation

What its tools do

18 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

18 of 18 have a description · 18 of 18 declare behavior hints · 15 of 15 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to soundchecklive.io ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Get illustrative cost estimates for live events
  • Search for available crew and inventory
  • Request event bookings with confirmation
  • List available quote packages

Source and maintenance

Vendor evidenceRegistry 0.1.0
Maintenance checked

Protocol and capabilities

Server
soundcheck-public 0.1.0-ts+9ffd4b6929feb80706692fa13a78689d13b67c44
MCP protocol negotiated in check
2025-11-25
Tools
18 advertised
Resources
1 advertised
Resource templates
0 advertised
Prompts
3 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "prompts": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Soundcheck directory of event businesses, anonymous, no login. search_businesses finds AV, sound, lighting, staging, backline, video, DJs, bands, agencies, planners, caterers, photographers, rentals, staffing, security and transport by category, city and text; listings come from public websites via context.dev and are cached, and an unlisted category and city is researched within minutes (research.status "queued"). get_business returns one listing by id or domain; on_soundcheck listings take request_booking via soundcheck_org_slug. quote_event gives an ILLUSTRATIVE estimate from a SYNTHETIC catalog (not a binding quote); list_quote_packages shows its rate cards. lookup_market_pricing returns evidence-backed price ranges with citations. get_public_org, list_positions / normalize_positions, search_places / get_place (seeded venues and hotels) and search_inventory / normalize_inventory are lookup helpers. get_import_format / check_import_file / read_event_details cover Universal Event Format (UEF) drafts. read_event_details: the pasted text is sent to a third-party AI provider, Anthropic (Claude), through the Vercel AI Gateway with zero-data-retention routing requested; Soundcheck does not save it to any event or account (https://soundchecklive.io/privacy). request_booking and request_sponsorship create leads; nothing is sent until the person confirms by email: the call only emails a confirmation link to the address given, and the request reaches the organization after that person opens the email and clicks Confirm. send_feedback reaches the product team. Member gigs and crew workflows are on the separate signed-in Soundcheck MCP.

Tools

18 advertised

search_businesses — Search event businesses
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Find event businesses — AV and production companies, sound, lighting, staging, backline, video, DJs, live bands, entertainment agencies, planners, caterers, photographers, videographers, rentals, decor, staffing, security and transportation — by category, city and free text. Categories: av_production, sound, lighting, staging, backline, video, dj, live_band, entertainment_agency, event_planner, catering, photography, videography, party_rentals, decor_florals, event_staffing, security, transportation. Listings are researched from public websites with context.dev and cached; each result has the official website, description, services, public contact details and source URLs. A category and city that have not been researched yet are queued: research.status is "queued", whatever is already listed comes back, and the new listings appear within a few minutes. research.status "limited" means the daily research budget is spent, and "paused" or "unavailable" means research is off; cached listings are still returned. on_soundcheck=true marks a business that manages its own Soundcheck profile; its soundcheck_org_slug works with get_public_org and request_booking. Contact details are what the business publishes; nothing is invented. decision_maker_count is how many decision makers Soundcheck has on file for the business (null until looked up); their names and work emails are available to Soundcheck Team plans through the signed-in member server.

search_businesses input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "city": {
      "type": "string",
      "maxLength": 120,
      "description": "city served, e.g. \"Austin\""
    },
    "limit": {
      "type": "integer",
      "maximum": 50,
      "minimum": 1,
      "description": "results per page, 1-50 (default 20)"
    },
    "query": {
      "type": "string",
      "maxLength": 100,
      "description": "free text matched against business name, description and services"
    },
    "offset": {
      "type": "integer",
      "maximum": 500,
      "minimum": 0,
      "description": "results to skip for paging"
    },
    "region": {
      "type": "string",
      "maxLength": 120,
      "description": "state or region, e.g. \"TX\""
    },
    "country": {
      "type": "string",
      "maxLength": 120,
      "description": "country name or ISO-3166 alpha-2 code, e.g. \"US\""
    },
    "category": {
      "enum": [
        "av_production",
        "sound",
        "lighting",
        "staging",
        "backline",
        "video",
        "dj",
        "live_band",
        "entertainment_agency",
        "event_planner",
        "catering",
        "photography",
        "videography",
        "party_rentals",
        "decor_florals",
        "event_staffing",
        "security",
        "transportation"
      ],
      "type": "string",
      "description": "kind of event business; with a city, an unlisted city is queued for research"
    }
  },
  "additionalProperties": false
}
search_businesses output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
search_businesses annotations
{
  "title": "Search event businesses",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
get_business — Get event business
Advertised by the server during the last successful anonymous check.
Advertised read-only

Get one event business from the directory by the id search_businesses returned or by its website domain: name, website, description, services, categories, base city, public phone and email, logo, social links, source URLs, whether it is on Soundcheck, and decision_maker_count (decision makers on file; names and emails are a Team plan feature of the signed-in member server). Returns not-found for an unknown id or domain.

get_business input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "business"
  ],
  "properties": {
    "business": {
      "type": "string",
      "maxLength": 253,
      "minLength": 1,
      "description": "business id from search_businesses, or its website domain such as \"acmeav.com\""
    }
  },
  "additionalProperties": false
}
get_business output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
get_business annotations
{
  "title": "Get event business",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
quote_event — Estimate event cost (illustrative)
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns a ballpark cost, budget range, or line-item needs estimate for a live event (party, birthday, wedding, corporate offsite, conference, concert, festival, gala, fundraiser, and similar). No login. Takes a plain-language description (for example "rooftop birthday in Austin Friday night for 50 people with a DJ and tacos") and returns an illustrative low/mid/high estimate, line-item breakdown (labor, production, add-ons, logistics), suggested deposit, assumptions, confidence, missing information, and evidence pointers. Numbers come from the versioned SYNTHETIC pricing catalog and a deterministic engine — not model-invented prices. The catalog is illustrative: not real cost of goods and not a binding vendor quote (request_booking contacts an organization for a binding price). A returned quote_id plus overridden requirements refines an estimate. Optional use_ai_grounding (default off) may fill only event type, location, and date; it never supplies a number; the pasted text is sent to a third-party AI provider, Anthropic (Claude), through the Vercel AI Gateway with zero-data-retention routing requested; Soundcheck does not save it to any event or account (https://soundchecklive.io/privacy).

quote_event input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "event day (YYYY-MM-DD)"
    },
    "location": {
      "type": "string",
      "maxLength": 200,
      "description": "city, metro, or venue name used to resolve the market index"
    },
    "quote_id": {
      "type": "string",
      "maxLength": 4096,
      "description": "a quote_id from an earlier quote_event call, to refine instead of starting over"
    },
    "date_range": {
      "type": "object",
      "required": [
        "start",
        "end"
      ],
      "properties": {
        "end": {
          "$ref": "#/properties/date"
        },
        "start": {
          "$ref": "#/properties/date"
        }
      },
      "description": "multi-day run as civil days (YYYY-MM-DD)",
      "additionalProperties": false
    },
    "description": {
      "type": "string",
      "maxLength": 8000,
      "description": "free-text event description, e.g. \"Two-day outdoor music festival in Austin, ~3,000 attendees, LED wall and livestream\". Required unless quote_id is given."
    },
    "requirements": {
      "type": "object",
      "properties": {
        "crew": {
          "type": "integer",
          "maximum": 500,
          "minimum": 1,
          "description": "technicians on site"
        },
        "days": {
          "type": "integer",
          "maximum": 30,
          "minimum": 1,
          "description": "event days on site"
        },
        "tier": {
          "type": "string",
          "maxLength": 40,
          "description": "essential, standard, or premium"
        },
        "addons": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 60
          },
          "maxItems": 12,
          "description": "catalog add-on ids or labels, e.g. led_wall, livestream, rigging"
        },
        "venue_id": {
          "type": "string",
          "maxLength": 200,
          "description": "seeded places-catalog venue id, e.g. venue_red-rocks-amphitheatre"
        },
        "attendance": {
          "type": "integer",
          "maximum": 500000,
          "minimum": 1,
          "description": "expected attendance"
        },
        "event_type": {
          "type": "string",
          "maxLength": 80,
          "description": "catalog event profile id or label, e.g. festival, corporate, wedding"
        },
        "hours_per_day": {
          "type": "integer",
          "maximum": 24,
          "minimum": 1,
          "description": "crew call length per day"
        }
      },
      "description": "structured overrides; they win over anything read from the description",
      "additionalProperties": false
    },
    "use_ai_grounding": {
      "type": "boolean",
      "description": "opt in to one AI normalization pass that may fill ONLY event type, location/venue, and date. Never supplies a number. Default false. When true, the pasted text is sent to a third-party AI provider, Anthropic (Claude), through the Vercel AI Gateway with zero-data-retention routing requested; Soundcheck does not save it to any event or account (https://soundchecklive.io/privacy)."
    }
  },
  "additionalProperties": false
}
quote_event output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
quote_event annotations
{
  "title": "Estimate event cost (illustrative)",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
list_quote_packages — List illustrative estimate rates
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns the pricing catalog behind quote_event: event profiles, production tiers with their tech-hour and per-day gear rates, add-on packages, metro market indexes, and the rules (overtime, logistics, attendance scale, deposit steps, estimate band). SYNTHETIC and illustrative — published so a quote can be checked line by line, not a price list any organization charges.

list_quote_packages input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {},
  "additionalProperties": false
}
list_quote_packages output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
list_quote_packages annotations
{
  "title": "List illustrative estimate rates",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_public_org — Get public organization
Advertised by the server during the last successful anonymous check.
Advertised read-only

Look up a Soundcheck organization's public profile by its slug or id (name, description, genre, website, public contact + social links). Returns not-found for an unknown slug or id.

get_public_org input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "identifier"
  ],
  "properties": {
    "identifier": {
      "type": "string",
      "description": "the organization's public slug or id"
    }
  },
  "additionalProperties": false
}
get_public_org output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
get_public_org annotations
{
  "title": "Get public organization",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
list_positions — List crew positions
Advertised by the server during the last successful anonymous check.
Advertised read-only

List the standard crew positions/roles used to staff a live event (e.g. audio engineer, lighting, stagehand, performer), grouped by section.

list_positions input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {},
  "additionalProperties": false
}
list_positions output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
list_positions annotations
{
  "title": "List crew positions",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
normalize_positions — Normalize crew positions
Advertised by the server during the last successful anonymous check.
Advertised read-only

Map free-text crew role strings (slang, abbreviations, informal titles) to the Soundcheck global position catalog — the same roles returned by list_positions. Handles labels like FOH, A2, sound guy, LD, or stagehand and returns catalog position ids with canonical names/sections; list_positions returns the full catalog. Does not create or write positions; unknown roles are returned as unmapped with fuzzy suggestions.

normalize_positions input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "roles"
  ],
  "properties": {
    "hint": {
      "type": "string",
      "maxLength": 128,
      "description": "optional event type hint e.g. wedding, festival (max 128 chars)"
    },
    "roles": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 128
      },
      "maxItems": 64,
      "minItems": 1,
      "description": "crew role strings to normalize against the catalog (max 64 entries, 128 chars each)"
    }
  },
  "additionalProperties": false
}
normalize_positions output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
normalize_positions annotations
{
  "title": "Normalize crew positions",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
read_event_details — Read event details
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Read messy live-event material (pasted festival pack, email, rundown, or notes) into a draft Soundcheck import file (Universal Event Format, UEF) plus missing_fields, open_questions, and confidence. Analyze only: no login, no organization, nothing is saved or committed, and dates/venues are never invented (absent facts stay null and appear in missing_fields). AI processing: the pasted text is sent to a third-party AI provider, Anthropic (Claude), through the Vercel AI Gateway with zero-data-retention routing requested; Soundcheck does not save it to any event or account (https://soundchecklive.io/privacy). When the AI provider is not configured the tool returns a clear error. Optional hint: event type, locale, or format (text|csv|unknown). File upload (content_base64) is a follow-up — paste text for now.

read_event_details input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "hint": {
      "type": "string",
      "description": "optional event type, locale, or format hint (text|csv|unknown); freeform hints are prepended to the source text"
    },
    "text": {
      "type": "string",
      "description": "messy pasted event pack / email / rundown / notes to analyze into UEF"
    },
    "raw_input": {
      "type": "string",
      "description": "legacy alias for text (normalize_event_data compatibility)"
    },
    "format_hint": {
      "enum": [
        "text",
        "csv",
        "unknown"
      ],
      "type": "string",
      "description": "legacy alias for hint when the value is text|csv|unknown"
    }
  },
  "additionalProperties": false
}
read_event_details output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
read_event_details annotations
{
  "title": "Read event details",
  "readOnlyHint": true,
  "openWorldHint": true,
  "destructiveHint": false
}
get_import_format — Get import format
Advertised by the server during the last successful anonymous check.
Advertised read-only

Return the format of a Soundcheck import file: the Universal Event Format (UEF) 2.0 JSON Schema — one document with clients, venues, acts, projects and gigs (with their days, run of show, shifts and crew) linked by ref — plus minimal and festival examples and a docs URL. A reference for drafting or editing UEF — no login, no AI, nothing is saved. check_import_file checks a draft locally.

get_import_format input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {},
  "additionalProperties": false
}
get_import_format output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
get_import_format annotations
{
  "title": "Get import format",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
check_import_file — Check import file
Advertised by the server during the last successful anonymous check.
Advertised read-only

Check a Soundcheck import file (a UEF 2.0 document, as an object or JSON string) before importing it: the published schema (schema_version 2.x, known keys, types, required fields, phases), at least one record, every ref resolving to a record and never blank, no repeated ref, external_id or string-list entry, act names unique ignoring case, pack items carrying a non-blank name or external_id, the option vocabularies import applies (statuses, fee types — letter case and padding are forgiven), the field rules import applies (email shape, unpadded civil dates, ISO 4217 currency codes on events and ledger lines, positive ledger amounts and non-negative fees with at most two decimals, latitude and longitude ranges, plain IANA timezone names without offsets or padding), and the gig rules import applies (a ref or an inline venue/client, end_date not before event_date, multi-day gigs carry dates only, days inside the gig, HH:MM cue times). Returns valid, errors with paths such as events[0].days[1].date, missing_required paths, and schema_version. Deterministic and local — no AI, no org write, no invented fixes. Input is capped at 256 KiB.

check_import_file input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "uef"
  ],
  "properties": {
    "uef": {
      "anyOf": [
        {
          "type": "object",
          "additionalProperties": {}
        },
        {
          "type": "string"
        }
      ],
      "description": "UEF document as object or JSON string"
    }
  },
  "additionalProperties": false
}
check_import_file output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
check_import_file annotations
{
  "title": "Check import file",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
search_places — Search public places catalog
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search a seeded public industry catalog of well-known venues and hotels (not a complete world database; not org-private Soundcheck venues). Returns matching places from the seed by name, alias, or id. Unknown names return empty results with optional catalog name suggestions — never invented addresses or geo.

search_places input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "query"
  ],
  "properties": {
    "city": {
      "type": "string",
      "description": "optional city filter (case-insensitive substring)"
    },
    "type": {
      "enum": [
        "venue",
        "hotel"
      ],
      "type": "string",
      "description": "optional place type filter"
    },
    "query": {
      "type": "string",
      "maxLength": 200,
      "description": "name, alias, or id to search for (max 200 characters)"
    }
  },
  "additionalProperties": false
}
search_places output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
search_places annotations
{
  "title": "Search public places catalog",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_place — Get public place by id
Advertised by the server during the last successful anonymous check.
Advertised read-only

Look up one entry from the seeded public industry places catalog by stable id (e.g. venue_red-rocks-amphitheatre). Not org-private CRM data; returns not found when the id is absent from the seed.

get_place input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "stable catalog id, e.g. venue_red-rocks-amphitheatre"
    }
  },
  "additionalProperties": false
}
get_place output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
get_place annotations
{
  "title": "Get public place by id",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
search_inventory — Search inventory types
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search the public Soundcheck live-event gear taxonomy (microphones, DI boxes, consoles, lighting, video, rigging, movers, cables, stands, backline, wireless, etc.). Optional query filters by name, alias, id, or category. Returns catalog version + types with stable inventory ids — not org stock levels, serials, quantities, or pricing. normalize_inventory maps free-text gear lists onto these ids.

search_inventory input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 200,
      "description": "optional search string (e.g. SM58, DI, mover, XLR). Absent or empty lists the full public catalog."
    }
  },
  "additionalProperties": false
}
search_inventory output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
search_inventory annotations
{
  "title": "Search inventory types",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
normalize_inventory — Normalize inventory lines
Advertised by the server during the last successful anonymous check.
Advertised read-only

Map free-text gear lines onto the public Soundcheck inventory catalog. Returns mapped[] (input, inventory_id, name, category, confidence) and unmapped[] (input + suggestions). Deterministic alias matching (e.g. SM58 → mic_shure_sm58). Does not read or write organization inventory stock. search_inventory browses the taxonomy.

normalize_inventory input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "lines": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 200
      },
      "maxItems": 64,
      "description": "gear lines to normalize (e.g. [\"SM58\", \"2x passive DI\", \"moving head\"]). Empty/whitespace lines are skipped. Max 64 lines, 200 chars each."
    }
  },
  "additionalProperties": false
}
normalize_inventory output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
normalize_inventory annotations
{
  "title": "Normalize inventory lines",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
lookup_market_pricing — Look up market pricing
Advertised by the server during the last successful anonymous check.
Advertised read-only

Returns evidence-backed market price ranges for live-event services (DJ, live band, audio, lighting, video, stage crew, photography, production packages, performance fees) for a city, state, or country, with citations. Numbers come only from recorded evidence: published vendor rates and industry rate cards with source URLs, plus booking aggregates released only when backed by at least 3 distinct organizations — never a single org or named customer. Prices are not model-invented: if evidence is missing, coverage is "none" with a null range. Lookup walks market to region to country for available evidence. Each category includes low/typical/high, min/max, a basis block, up to 10 citable evidence rows, and a short explanation. event_type, guest_count, and duration_hours are accepted and echoed but do not narrow evidence yet. Distinct from quote_event, which uses a SYNTHETIC illustrative catalog.

lookup_market_pricing input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "service_categories"
  ],
  "properties": {
    "market": {
      "type": "string",
      "description": "city market to price, e.g. \"Chicago, IL\"; falls back to region then country"
    },
    "region": {
      "type": "string",
      "description": "US state name or two-letter code, e.g. \"IL\"; used when the market has no evidence"
    },
    "country": {
      "type": "string",
      "description": "ISO-3166 alpha-2 country code; defaults to US"
    },
    "event_date": {
      "type": "string",
      "description": "event civil day as YYYY-MM-DD"
    },
    "event_type": {
      "type": "string",
      "description": "event type such as wedding or festival; echoed back, does not filter yet"
    },
    "guest_count": {
      "type": "number",
      "description": "expected guest count; echoed back, does not filter yet"
    },
    "pricing_unit": {
      "enum": [
        "PER_EVENT",
        "PER_HOUR",
        "PER_DAY",
        "PER_PERSON",
        "PER_ITEM"
      ],
      "type": "string",
      "description": "restrict evidence to one pricing unit; otherwise the dominant unit is reported"
    },
    "duration_hours": {
      "type": "number",
      "description": "expected service duration in hours; echoed back, does not filter yet"
    },
    "service_categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 6,
      "minItems": 1,
      "description": "what to price, 1-6 entries from: DJ, LIVE_BAND, AUDIO_PRODUCTION, LIGHTING, VIDEO, STAGE_CREW, PHOTOGRAPHY, PRODUCTION_PACKAGE, PERFORMANCE_FEE"
    }
  },
  "additionalProperties": false
}
lookup_market_pricing output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
lookup_market_pricing annotations
{
  "title": "Look up market pricing",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
request_booking — Request booking
Advertised by the server during the last successful anonymous check.
Open-world

Send a booking / staffing request, including the requester's name, email, and optional phone, to a Soundcheck organization, which creates a lead its team follows up on. Requires organization_id, name, email, event_date, event_type, and location. User confirmation: nothing is sent until the person confirms by email: the call only emails a confirmation link to the address given, and the request reaches the organization after that person opens the email and clicks Confirm.

request_booking input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "organization_id",
    "name",
    "email",
    "event_date",
    "event_type",
    "location"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "the requester's name"
    },
    "email": {
      "type": "string",
      "description": "the requester's email"
    },
    "phone": {
      "type": "string",
      "description": "the requester's phone"
    },
    "budget": {
      "type": "string",
      "description": "approximate budget, free-form"
    },
    "message": {
      "type": "string",
      "description": "what the requester needs (roles, headcount, details)"
    },
    "location": {
      "type": "string",
      "description": "where the event is (city / venue / address)"
    },
    "event_date": {
      "type": "string",
      "description": "the event date (e.g. 2026-07-04)"
    },
    "event_type": {
      "type": "string",
      "description": "the kind of event (e.g. wedding, festival, corporate, concert)"
    },
    "organization_id": {
      "type": "string",
      "description": "the Soundcheck organization to send this booking/staffing request to (slug or id)"
    }
  },
  "additionalProperties": false
}
request_booking output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
request_booking annotations
{
  "title": "Request booking",
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
request_sponsorship — Request sponsorship
Advertised by the server during the last successful anonymous check.
Open-world

Send a sponsorship inquiry, including the sponsor's name, email, and optional phone and website, to a Soundcheck organization, which creates an inbound sponsor lead it follows up on. Requires organization_id, name, and email. User confirmation: nothing is sent until the person confirms by email: the call only emails a confirmation link to the address given, and the request reaches the organization after that person opens the email and clicks Confirm.

request_sponsorship input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "organization_id",
    "name",
    "email"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "the prospective sponsor's name"
    },
    "email": {
      "type": "string",
      "description": "the sponsor contact email"
    },
    "phone": {
      "type": "string",
      "description": "the prospective sponsor's phone"
    },
    "message": {
      "type": "string",
      "description": "additional sponsorship details or context"
    },
    "website": {
      "type": "string",
      "description": "the sponsor's website or company URL"
    },
    "organization_id": {
      "type": "string",
      "description": "the Soundcheck organization to approach (slug or id)"
    },
    "estimated_budget": {
      "type": "string",
      "description": "approximate sponsorship budget, free-form"
    },
    "sponsorship_interest": {
      "type": "string",
      "description": "what they want to sponsor / their interest"
    }
  },
  "additionalProperties": false
}
request_sponsorship output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
request_sponsorship annotations
{
  "title": "Request sponsorship",
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
send_feedback — Send feedback to Soundcheck
Advertised by the server during the last successful anonymous check.

Send feedback to the people who build this product (not the user's organization, crew, or clients). It carries bug reports, feature suggestions, support questions, and praise, plus problems with these tools that the user agreed to report, and contains only what the user asked or agreed to send. It creates a Linear issue for the product team (email fallback if Linear is unavailable); it does not message anyone in the user's organization (the messaging tools do that). No sign-in needed. Add the user's email only if they want a reply.

send_feedback input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "category",
    "message"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 120,
      "description": "who is sending the feedback, if they say"
    },
    "email": {
      "type": "string",
      "maxLength": 254,
      "description": "where the team can reply; present only when the user agreed to share it and wants a reply"
    },
    "message": {
      "type": "string",
      "maxLength": 5000,
      "minLength": 1,
      "description": "the feedback in the user's own words, with enough detail to act on: what they tried, what happened, and what they expected"
    },
    "category": {
      "enum": [
        "IDEA",
        "PROBLEM",
        "QUESTION",
        "PRAISE"
      ],
      "type": "string",
      "description": "IDEA = feature request or suggestion, PROBLEM = bug or something confusing, QUESTION = ask Soundcheck support, PRAISE = something that works well"
    }
  },
  "additionalProperties": false
}
send_feedback output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "ok"
  ],
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "true on success (including confirmation_required prompts)"
    },
    "data": {
      "description": "tool payload (API/composite/confirmation object); object, array, or primitive JSON"
    },
    "error": {
      "type": "string",
      "description": "when ok is false"
    }
  },
  "additionalProperties": false
}
send_feedback annotations
{
  "title": "Send feedback to Soundcheck",
  "readOnlyHint": false,
  "openWorldHint": false,
  "idempotentHint": false,
  "destructiveHint": false
}

Prompts

3 advertised

how_to_staff_a_live_event — How to staff a live event

Advertised by the server during the last successful anonymous check.

An opinionated, Soundcheck-backed walkthrough of staffing a live event end to end — what roles you need, and how to request a quote from a Soundcheck org.

event_type
No description
location
No description
plan_event_crew — Plan an event's crew

Advertised by the server during the last successful anonymous check.

Recommend a crew composition (roles + rough headcount) for a live event and the next step to staff it via Soundcheck.

event_type
No description
headcount
No description
quote_an_event — Estimate an event (illustrative)

Advertised by the server during the last successful anonymous check.

Get an illustrative cost estimate for a live event from a plain-language description using the synthetic public pricing catalog, then tighten the estimate and hand off to a real booking request.

description
No description
location
No description
date
No description

Resources

1 advertised

uef schema

Advertised by the server during the last successful anonymous check.

Universal Event Format (UEF) 2.0 JSON Schema package — schema_version 2.0, examples, docs URL.

uef schema URI
soundcheck://uef/schema

MIME type: application/json

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (2 of 2 answered).

  1. 2026-11-07: 1 of 1 checks answered
  2. 2026-11-09: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
613 ms
95th percentile latency
613 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 613 ms · metadata changed · 18 tool(s), 1 resource(s), 0 resource template(s), 3 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http soundcheck-live-mcp https://mcp.soundchecklive.io/public/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add soundcheck-live-mcp --url https://mcp.soundchecklive.io/public/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable soundcheck-live-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "soundcheck-live-mcp": {
      "url": "https://mcp.soundchecklive.io/public/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "soundcheck-live-mcp": {
      "type": "streamableHttp",
      "url": "https://mcp.soundchecklive.io/public/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start soundcheck-live-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "soundcheck-live-mcp": {
      "type": "http",
      "url": "https://mcp.soundchecklive.io/public/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http soundcheck-live-mcp https://mcp.soundchecklive.io/public/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://mcp.soundchecklive.io/public/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "soundcheck-live-mcp": {
      "serverUrl": "https://mcp.soundchecklive.io/public/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Soundcheck Live MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Soundcheck Live MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing