TempGuru Event Staffing
このMCPでできること
Plans W-2 event staffing using role pricing, rate benchmarks, lead-time guidance, market data, and state employment compliance information, with quote-request handoffs.
ツール
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['date', 'city'], 'properties': {'city': {'type': 'string', 'description': "City name (e.g., 'Boston') or slug (e.g., 'boston-event-staffing')."}, 'date': {'type': 'string', 'format': 'date', 'description': 'Event date as YYYY-MM-DD; legacy recognizable dates are still accepted.'}, 'role': {'type': 'string', 'description': 'Optional role name or slug to include rate context.'}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Optional headcount for the event.', 'exclusiveMinimum': 0}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['city_found'], 'properties': {'city': {'type': 'string'}, 'role': {'anyOf': [{'type': 'object', 'required': ['name', 'rate_range_usd', 'all_inclusive'], 'properties': {'name': {'type': 'string'}, 'all_inclusive': {'type': 'string'}, 'rate_range_usd': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Rate context when a role was provided; null otherwise.'}, 'count': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Echo of the requested headcount.'}, 'error': {'type': 'string', 'description': 'Present when the date could not be parsed.'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'state': {'type': 'string'}, 'in_past': {'type': 'boolean', 'description': 'True when the requested date is already in the past â\x80\x94 confirm the date before planning.'}, 'message': {'type': 'string', 'description': 'Present when city_found is false.'}, 'city_tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': 'Market tier: hub = 25 major metros, mid = 128 secondary markets, small = 192 tertiary markets.'}, 'requested': {'type': 'string', 'description': 'Echo of the unmatched city input.'}, 'city_found': {'type': 'boolean', 'description': 'false = city did not match the configured catalog (see message); true = planning guidance below, not confirmed coverage.'}, 'event_date': {'type': 'string', 'description': 'Normalized ISO date (YYYY-MM-DD).'}, 'role_found': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'description': "null = no role requested; false = the requested role didn't match the catalog (see notes)."}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'catalog_match': {'type': 'boolean', 'const': True}, 'recommendation': {'enum': ['yes', 'tight', 'rush', 'very-rush'], 'type': 'string', 'description': 'Lead-time guidance, NOT a reservation. Even rush is worth submitting.'}, 'role_suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'days_until_event': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'typical_lead_time_hours': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'coverage_confirmation_required': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'city': {'type': 'string', 'description': 'Optional single-city catalog match (nickname/borough aware). Returns catalog_match plus a suggestion; never a coverage promise.'}, 'tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': 'Optional filter to one tier only.'}, 'limit': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Optional cap on the number of cities returned (full counts still in total/tier_breakdown).', 'exclusiveMinimum': 0}, 'state': {'type': 'string', 'description': "Optional 2-letter state code (e.g., 'CA') or full state name."}, 'country': {'type': 'string', 'description': "Optional country filter: 'US' or 'CA'."}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'city': {'anyOf': [{'type': 'object', 'required': ['slug', 'name', 'state', 'state_abbr', 'country', 'tier', 'url'], 'properties': {'url': {'type': 'string', 'description': 'City detail page on tempguru.co.'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': 'Market tier: hub = 25 major metros, mid = 128 secondary markets, small = 192 tertiary markets.'}, 'state': {'type': 'string'}, 'country': {'type': 'string', 'description': 'US or CA.'}, 'state_abbr': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'The matched configured entry, or null when there was no catalog match.'}, 'note': {'type': 'string', 'description': 'Present when the list was truncated by limit.'}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Total cities matching the filter (before limit).'}, 'cities': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'state', 'state_abbr', 'country', 'tier', 'url'], 'properties': {'url': {'type': 'string', 'description': 'City detail page on tempguru.co.'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': 'Market tier: hub = 25 major metros, mid = 128 secondary markets, small = 192 tertiary markets.'}, 'state': {'type': 'string'}, 'country': {'type': 'string', 'description': 'US or CA.'}, 'state_abbr': {'type': 'string'}}, 'additionalProperties': False}}, 'message': {'type': 'string'}, 'returned': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Number of cities in the cities array (after limit).'}, 'requested': {'type': 'string'}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'catalog_check': {'type': 'boolean', 'const': True, 'description': 'Present when a single-city catalog check was requested.'}, 'catalog_match': {'type': 'boolean', 'description': 'Whether the city resolved to a configured catalog entry; not an availability or coverage promise.'}, 'tier_breakdown': {'type': 'object', 'required': ['hub', 'mid', 'small'], 'properties': {'hub': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'mid': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'small': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}, 'catalog_qualification': {'type': 'string'}, 'coverage_confirmation_required': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['state'], 'properties': {'state': {'type': 'string', 'description': "Two-letter state code (e.g., 'CA') or full state name (e.g., 'California')."}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'state': {'type': 'string'}, 'w2_note': {'type': 'string'}, 'requested': {'type': 'string'}, 'state_abbr': {'type': 'string'}, 'state_found': {'type': 'boolean', 'const': False, 'description': "Present (false) only when the state didn't match."}, 'w2_required': {'type': 'boolean'}, 'data_version': {'type': 'string', 'description': 'Version of the compliance dataset used for this result.'}, 'min_wage_usd': {'type': 'number', 'description': '2026 state minimum wage.'}, 'unique_rules': {'type': 'array', 'items': {'type': 'string'}}, 'citation_note': {'type': 'string', 'description': 'Operational guidance, not legal advice.'}, 'currency_note': {'type': 'string', 'description': 'Reminder that wages change annually; verify before relying.'}, 'min_wage_as_of': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': "Effective date of this state's stored minimum wage."}, 'min_wage_source': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Authoritative source URL for the minimum wage figure.'}, 'available_states': {'type': 'array', 'items': {'type': 'object', 'required': ['abbr', 'name'], 'properties': {'abbr': {'type': 'string'}, 'name': {'type': 'string'}}, 'additionalProperties': False}}, 'data_current_as_of': {'type': 'string', 'description': 'Date the compliance dataset was last verified (YYYY-MM-DD).'}, 'seventh_day_overtime': {'type': 'boolean', 'description': 'True where a seventh-consecutive-day premium applies (CA).'}, 'workers_comp_included': {'type': 'boolean'}, 'liability_coverage_included': {'type': 'boolean'}, 'overtime_daily_double_hours': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Start of the double-time band (hours/day) where the state has one (CA: 12); null otherwise.'}, 'overtime_threshold_daily_hours': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Daily overtime threshold where the state has one (CA, AK, NV, CO); null otherwise.'}, 'overtime_threshold_weekly_hours': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['plan_id'], 'properties': {'plan_id': {'type': 'string', 'pattern': '^[A-HJ-NP-Z2-9]{12}$', 'maxLength': 12, 'description': '12-character lookalike-free plan reference returned by plan_staffing or save_staffing_plan.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['plan_found', 'plan_id', 'message', 'next_steps'], 'properties': {'message': {'type': 'string'}, 'plan_id': {'type': 'string'}, 'snapshot': {'type': 'object', 'required': ['city', 'event', 'plan_lines', 'estimated_total_range', 'overtime_adjusted_total_range', 'compliance_jurisdiction', 'created_at', 'channel', 'source'], 'properties': {'city': {'type': 'object', 'required': ['slug', 'name', 'state'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'state': {'type': 'string'}}, 'additionalProperties': False}, 'event': {'type': 'object', 'required': ['event_date', 'event_type', 'attendees'], 'properties': {'attendees': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'event_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'event_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}, 'source': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'channel': {'enum': ['mcp', 'rest'], 'type': 'string'}, 'created_at': {'type': 'string'}, 'plan_lines': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'role_slug', 'headcount', 'hours_per_shift', 'days', 'hourly_range', 'estimated_total_range'], 'properties': {'days': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'role': {'type': 'string'}, 'headcount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'role_slug': {'type': 'string'}, 'hourly_range': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'hours_per_shift': {'type': 'number'}, 'estimated_total_range': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'estimated_total_range': {'type': 'object', 'required': ['low', 'high', 'currency', 'basis'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}, 'basis': {'type': 'string'}, 'currency': {'enum': ['USD', 'CAD'], 'type': 'string'}}, 'additionalProperties': False}, 'compliance_jurisdiction': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'overtime_adjusted_total_range': {'anyOf': [{'type': 'object', 'required': ['low', 'high', 'currency', 'note'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}, 'note': {'type': 'string'}, 'currency': {'enum': ['USD', 'CAD'], 'type': 'string'}, 'includes_double_time': {'type': 'boolean'}}, 'additionalProperties': False}, {'type': 'null'}]}}, 'additionalProperties': False}, 'next_steps': {'type': 'array', 'items': {'type': 'string'}}, 'offer_note': {'type': 'string', 'description': 'Published first-order offer note. Snapshot totals remain undiscounted.'}, 'plan_found': {'type': 'boolean', 'description': 'Discriminator. false means the reference was absent or expired.'}, 'continuation': {'type': 'object', 'required': ['form_url', 'note'], 'properties': {'note': {'type': 'string'}, 'form_url': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'topic': {'enum': ['minimum-booking-hours', 'cancellation-rescheduling', 'no-show-backfill', 'coi-additional-insured', 'payment-terms', 'background-checks', 'order-confirmation', 'quote-response', 'offers'], 'type': 'string', 'maxLength': 80, 'description': 'Optional canonical policy topic. Choose an advertised enum value; omit for all policies or a broader question.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'policy_found'], 'properties': {'scope': {'type': 'string'}, 'status': {'enum': ['policies', 'policy_not_found'], 'type': 'string'}, 'message': {'type': 'string'}, 'updated': {'type': 'string'}, 'policies': {'type': 'array', 'items': {'type': 'object', 'required': ['topic', 'title', 'confirmed_claims', 'confirm_with_coordinator', 'todo_for_megan', 'sources'], 'properties': {'code': {'type': 'string'}, 'scope': {'type': 'string'}, 'title': {'type': 'string'}, 'topic': {'type': 'string'}, 'cap_usd': {'type': 'number'}, 'expires': {'type': 'string', 'format': 'date', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$', 'description': 'Offer expiry date in YYYY-MM-DD format.'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'todo_for_megan': {'type': 'array', 'items': {'type': 'string'}}, 'confirmed_claims': {'type': 'array', 'items': {'type': 'string'}}, 'discount_percent': {'type': 'number'}, 'confirm_with_coordinator': {'type': 'boolean'}}, 'additionalProperties': False}}, 'requested': {'type': 'string'}, 'disclaimer': {'type': 'string'}, 'data_version': {'type': 'string'}, 'policy_found': {'type': 'boolean', 'description': 'Discriminator. false means the requested topic is not published.'}, 'todo_for_megan': {'type': 'array', 'items': {'type': 'string'}}, 'available_topics': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['reference'], 'properties': {'reference': {'type': 'string', 'pattern': '^TG-[A-HJ-NP-Z2-9]{6}$', 'maxLength': 9, 'description': 'TG reference returned after the buyer submits the TempGuru website form, e.g. TG-ABC234.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['quote_found', 'reference', 'message', 'follow_up'], 'properties': {'status': {'enum': ['received', 'queued'], 'type': 'string'}, 'channel': {'enum': ['mcp', 'rest'], 'type': 'string'}, 'message': {'type': 'string'}, 'deal_name': {'type': 'string'}, 'follow_up': {'type': 'string'}, 'reference': {'type': 'string'}, 'created_at': {'type': 'string'}, 'quote_found': {'type': 'boolean', 'description': 'Discriminator. false means the status stub is absent or expired.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'role': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Optional non-empty role name or slug to filter to one role.'}, 'tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': "Optional market tier; adds each role's measured span within that tier (tier_usd)."}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'basis': {'type': 'string'}, 'index': {'type': 'string'}, 'rates': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'role_key'], 'properties': {'role': {'type': 'string'}, 'tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string'}, 'role_key': {'type': 'string'}, 'tier_usd': {'type': 'string'}, 'by_tier_usd': {'type': 'object', 'required': ['small', 'mid', 'hub'], 'properties': {'hub': {'type': 'string'}, 'mid': {'type': 'string'}, 'small': {'type': 'string'}}, 'additionalProperties': False}, 'typical_usd': {'type': 'string'}, 'national_range_usd': {'type': 'string'}}, 'additionalProperties': False}}, 'floors': {'type': 'string'}, 'edition': {'type': 'string'}, 'updated': {'type': 'string'}, 'citation': {'type': 'string'}, 'requested': {'type': 'string'}, 'role_found': {'type': 'boolean', 'const': False}, 'methodology': {'type': 'string'}, 'data_version': {'type': 'string'}, 'reading_note': {'type': 'string'}, 'requested_tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string'}, 'available_roles': {'type': 'array', 'items': {'type': 'string'}}, 'methodology_url': {'type': 'string'}, 'markets_measured': {'type': 'object', 'required': ['small', 'mid', 'hub'], 'properties': {'hub': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'mid': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'small': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['role', 'city'], 'properties': {'city': {'type': 'string', 'description': "City name (e.g., 'Boston') or slug (e.g., 'boston-event-staffing')."}, 'role': {'type': 'string', 'description': "Role name (e.g., 'Brand Ambassadors') or slug (e.g., 'brand-ambassadors')."}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'city': {'type': 'string'}, 'note': {'type': 'string'}, 'role': {'type': 'string'}, 'error': {'type': 'string'}, 'state': {'type': 'string'}, 'currency': {'enum': ['USD', 'CAD'], 'type': 'string'}, 'city_tier': {'enum': ['hub', 'mid', 'small'], 'type': 'string', 'description': 'Market tier: hub = 25 major metros, mid = 128 secondary markets, small = 192 tertiary markets.'}, 'requested': {'type': 'string', 'description': 'Echo of the unmatched input.'}, 'role_note': {'type': 'string', 'description': "Caveat about the resolved role (e.g. 'security' maps to unarmed Crowd Control, not licensed security)."}, 'role_slug': {'type': 'string'}, 'city_found': {'type': 'boolean', 'const': False, 'description': "Present (false) only when the city didn't match."}, 'role_found': {'type': 'boolean', 'const': False, 'description': "Present (false) only when the role didn't match."}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'all_inclusive': {'type': 'string'}, 'pricing_notes': {'type': 'string'}, 'available_roles': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'additionalProperties': False}, 'description': "The valid role catalog, returned when the role didn't match."}, 'tier_definition': {'type': 'string'}, 'fallback_pricing': {'type': 'object', 'required': ['small', 'mid', 'hub'], 'properties': {'hub': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'mid': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'small': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}}, 'description': "All-tier pricing shown when the city didn't match.", 'additionalProperties': False}, 'hourly_range_low': {'type': 'number'}, 'hourly_range_high': {'type': 'number'}, 'all_tiers_for_context': {'type': 'object', 'required': ['small', 'mid', 'hub'], 'properties': {'hub': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'mid': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'small': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}}, 'description': 'Rate bands across all three market tiers for context.', 'additionalProperties': False}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['total', 'roles'], 'properties': {'roles': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'description', 'skill_tier', 'typical_shift_length_hours', 'url'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string', 'description': 'Use this slug in pricing/availability lookups.'}, 'skill_tier': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': '1 (entry) to 5 (lead).'}, 'description': {'type': 'string'}, 'typical_shift_length_hours': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['city'], 'properties': {'city': {'type': 'string', 'maxLength': 120, 'description': "Event city, name or slug (e.g., 'Chicago')."}, 'roles': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'headcount'], 'properties': {'days': {'type': 'integer', 'maximum': 365, 'description': 'Number of event days (default 1).', 'exclusiveMinimum': 0}, 'role': {'type': 'string', 'maxLength': 80, 'description': 'Role name or slug.'}, 'headcount': {'type': 'integer', 'maximum': 10000, 'description': 'Staff needed for this role.', 'exclusiveMinimum': 0}, 'hours_per_shift': {'type': 'number', 'maximum': 24, 'description': 'Hours per shift (default 8, max 24).', 'exclusiveMinimum': 0}}}, 'maxItems': 50, 'description': 'Roles and headcount. Omit to receive the role catalog and a suggested mix.'}, 'attendees': {'type': 'integer', 'maximum': 5000000, 'description': 'Expected attendee count.', 'exclusiveMinimum': 0}, 'event_date': {'type': 'string', 'format': 'date', 'maxLength': 40, 'description': 'Event date as YYYY-MM-DD; legacy recognizable dates are still accepted.'}, 'event_type': {'enum': ['trade-show', 'conference', 'festival', 'concert', 'sporting-event', 'corporate', 'brand-activation', 'other'], 'type': 'string', 'maxLength': 80, 'description': 'trade-show, conference, festival, concert, sporting-event, corporate, brand-activation, or other.'}, 'description': {'type': 'string', 'maxLength': 2000, 'description': 'Optional free-text event description, echoed into the plan.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status'], 'properties': {'tip': {'type': 'string'}, 'event': {'type': 'object', 'required': ['city', 'state', 'market_tier', 'catalog_match', 'coverage_confirmation_required'], 'properties': {'city': {'type': 'string'}, 'state': {'type': 'string'}, 'attendees': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'event_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'event_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'market_tier': {'type': 'string'}, 'catalog_match': {'type': 'boolean', 'const': True}, 'coverage_confirmation_required': {'type': 'boolean', 'const': True}}, 'additionalProperties': False}, 'status': {'enum': ['plan', 'needs_roles', 'roles_not_found', 'city_not_found'], 'type': 'string', 'description': 'Discriminator. Branch on this before reading the rest.'}, 'message': {'type': 'string'}, 'plan_id': {'type': 'string', 'pattern': '^[A-HJ-NP-Z2-9]{12}$', 'description': 'Complete plans only. Non-PII plan reference retained for 30 days when Redis persistence succeeds.'}, 'lead_time': {'anyOf': [{'type': 'object', 'required': ['event_date', 'days_until_event', 'recommendation', 'note'], 'properties': {'note': {'type': 'string'}, 'event_date': {'type': 'string'}, 'recommendation': {'enum': ['yes', 'tight', 'rush', 'very-rush'], 'type': 'string'}, 'days_until_event': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}, {'type': 'null'}]}, 'compliance': {'anyOf': [{'type': 'object', 'required': ['jurisdiction', 'min_wage_usd', 'overtime_weekly_hours', 'overtime_daily_hours', 'unique_rules', 'data_version', 'data_current_as_of', 'min_wage_as_of', 'min_wage_source', 'currency_note', 'citation_note', 'note'], 'properties': {'note': {'type': 'string'}, 'data_version': {'type': 'string', 'description': 'Version identifier for the jurisdiction dataset used by the plan.'}, 'jurisdiction': {'type': 'string', 'description': 'US state or Canadian province the rules below belong to.'}, 'min_wage_usd': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'US states only; null for Canadian provinces (coordinator confirms provincial wage floors).'}, 'unique_rules': {'type': 'array', 'items': {'type': 'string'}}, 'citation_note': {'type': 'string'}, 'currency_note': {'type': 'string'}, 'min_wage_as_of': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Effective date of the stored wage floor; null when no wage is stored.'}, 'min_wage_source': {'anyOf': [{'type': 'string', 'format': 'uri'}, {'type': 'null'}], 'description': 'Authoritative wage source; null for Canadian plans where the coordinator confirms the floor.'}, 'data_current_as_of': {'type': 'string', 'description': 'Date the jurisdiction dataset was last verified (YYYY-MM-DD).'}, 'overtime_daily_hours': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'overtime_weekly_hours': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}]}, 'next_steps': {'type': 'array', 'items': {'type': 'string'}}, 'offer_note': {'type': 'string', 'description': 'Published first-order offer note. Totals remain undiscounted planning estimates.'}, 'plan_lines': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'role_slug', 'headcount', 'hours_per_shift', 'days', 'hourly_range', 'estimated_total_range'], 'properties': {'days': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'role': {'type': 'string'}, 'headcount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'role_slug': {'type': 'string'}, 'hourly_range': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number', 'description': 'Lower end of the hourly rate range.'}, 'high': {'type': 'number', 'description': 'Upper end of the hourly rate range.'}}, 'description': 'All-inclusive hourly rate band (worker pay + payroll taxes + workers comp + liability).', 'additionalProperties': False}, 'hours_per_shift': {'type': 'number'}, 'estimated_total_range': {'type': 'object', 'required': ['low', 'high'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'continuation': {'type': 'object', 'required': ['form_url', 'note'], 'properties': {'note': {'type': 'string'}, 'form_url': {'type': 'string', 'format': 'uri'}}, 'description': 'Complete plans only. Prefilled website handoff; may be present without plan_id when storage fails open.', 'additionalProperties': False}, 'plan_complete': {'type': 'boolean', 'description': 'status:plan only. false = one or more requested roles could not be priced and are EXCLUDED from all totals (see unpriced_roles) â\x80\x94 resolve them and re-plan before presenting a budget or quoting.'}, 'requested_city': {'type': 'string'}, 'staffing_notes': {'type': 'array', 'items': {'type': 'string'}}, 'unpriced_roles': {'type': 'array', 'items': {'type': 'object', 'required': ['role'], 'properties': {'days': {'type': 'number'}, 'role': {'type': 'string'}, 'headcount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'hours_per_shift': {'type': 'number'}}, 'additionalProperties': False}, 'description': 'status:plan with plan_complete:false â\x80\x94 the requested lines missing from every total.'}, 'available_roles': {'anyOf': [{'type': 'object', 'required': ['total', 'roles'], 'properties': {'roles': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'skill_tier': {'type': 'number'}, 'description': {'type': 'string'}, 'typical_shift_length_hours': {'type': 'number'}}, 'additionalProperties': False}}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}, {'type': 'null'}]}, 'requested_roles': {'type': 'array', 'items': {'type': 'string'}}, 'unresolved_roles': {'type': 'array', 'items': {'type': 'object', 'required': ['role'], 'properties': {'days': {'type': 'number'}, 'role': {'type': 'string'}, 'headcount': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'suggestion': {'type': 'object', 'required': ['kind', 'slug', 'name'], 'properties': {'kind': {'enum': ['city', 'role'], 'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}}, 'description': 'Closest known city/role for a miss. Confirm with the user before using it; do not auto-apply.', 'additionalProperties': False}, 'hours_per_shift': {'type': 'number'}}, 'additionalProperties': False}}, 'estimated_total_range': {'type': 'object', 'required': ['low', 'high', 'currency', 'basis'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}, 'basis': {'type': 'string'}, 'currency': {'enum': ['USD', 'CAD'], 'type': 'string'}}, 'additionalProperties': False}, 'overtime_adjusted_total_range': {'anyOf': [{'type': 'object', 'required': ['low', 'high', 'currency', 'note'], 'properties': {'low': {'type': 'number'}, 'high': {'type': 'number'}, 'note': {'type': 'string'}, 'currency': {'enum': ['USD', 'CAD'], 'type': 'string'}, 'includes_double_time': {'type': 'boolean', 'description': 'True when a 2x band (CA/BC >12h/day, CA 7th consecutive day) is included.'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Present (non-null) only when daily/weekly OT (or a double-time band) applies to the schedule.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['plan_id'], 'properties': {'plan_id': {'type': 'string', 'pattern': '^[A-HJ-NP-Z2-9]{12}$', 'maxLength': 12, 'description': 'Saved non-PII plan reference returned by plan_staffing or save_staffing_plan.'}, 'skill_id': {'enum': ['event-staffing-ordering', 'event-staffing-compliance', 'staffing-plan-from-event-brief', 'urgent-event-backfill', 'staffing-agency-partner-growth', 'multi-city-activation-planner', 'event-staffing-procurement', 'tempguru-pro-operations'], 'type': 'string', 'description': 'Optional canonical TempGuru skill that assembled the plan.'}, 'skill_version': {'type': 'string', 'pattern': '^[0-9]{1,4}\\.[0-9]{1,4}\\.[0-9]{1,4}(?:-[0-9A-Za-z.-]{1,24})?(?:\\+[0-9A-Za-z.-]{1,24})?$', 'maxLength': 40, 'minLength': 1, 'description': 'Optional version of the TempGuru staffing skill used.'}, 'source_platform': {'enum': ['ai-agent', 'ai-page', 'ai-page-zh', 'baidu-agent', 'chatgpt-app', 'chatgpt-gpt', 'claude-ai', 'claude-code', 'claude-desktop', 'cn-agent', 'copilot-agent', 'coze', 'coze-bot', 'custom-gpt', 'gemini', 'gemini-cli', 'gemini-gem', 'hermes', 'kimi', 'langchain', 'lechat-agent', 'llamaindex', 'manual-test', 'meta-ai', 'mcp-handoff', 'open-webui', 'openai-codex', 'openclaw', 'perplexity-space', 'pi', 'poe-bot', 'postman', 'prime-agent', 'python-client', 'skill', 'team-demo', 'website', 'website-widget', 'zhipu-agent', 'openai-chatgpt', 'openai-agents-sdk', 'openai-mcp', 'cursor', 'cline', 'windsurf', 'perplexity', 'qwen-ecosystem', 'deepseek', 'doubao', 'mcp-client'], 'type': 'string', 'description': 'Optional agent/platform attribution, e.g. claude-ai, openclaw, or hermes.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['handoff_ready', 'buyer_submission_required', 'plan_found', 'plan_id', 'message', 'next_steps'], 'properties': {'message': {'type': 'string', 'description': 'Human-readable outcome to relay to the buyer.'}, 'plan_id': {'type': 'string', 'pattern': '^[A-HJ-NP-Z2-9]{12}$'}, 'form_url': {'type': 'string', 'format': 'uri', 'description': 'Prefilled TempGuru-owned review form. Present only when handoff_ready is true.'}, 'next_steps': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Safe next actions; no agent-side contact collection.'}, 'plan_found': {'type': 'boolean', 'description': 'Whether the supplied non-PII plan_id resolved before expiry.'}, 'handoff_ready': {'type': 'boolean', 'description': 'true when the saved plan resolved and a prefilled buyer form URL was created.'}, 'buyer_submission_required': {'type': 'boolean', 'const': True, 'description': 'Always true. The buyer, not the agent, must enter contact details and submit the form.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['city', 'roles'], 'properties': {'city': {'type': 'string', 'maxLength': 120, 'minLength': 1, 'description': 'Event city, name or slug (e.g. Chicago).'}, 'roles': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'headcount'], 'properties': {'days': {'type': 'integer', 'maximum': 365, 'description': 'Number of event days (default 1).', 'exclusiveMinimum': 0}, 'role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Role name or slug.'}, 'headcount': {'type': 'integer', 'maximum': 10000, 'description': 'Staff needed for this role.', 'exclusiveMinimum': 0}, 'hours_per_shift': {'type': 'number', 'maximum': 24, 'description': 'Hours per shift (default 8, max 24).', 'exclusiveMinimum': 0}}, 'additionalProperties': False}, 'maxItems': 50, 'minItems': 1, 'description': 'Confirmed roles, headcount, hours, and days to recompute and save.'}, 'attendees': {'type': 'integer', 'maximum': 5000000, 'description': 'Expected attendee count.', 'exclusiveMinimum': 0}, 'event_date': {'type': 'string', 'format': 'date', 'maxLength': 40, 'minLength': 1, 'description': 'Event date as YYYY-MM-DD; legacy recognizable dates are still accepted.'}, 'event_type': {'enum': ['trade-show', 'conference', 'festival', 'concert', 'sporting-event', 'corporate', 'brand-activation', 'other'], 'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'trade-show, conference, festival, concert, sporting-event, corporate, brand-activation, or other.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['status', 'message', 'next_actions'], 'properties': {'status': {'enum': ['saved', 'plan_incomplete', 'rate_limited', 'storage_unavailable'], 'type': 'string', 'description': 'Discriminator. Only status:saved means a resumable plan_id exists.'}, 'message': {'type': 'string'}, 'plan_id': {'type': 'string', 'pattern': '^[A-HJ-NP-Z2-9]{12}$', 'description': '12-character reference for the saved non-PII snapshot.'}, 'created_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'expires_at': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$', 'description': 'Conservative 30-day expiry for the saved snapshot.'}, 'plan_status': {'enum': ['plan', 'needs_roles', 'roles_not_found', 'city_not_found'], 'type': 'string', 'description': 'Planner branch that prevented persistence.'}, 'continuation': {'type': 'object', 'required': ['form_url', 'note'], 'properties': {'note': {'type': 'string'}, 'form_url': {'type': 'string', 'format': 'uri'}}, 'additionalProperties': False}, 'next_actions': {'type': 'array', 'items': {'enum': ['share', 'revise', 'request_quote', 'plan_again', 'retry_save', 'continue_on_website'], 'type': 'string'}}, 'resource_uri': {'type': 'string', 'format': 'uri', 'description': 'Public no-store REST URI that restores the saved artifact.'}, 'schema_version': {'type': 'string', 'const': '1.0'}, 'quote_readiness': {'type': 'string', 'const': 'buyer_submission_required', 'description': 'The buyer must open the handoff form and personally submit their contact details.'}, 'retry_after_seconds': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
最近のツール変更
類似のMCPサーバー
Firmaradar
Provides Norwegian company intelligence covering ownership, roles, financials, announcements, IP, monitoring, AML/PEP screening, …
UK Due Diligence
Searches UK company, charity, insolvency, land transaction, sanctions, and director-disqualification records for due diligence.
ENTIA Entity Verification
Verifies businesses and professionals using entity, VAT, registry, competitor, risk-audit, and socioeconomic data for KYB and due…
empresas
Searches Argentine companies, executives, importers, tenders, and regulatory records, with detailed company and person profiles b…
cuisor.ro
Searches and analyzes Romanian companies using registry identity, financial filings, tax status, procurement awards, legal repres…
nordic-data
Provides European company, KYB, VAT, LEI, sanctions, PEP, adverse-media, address, and industry-statistics data across 15 countrie…
Radicado Uno
Provides Colombian company due-diligence, registry, sanctions, procurement, competitor, financial-signal, and source-linked repor…
SupplyGraph.AI
Analyzes supplier and enterprise supply-chain risks, due diligence, geographic concentration, visual dependencies, tariffs, custo…