此 MCP 可以做什么
Assesses EU, UK, US, and Australian product-market compliance, including declarations, labeling, batteries, marketplace documentation, and certification evidence.
工具
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'sells_in_california': {'type': 'boolean', 'description': 'Whether the product is sold into California. Proposition 65 warning duties apply on top of federal requirements.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}, 'battery_compartment_security': {'enum': ['tool_required', 'two_independent_actions', 'other_secured', 'unsecured', 'unknown'], 'type': 'string', 'description': 'How the battery compartment is secured. Button and coin cells carry stricter duties because ingestion is the hazard.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'food_contact_material': {'enum': ['plastic', 'metal', 'ceramic_glass', 'paper_board', 'silicone_rubber', 'multi_material', 'unknown'], 'type': 'string', 'description': 'The material that touches food. Migration limits and test methods differ by material.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'is_electrically_operated': {'type': 'boolean', 'description': 'Whether the toy is electrically operated, including mains-powered or battery-powered operation.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'sells_in_california': {'type': 'boolean', 'description': 'Whether the product is sold into California. Proposition 65 warning duties apply on top of federal requirements.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'food_contact_material': {'enum': ['plastic', 'metal', 'ceramic_glass', 'paper_board', 'silicone_rubber', 'multi_material', 'unknown'], 'type': 'string', 'description': 'The material that touches food. Migration limits and test methods differ by material.'}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}, 'battery_compartment_security': {'enum': ['tool_required', 'two_independent_actions', 'other_secured', 'unsecured', 'unknown'], 'type': 'string', 'description': 'How the battery compartment is secured. Button and coin cells carry stricter duties because ingestion is the hazard.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'sells_in_california': {'type': 'boolean', 'description': 'Whether the product is sold into California. Proposition 65 warning duties apply on top of federal requirements.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}, 'toy_chemical_assessment_complete': {'type': 'boolean', 'description': 'Whether a chemical safety assessment covering migration limits has already been completed for this toy.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['category', 'markets'], 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 2}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Product category'}, 'language': {'enum': ['zh', 'en'], 'type': 'string', 'default': 'zh', 'description': 'Response language. Defaults to Chinese.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'not_applicable', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'food_type': {'type': 'string', 'maxLength': 80, 'description': 'The food the product will contact. Simulant selection for migration testing depends on it.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'is_sunscreen': {'type': 'boolean', 'description': 'Whether the product is sold as sun protection. Sunscreens carry separate testing and labelling duties.'}, 'repeated_use': {'enum': ['single_use', 'repeated_use', 'unknown'], 'type': 'string', 'description': 'Whether the article is single-use or reused. Repeated use requires migration testing across successive cycles.'}, 'verified_only': {'type': 'boolean', 'description': 'Exclude rules not yet checked against primary sources. Default false: unverified material is included but labelled via review_status and the trust envelope.'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'contact_duration': {'type': 'string', 'maxLength': 80, 'description': 'How long the product touches food in normal use. Long-term contact triggers stricter migration testing.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'claims_therapeutic': {'type': 'boolean', 'description': 'Whether the product claims to treat, prevent or cure anything. A therapeutic claim moves a cosmetic into a different regime.'}, 'contact_temperature': {'type': 'string', 'maxLength': 80, 'description': 'The temperature at contact. Hot fill and cooking raise migration limits and change the test.'}, 'ingredients_reviewed': {'type': 'boolean', 'description': 'Whether the full ingredient list has already been checked against restricted-substance annexes.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'food_contact_material': {'type': 'string', 'maxLength': 120, 'description': 'The material that touches food. Migration limits and test methods differ by material.'}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'is_electrically_operated': {'type': 'boolean', 'description': 'Whether the toy is electrically operated, including mains-powered or battery-powered operation.'}, 'battery_compartment_security': {'enum': ['tool_required', 'two_independent_actions', 'other_secured', 'unsecured', 'unknown'], 'type': 'string', 'description': 'How the battery compartment is secured. Button and coin cells carry stricter duties because ingestion is the hazard.'}, 'toy_chemical_assessment_complete': {'type': 'boolean', 'description': 'Whether a chemical safety assessment covering migration limits has already been completed for this toy.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'detail': {'enum': ['summary', 'full'], 'type': 'string', 'default': 'summary', 'description': 'Full adds per-market coverage, input definitions and methodology.'}, 'language': {'enum': ['zh', 'en'], 'type': 'string', 'default': 'zh', 'description': 'Response language. Defaults to Chinese.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['claim_id'], 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'Opaque ComplianceCN product-case ID returned by the first successful free workflow call. Carry it unchanged through clarification retries, Stage 2 and human review for the same product/SKU. Never reuse it for another product or SKU.'}, 'claim_id': {'type': 'string', 'maxLength': 160, 'minLength': 3}, 'language': {'enum': ['zh', 'en'], 'type': 'string', 'default': 'zh', 'description': 'Response language. Defaults to Chinese.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'email': {'type': 'string', 'maxLength': 320, 'description': "For request_review_email only: the seller's real notification email, used with their permission."}, 'action': {'enum': ['continue', 'start_stage_2', 'confirm_stage_2', 'request_review_email', 'correct_stage_2', 'confirm_stage_1', 'correct_stage_1'], 'type': 'string', 'default': 'continue', 'description': 'Follow the returned next_action. Use correct_stage_2 for seller corrections; confirm_stage_1/correct_stage_1 are legacy aliases.'}, 'answers': {'type': 'object', 'description': 'Optional structured answers keyed by the stable question.key values returned by the previous call.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'anyOf': [{'type': 'string', 'maxLength': 6000}, {'type': 'boolean'}, {'type': 'number'}, {'type': 'array', 'items': {'type': 'string', 'maxLength': 240}, 'maxItems': 40}]}}, 'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'message': {'type': 'string', 'maxLength': 6000, 'minLength': 1, 'description': "The seller's initial product/market description or their latest natural-language clarification. Do not repeat information already supplied."}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'description': 'Preferred response language; inferred from the seller message when omitted.'}, 'consent_to_contact': {'type': 'boolean', 'description': "For request_review_email: true only with the seller's permission to email them about this case. Reuse existing scoped consent; never infer it."}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'food_type': {'enum': ['dry', 'aqueous', 'acidic', 'fatty', 'alcoholic', 'mixed', 'unknown'], 'type': 'string', 'description': 'The food the product will contact. Simulant selection for migration testing depends on it.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'is_sunscreen': {'type': 'boolean', 'description': 'Whether the product is sold as sun protection. Sunscreens carry separate testing and labelling duties.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'repeated_use': {'enum': ['single_use', 'repeated_use', 'unknown'], 'type': 'string', 'description': 'Whether the article is single-use or reused. Repeated use requires migration testing across successive cycles.'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'evidence_text': {'type': 'string', 'maxLength': 6000, 'description': 'Document/evidence information already known or extracted by an agent. File upload is optional and separate. Do not paste sensitive certificates or full reports into agent chat.'}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'evidence_notes': {'type': 'string', 'maxLength': 6000, 'description': 'Document and evidence information known by the seller or agent: filenames, supplier claims, models, standards, issuers, dates, or extracted key text. Explicit evidence may be mapped to evidence IDs; authenticity, completeness and SKU coverage still need original-file and human review.'}, 'contact_duration': {'enum': ['short', 'long_term', 'unknown'], 'type': 'string', 'description': 'How long the product touches food in normal use. Long-term contact triggers stricter migration testing.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'claims_therapeutic': {'type': 'boolean', 'description': 'Whether the product claims to treat, prevent or cure anything. A therapeutic claim moves a cosmetic into a different regime.'}, 'contact_temperature': {'enum': ['ambient', 'hot_fill', 'cooking_reheating', 'freezing', 'unknown'], 'type': 'string', 'description': 'The temperature at contact. Hot fill and cooking raise migration limits and change the test.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'sells_in_california': {'type': 'boolean', 'description': 'Whether the product is sold into California. Proposition 65 warning duties apply on top of federal requirements.'}, 'clarification_answer': {'type': 'string', 'maxLength': 6000, 'minLength': 1, 'description': "Continuation shortcut for the exact same case_id when answering questions_required. Send the seller's natural-language answer here; the service restores and merges the previous canonical product profile. Never use this field to introduce a different product or SKU."}, 'ingredients_reviewed': {'type': 'boolean', 'description': 'Whether the full ingredient list has already been checked against restricted-substance annexes.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'evidence_observations': {'type': 'array', 'items': {'type': 'object', 'properties': {'issues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 240}, 'default': [], 'maxItems': 16, 'description': 'Concise unresolved checks only; never include document quotations or report text.'}, 'status': {'enum': ['reported_held', 'mentioned_uncertain', 'not_held', 'needs_human_review'], 'type': 'string', 'default': 'mentioned_uncertain'}, 'confidence': {'enum': ['low', 'medium', 'high'], 'type': 'string', 'default': 'low'}, 'provenance': {'enum': ['seller_statement', 'agent_extraction', 'llm_inference', 'keyword_inference'], 'type': 'string', 'default': 'agent_extraction'}, 'evidence_id': {'anyOf': [{'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, {'type': 'null'}], 'description': 'Canonical evidence ID when the apparent document type can be mapped safely; otherwise null.'}, 'document_date': {'anyOf': [{'type': 'string', 'maxLength': 80}, {'type': 'null'}]}, 'document_type': {'anyOf': [{'type': 'string', 'maxLength': 160}, {'type': 'null'}], 'description': 'Plain-language apparent document type; this does not authenticate or approve the document.'}, 'issuer_or_lab': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}], 'description': 'Issuing organisation or laboratory name only; omit personal names and addresses.'}, 'models_covered': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120}, 'default': [], 'maxItems': 20, 'description': 'Model/SKU identifiers explicitly stated by the seller, agent or extracted document facts.'}, 'document_reference': {'anyOf': [{'type': 'string', 'maxLength': 260}, {'type': 'null'}], 'description': 'Filename or short seller/agent reference only. Do not send a local path, URL, document body or quotation.'}, 'standards_referenced': {'type': 'array', 'items': {'type': 'string', 'maxLength': 160}, 'default': [], 'maxItems': 24}, 'report_or_certificate_number': {'anyOf': [{'type': 'string', 'maxLength': 140}, {'type': 'null'}]}}}, 'default': [], 'maxItems': 40, 'description': 'Sanitised document observations that may continue between workflow stages: apparent type, filename/reference, models, organisation, date, identifiers, standards, confidence and unresolved issues. Do not include file contents, verbatim extracts, quotations, addresses or unrelated personal information.'}, 'food_contact_material': {'enum': ['plastic', 'metal', 'ceramic_glass', 'paper_board', 'silicone_rubber', 'multi_material', 'unknown'], 'type': 'string', 'description': 'The material that touches food. Migration limits and test methods differ by material.'}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'is_electrically_operated': {'type': 'boolean', 'description': 'Whether the toy is electrically operated, including mains-powered or battery-powered operation.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}, 'battery_compartment_security': {'enum': ['tool_required', 'two_independent_actions', 'other_secured', 'unsecured', 'unknown'], 'type': 'string', 'description': 'How the battery compartment is secured. Button and coin cells carry stricter duties because ingestion is the hazard.'}, 'toy_chemical_assessment_complete': {'type': 'boolean', 'description': 'Whether a chemical safety assessment covering migration limits has already been completed for this toy.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['product_profile', 'email', 'consent_to_alerts'], 'properties': {'email': {'type': 'string', 'format': 'email', 'pattern': "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$", 'description': 'Seller email for product-change alerts. Provide only after the seller explicitly asks for the alert subscription.'}, 'product_profile': {'type': 'object', 'properties': {'case_id': {'type': 'string', 'pattern': '^ccase_[a-f0-9]{24}$', 'description': 'The case this call continues, from an earlier result. Omit to start a new product case.'}, 'markets': {'type': 'array', 'items': {'enum': ['EU', 'US', 'UK', 'AU'], 'type': 'string'}, 'maxItems': 4, 'minItems': 1, 'description': 'Optional destination-market hints. Omit when product_description names the destination.'}, 'category': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string', 'description': 'Optional structured category hint. Canonical IDs and common English/Chinese labels are accepted. Omit when product_description contains enough information for extraction.'}, 'language': {'enum': ['zh', 'en', 'English', 'english', 'Chinese', 'chinese', '中文', '英文'], 'type': 'string', 'default': 'zh', 'description': 'Language for seller-facing text. Questions and messages come back in it; en or zh.'}, 'age_group': {'enum': ['under_3', '3_to_13', '14_plus', 'unknown'], 'type': 'string', 'description': 'Intended user age. Decides whether toy safety rules apply and which small-parts and warning duties follow.'}, 'food_type': {'enum': ['dry', 'aqueous', 'acidic', 'fatty', 'alcoholic', 'mixed', 'unknown'], 'type': 'string', 'description': 'The food the product will contact. Simulant selection for migration testing depends on it.'}, 'has_radio': {'type': 'boolean', 'description': 'Whether the product transmits: Bluetooth, Wi-Fi, NFC, or any other radio. Decides the RED conformity route in the EU and FCC authorisation in the US.'}, 'has_battery': {'type': 'boolean', 'description': 'Whether the product contains or ships with any battery, including a coin cell in a remote.'}, 'battery_type': {'enum': ['button_coin', 'lithium_ion', 'other', 'none', 'unknown'], 'type': 'string', 'description': 'Cell chemistry. Decides whether UN 38.3 transport testing and battery-passport duties apply. Use unknown rather than guessing.'}, 'is_sunscreen': {'type': 'boolean', 'description': 'Whether the product is sold as sun protection. Sunscreens carry separate testing and labelling duties.'}, 'product_name': {'type': 'string', 'maxLength': 160, 'description': 'Human-readable product or SKU name'}, 'repeated_use': {'enum': ['single_use', 'repeated_use', 'unknown'], 'type': 'string', 'description': 'Whether the article is single-use or reused. Repeated use requires migration testing across successive cycles.'}, 'evidence_held': {'type': 'array', 'items': {'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, 'default': [], 'maxItems': 90, 'description': "Evidence IDs the seller already holds, from a previous result's evidence_checklist. Marks each item held rather than unknown; it does not verify the document."}, 'evidence_text': {'type': 'string', 'maxLength': 6000, 'description': 'Document/evidence information already known or extracted by an agent. File upload is optional and separate. Do not paste sensitive certificates or full reports into agent chat.'}, 'sales_channel': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Where the product is sold. Marketplaces impose their own evidence requests on top of the legal requirements.'}, 'verified_only': {'type': 'boolean', 'default': True, 'description': 'Exclude decision rules not checked against primary sources'}, 'eu_destination': {'enum': ['DE', 'other_eu', 'unknown'], 'type': 'string', 'description': 'Destination member state, where it changes the answer. Language and producer-registration duties differ across the EU.'}, 'evidence_notes': {'type': 'string', 'maxLength': 6000, 'description': 'Document and evidence information known by the seller or agent: filenames, supplier claims, models, standards, issuers, dates, or extracted key text. Explicit evidence may be mapped to evidence IDs; authenticity, completeness and SKU coverage still need original-file and human review.'}, 'contact_duration': {'enum': ['short', 'long_term', 'unknown'], 'type': 'string', 'description': 'How long the product touches food in normal use. Long-term contact triggers stricter migration testing.'}, 'supply_chain_role': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': "The seller's role in the chain. Decides which duties are theirs rather than the manufacturer's or importer's."}, 'applicable_modules': {'type': 'array', 'items': {'enum': ['battery-electronics', 'toys', 'cosmetics', 'food-contact', 'toy', '玩具', 'battery', 'electronics', '电池电子产品', '带电池电子产品', 'cosmetic', '化妆品', 'food_contact', 'foodcontact', '食品接触材料', '食品接触用品', '食品接触产品'], 'type': 'string'}, 'maxItems': 4, 'description': 'Optional additional modules that should be assessed together with the primary category, for example toys plus battery-electronics.'}, 'claims_therapeutic': {'type': 'boolean', 'description': 'Whether the product claims to treat, prevent or cure anything. A therapeutic claim moves a cosmetic into a different regime.'}, 'contact_temperature': {'enum': ['ambient', 'hot_fill', 'cooking_reheating', 'freezing', 'unknown'], 'type': 'string', 'description': 'The temperature at contact. Hot fill and cooking raise migration limits and change the test.'}, 'product_description': {'type': 'string', 'maxLength': 6000, 'minLength': 10, 'description': 'Preferred first input: describe the product, destination market, sales channel and any known supplier documents in plain language. The tool extracts a preliminary profile and fills the internal checklist. Required when category/markets are not already supplied.'}, 'sells_in_california': {'type': 'boolean', 'description': 'Whether the product is sold into California. Proposition 65 warning duties apply on top of federal requirements.'}, 'clarification_answer': {'type': 'string', 'maxLength': 6000, 'minLength': 1, 'description': "Continuation shortcut for the exact same case_id when answering questions_required. Send the seller's natural-language answer here; the service restores and merges the previous canonical product profile. Never use this field to introduce a different product or SKU."}, 'ingredients_reviewed': {'type': 'boolean', 'description': 'Whether the full ingredient list has already been checked against restricted-substance annexes.'}, 'is_childrens_product': {'type': 'boolean', 'description': "Whether the product is marketed as a children's product; keep unknown when not established."}, 'evidence_observations': {'type': 'array', 'items': {'type': 'object', 'properties': {'issues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 240}, 'default': [], 'maxItems': 16, 'description': 'Concise unresolved checks only; never include document quotations or report text.'}, 'status': {'enum': ['reported_held', 'mentioned_uncertain', 'not_held', 'needs_human_review'], 'type': 'string', 'default': 'mentioned_uncertain'}, 'confidence': {'enum': ['low', 'medium', 'high'], 'type': 'string', 'default': 'low'}, 'provenance': {'enum': ['seller_statement', 'agent_extraction', 'llm_inference', 'keyword_inference'], 'type': 'string', 'default': 'agent_extraction'}, 'evidence_id': {'anyOf': [{'enum': ['ce_declaration', 'ce_label_artwork', 'rohs_evidence', 'radio_test_report', 'un38_3_test_summary', 'battery_label_artwork', 'eu_economic_operator', 'weee_registration', 'battery_epr_registration', 'fcc_authorization', 'fcc_sdoc', 'fcc_label_artwork', 'us_responsible_party', 'lithium_shipping_marks', 'prop65_assessment', 'marketplace_safety_report', 'ukca_or_ce_mark', 'uk_rohs_evidence', 'uk_radio_compliance', 'uk_importer_details', 'uk_weee_registration', 'uk_battery_epr_registration', 'uk_un38_3_test_summary', 'uk_marketplace_safety_report', 'au_rcm_supplier_declaration', 'au_radio_compliance', 'au_eess_supplier_evidence', 'au_importer_supplier_details', 'au_battery_shipping_evidence', 'au_marketplace_safety_report', 'toy_safety_assessment', 'en71_mechanical_report', 'en71_chemical_report', 'electrical_toy_report', 'battery_compartment_assessment', 'choking_risk_assessment', 'age_grading_rationale', 'toy_warning_artwork', 'german_warning_copy', 'marketplace_toy_evidence_package', 'toy_third_party_test_report', 'toy_cpc_certificate', 'toy_retesting_plan', 'toy_cbp_efiling_evidence', 'toy_tracking_label_artwork', 'toy_small_parts_warning_artwork', 'uk_toy_declaration', 'uk_en71_report', 'uk_toy_marking', 'uk_toy_importer_details', 'uk_toy_radio_compliance', 'uk_toy_battery_evidence', 'uk_toy_warning_artwork', 'uk_toy_retesting_plan', 'uk_toy_marketplace_evidence_package', 'au_toy_safety_report', 'au_toy_supplier_declaration', 'au_toy_warning_artwork', 'au_toy_importer_details', 'au_toy_radio_compliance', 'au_toy_battery_evidence', 'au_toy_retesting_plan', 'au_toy_marketplace_evidence_package', 'cosmetic_formula_review', 'cosmetic_safety_report', 'cosmetic_pif', 'cosmetic_cpn_notification', 'cosmetic_label_artwork', 'cosmetic_responsible_person', 'cosmetic_claim_substantiation', 'cosmetic_facility_registration', 'cosmetic_adverse_event_process', 'cosmetic_notification', 'food_contact_material_spec', 'food_contact_use_conditions_spec', 'food_contact_migration_report', 'food_contact_plastic_oml_sml_report', 'food_contact_ceramic_glass_release_report', 'food_contact_paper_board_component_review', 'food_contact_coating_adhesive_ink_review', 'food_contact_metal_release_review', 'food_contact_hot_use_protocol', 'food_contact_repeated_use_simulation', 'food_contact_doc', 'food_contact_traceability', 'food_contact_label_artwork', 'food_contact_polymer_resin_clearance', 'food_contact_fda_status', 'food_contact_supplier_declaration', 'food_contact_california_prop65_screen'], 'type': 'string'}, {'type': 'null'}], 'description': 'Canonical evidence ID when the apparent document type can be mapped safely; otherwise null.'}, 'document_date': {'anyOf': [{'type': 'string', 'maxLength': 80}, {'type': 'null'}]}, 'document_type': {'anyOf': [{'type': 'string', 'maxLength': 160}, {'type': 'null'}], 'description': 'Plain-language apparent document type; this does not authenticate or approve the document.'}, 'issuer_or_lab': {'anyOf': [{'type': 'string', 'maxLength': 200}, {'type': 'null'}], 'description': 'Issuing organisation or laboratory name only; omit personal names and addresses.'}, 'models_covered': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120}, 'default': [], 'maxItems': 20, 'description': 'Model/SKU identifiers explicitly stated by the seller, agent or extracted document facts.'}, 'document_reference': {'anyOf': [{'type': 'string', 'maxLength': 260}, {'type': 'null'}], 'description': 'Filename or short seller/agent reference only. Do not send a local path, URL, document body or quotation.'}, 'standards_referenced': {'type': 'array', 'items': {'type': 'string', 'maxLength': 160}, 'default': [], 'maxItems': 24}, 'report_or_certificate_number': {'anyOf': [{'type': 'string', 'maxLength': 140}, {'type': 'null'}]}}}, 'default': [], 'maxItems': 40, 'description': 'Sanitised document observations that may continue between workflow stages: apparent type, filename/reference, models, organisation, date, identifiers, standards, confidence and unresolved issues. Do not include file contents, verbatim extracts, quotations, addresses or unrelated personal information.'}, 'food_contact_material': {'enum': ['plastic', 'metal', 'ceramic_glass', 'paper_board', 'silicone_rubber', 'multi_material', 'unknown'], 'type': 'string', 'description': 'The material that touches food. Migration limits and test methods differ by material.'}, 'accessible_small_parts': {'type': 'boolean', 'description': 'Whether a child could reach a part that fits in a small-parts cylinder, including parts freed by reasonably foreseeable use.'}, 'includes_mains_charger': {'type': 'boolean', 'description': 'Whether a mains plug, wall charger or power adapter ships in the box. A supplied charger is separately in scope.'}, 'is_electrically_operated': {'type': 'boolean', 'description': 'Whether the toy is electrically operated, including mains-powered or battery-powered operation.'}, 'evidence_inventory_complete': {'type': 'boolean', 'default': False, 'description': 'True only when evidence_notes/evidence_text and evidence_held together form a complete inventory. Otherwise unprovided applicable evidence remains unknown, not missing.'}, 'battery_compartment_security': {'enum': ['tool_required', 'two_independent_actions', 'other_secured', 'unsecured', 'unknown'], 'type': 'string', 'description': 'How the battery compartment is secured. Button and coin cells carry stricter duties because ingestion is the hazard.'}, 'toy_chemical_assessment_complete': {'type': 'boolean', 'description': 'Whether a chemical safety assessment covering migration limits has already been completed for this toy.'}}, 'description': 'The same normalized product profile used for the completed preflight. Do not include document contents or unrelated personal data.'}, 'preflight_result': {'type': 'object', 'description': 'The completed preflight result when available. Its requirement, rule and claim IDs improve future change matching.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'consent_to_alerts': {'type': 'boolean', 'const': True, 'description': 'Must be true. The seller explicitly agrees to save this product profile and receive matched product-change and subscription-service emails.'}}}
输出模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['ok', 'payload'], 'properties': {'ok': {'type': 'boolean'}, 'payload': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
近期工具变更
类似的 MCP 服务器
BeeL
Provides Spanish company administration and VeriFactu-compliant invoicing, including customers, products, invoice issuance, corre…
corply
Supports company formation and corporate administration including incorporation documents, signatures, cap tables, corporate acti…
FalaZuki Finance BR
Provides Brazil-focused financial calculations and rules for investments, credit, taxes, payroll, labor costs, debt, budgeting, a…
XBOSS
Accesses Korean tax, social insurance, payroll, cash receipt, e-tax invoice, and certificate filing services.
Sirenic
Provides European company registry, financial, procurement, sanctions, regulatory, insolvency, ownership, and ongoing due-diligen…
Xearno Tools
Provides financial, tax, employment-benefit, lending, pricing, and business calculators using jurisdiction-specific rules and cur…
schedule-iii
Transforms Indian company trial balances into controlled Schedule III financial statement workbooks with account mappings, disclo…
editalmd
Searches Brazilian public procurement opportunities and documents, tracks deadlines and alerts, and supports tender document acce…