此 MCP 可以做什么
Provides business identity and payment-data validation, tax and FX information, sanctions-related lookups, and PBX call indexing and transfer records.
工具
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['email'], 'properties': {'email': {'type': 'string', 'maxLength': 254, 'minLength': 3, 'description': 'E-mail address to check.'}, 'rejectRoleAccounts': {'type': 'boolean', 'default': False}, 'rejectFreeProviders': {'type': 'boolean', 'default': False}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['iban'], 'properties': {'iban': {'type': 'string', 'maxLength': 42, 'minLength': 5, 'description': 'IBAN, with or without spaces.'}, 'expectCountry': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'Expected country code (ISO 3166-1 alpha-2).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'uri': {'type': 'string', 'format': 'uri', 'description': 'Customer-side media URI (preferred).'}, 't_ms': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'pbx_id': {'type': 'string', 'maxLength': 64}, 'call_id': {'type': 'string', 'maxLength': 64, 'minLength': 2}, 'bytes_b64': {'type': 'string', 'maxLength': 200000, 'description': 'Optional small demo chunk; production prefers URI.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'Max recent calls to return (1–100).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Call id (e.g. call_msp_002).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Call id whose transfer graph to return.'}, 'stuck_at': {'type': 'string', 'maxLength': 16, 'description': 'Optional override for where the promise stuck (extension).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'domain': {'enum': ['otel', 'santral_firmasi', 'msp', 'sigorta', 'finans', 'enerji', 'otomotiv', 'all'], 'type': 'string', 'default': 'all', 'description': 'Domain slice: otel | santral_firmasi | sigorta | finans | enerji | otomotiv (legacy msp) | all'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['term', 'alias'], 'properties': {'kind': {'enum': ['imei', 'tarife', 'oda', 'oda_tipi', 'klima', 'check_out', 'iade', 'sku', 'police', 'hasar', 'yenileme', 'abone', 'kesinti', 'fatura', 'kart', 'iban', 'sube', 'other'], 'type': 'string', 'description': 'Fact kind; inferred from seed term when omitted.'}, 'term': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Canonical term (e.g. AC, tariff). Plain Turkish preferred.'}, 'alias': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Synonym / alias to add (e.g. cooling, line package).'}, 'boost': {'type': 'number', 'maximum': 5, 'minimum': 1, 'description': 'Search boost weight (default 2).'}, 'scope': {'enum': ['pbx', 'global'], 'type': 'string', 'description': 'pbx = scoped to x-temsor-pbx-key; global = demo-wide. Default: pbx if registered key, else global.'}, 'domain': {'enum': ['otel', 'santral_firmasi', 'msp', 'sigorta', 'finans', 'enerji', 'otomotiv'], 'type': 'string', 'default': 'otel', 'description': 'Domain: otel | santral_firmasi | sigorta | finans | enerji | otomotiv (legacy msp accepted).'}, 'hint_en': {'type': 'string', 'maxLength': 160}, 'hint_tr': {'type': 'string', 'maxLength': 160}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['events'], 'properties': {'events': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'maxItems': 200, 'minItems': 1, 'description': 'ARI / Stasis event batch. Utterance/text fields trigger heuristic promise extract.'}, 'pbx_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'PBX id that emitted the ARI batch.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'q': {'type': 'string', 'maxLength': 200, 'description': 'Free-text filter over kind + value + call_id.'}, 'kind': {'type': 'string', 'maxLength': 32, 'description': 'Fact kind key (imei, oda, tarife, ...) or all.'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 200, 'minimum': 1, 'description': 'Max facts to return (1–200).'}, 'domain': {'enum': ['otel', 'santral_firmasi', 'msp', 'sigorta', 'finans', 'enerji', 'otomotiv', 'all'], 'type': 'string', 'description': 'Domain slice: otel | santral_firmasi | sigorta | finans | enerji (legacy msp) | all.'}, 'call_id': {'type': 'string', 'maxLength': 80, 'description': 'Filter by call id (e.g. call_msp_001).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Fact id (e.g. fact_001).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'live': {'type': 'boolean', 'description': 'Default true while call is live.'}, 't_ms': {'anyOf': [{'type': 'integer', 'maximum': 86400000, 'minimum': 0}, {'type': 'null'}]}, 'text': {'type': 'string', 'maxLength': 2000, 'description': 'Partial utterance / snippet (customer STT or demo). Empty = metadata-only.'}, 'pbx_id': {'type': 'string', 'maxLength': 64}, 'call_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Live call id to upsert partial index for.'}, 'promote': {'type': 'boolean', 'description': 'Promote heuristic hints into durable Promise/Fact docs.'}, 'speaker': {'anyOf': [{'type': 'string', 'maxLength': 64}, {'type': 'null'}]}, 'end_call': {'type': 'boolean', 'description': 'Mark live=false; idle $0 for this call.'}, 'is_final': {'type': 'boolean', 'description': 'Finalized utterance span (vs interim).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Call id whose live partial index to read.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['transcript'], 'properties': {'ext': {'type': 'string', 'maxLength': 16}, 'who': {'type': 'string', 'maxLength': 120}, 'pbx_id': {'type': 'string', 'maxLength': 64}, 'call_id': {'type': 'string', 'maxLength': 64}, 'transcript': {'type': 'string', 'maxLength': 50000, 'minLength': 1, 'description': 'TR utterance / transcript text to scan for promises.'}, 'persist_promises': {'type': 'boolean', 'default': True, 'description': 'When false, extract only (dry-run, no write). When true, create Promise docs status=open.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'q': {'type': 'string', 'maxLength': 200, 'description': 'Free-text over names, phones, org, extensions, facts.'}, 'kind': {'enum': ['caller', 'extension', 'all'], 'type': 'string', 'description': 'caller = durable Person; extension = derived from call-graph hops; all = both.'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 200, 'minimum': 1, 'description': 'Max persons to return (1–200).'}, 'call_id': {'type': 'string', 'maxLength': 80, 'description': 'Filter persons seen on this call id.'}, 'include_extensions': {'type': 'boolean', 'description': 'Include derived extension identities (default true).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'Person id (e.g. per_001) or extension id (e.g. ext_101).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'status': {'enum': ['open', 'kept', 'broken', 'unknown', 'all', 'closed'], 'type': 'string', 'default': 'open', 'description': 'Promise status filter; closed = kept|broken. Sales demo uses open.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['promise_id'], 'properties': {'action': {'enum': ['whisper', 'hold', 'transfer', 'pci_stop', 'snoop'], 'type': 'string', 'description': 'Default whisper. transfer uses graph stuck_at / promise.ext.'}, 'pbx_id': {'type': 'string', 'maxLength': 64}, 'agent_ext': {'type': 'string', 'maxLength': 64}, 'promise_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Open (or any) promise id — closed loop reads call graph then records orchestra intent.'}, 'skip_forward': {'type': 'boolean', 'description': 'Default true — record intent only.'}, 'stasis_webhook_url': {'type': 'string', 'maxLength': 500}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['promise_id', 'status'], 'properties': {'note': {'type': 'string', 'maxLength': 200, 'description': 'Optional short operator note. Phones/emails stripped (KVKK-safe).'}, 'status': {'enum': ['kept', 'broken'], 'type': 'string', 'description': 'Close outcome: kept (honoured) or broken (not kept).'}, 'promise_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Promise id (prm_*). Sales demo marks open promises kept|broken.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'format': {'enum': ['csv', 'json'], 'type': 'string', 'default': 'csv', 'description': 'Export format.'}, 'status': {'enum': ['open', 'kept', 'broken', 'unknown', 'all', 'closed'], 'type': 'string', 'default': 'open', 'description': 'Promise status filter; closed = kept|broken. Sales demo uses open.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['promise_id'], 'properties': {'promise_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Promise id (prm_*). Undo a kept|broken close — restore open.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'who': {'type': 'string', 'maxLength': 80, 'description': 'Actor label for durable audit (defaults to pbx scope / demo-operator).'}, 'mode': {'enum': ['anonymize', 'delete'], 'type': 'string', 'description': 'anonymize (default) scrubs fields; delete removes docs.'}, 'phone': {'type': 'string', 'maxLength': 32, 'minLength': 7, 'description': 'Caller phone — finds Person phones (+ linked derived index).'}, 'reason': {'type': 'string', 'maxLength': 200, 'description': 'KVKK (personal-data) / forget reason.'}, 'target_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Document id (prm_*, per_*, call_*, fact_*).'}, 'target_type': {'enum': ['promise', 'call', 'person', 'fact', 'utterance'], 'type': 'string', 'description': 'Index document type. Optional when `phone` is set.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max recent forget actions to return (default 20).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'name': {'type': 'string', 'maxLength': 120, 'description': 'Pilot contact name (waitlist / register).'}, '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,}$", 'maxLength': 254, 'description': 'Pilot contact email.'}, 'label': {'type': 'string', 'maxLength': 120, 'description': 'Human label, e.g. hotel or PBX/IT provider site.'}, 'pbx_id': {'type': 'string', 'maxLength': 64, 'minLength': 2, 'description': 'Pilot PBX id; auto-minted if omitted.'}, 'webhook_url': {'type': 'string', 'format': 'uri', 'maxLength': 500, 'description': 'Optional outbound webhook URL — Temsor POSTs promise/fact/orchestra/redact events.'}, 'webhook_events': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'string'}], 'description': 'Event list or comma string: promise.opened|closed, fact.extracted, orchestra.act, redact, or *.'}, 'webhook_secret': {'type': 'string', 'maxLength': 200, 'description': 'Optional HMAC secret for outbound webhook signatures (x-temsor-signature).'}, 'ari_webhook_secret': {'type': 'string', 'maxLength': 200, 'description': 'ARI webhook signing secret (stored as hint only).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'q': {'type': 'string', 'default': '', 'maxLength': 200, 'description': 'Full-text query over promises, facts, and call summaries.'}, 'ext': {'type': 'string', 'maxLength': 16}, 'status': {'enum': ['open', 'kept', 'broken', 'unknown'], 'type': 'string'}, 'date_to': {'type': 'string', 'maxLength': 40, 'description': 'ISO date/time upper bound.'}, 'date_from': {'type': 'string', 'maxLength': 40, 'description': 'ISO date/time lower bound (promise.when_iso / call.started_at).'}, 'competitor': {'type': 'string', 'maxLength': 64}, 'stuck_after': {'type': 'string', 'maxLength': 16, 'description': 'Filter: promise stuck after transfer to this extension (to_ext hop).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}, 'description': 'No input — scoped by x-temsor-pbx-key when set.'}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'url': {'type': 'string', 'maxLength': 500, 'description': 'Outbound webhook URL (http/https). Present → register; omit on GET → list.'}, 'ping': {'type': 'boolean', 'description': 'If true with url → register then ping; if true without url → ping existing.'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'List limit (default 50).'}, 'events': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'string'}], 'description': 'Events: promise.opened|closed, fact.extracted, orchestra.act, redact, or *.'}, 'secret': {'type': 'string', 'maxLength': 200, 'description': 'Optional HMAC-SHA256 secret → x-temsor-signature: sha256=<hex>.'}, 'webhook_id': {'type': 'string', 'maxLength': 64, 'description': 'For ping: target webhook id.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max deliveries (default 20).'}, 'webhook_id': {'type': 'string', 'maxLength': 64, 'description': 'Filter by webhook id.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}, 'description': 'No input — TEMSOR_RTP_* from process env.'}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Active call id for agent UI context.'}, 'partial_text': {'type': 'string', 'default': '', 'maxLength': 2000, 'description': 'Partial transcript / utterance text (no live speech recognition).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['phone'], 'properties': {'phone': {'type': 'string', 'maxLength': 30, 'minLength': 4, 'description': 'Phone number in any common format.'}, 'defaultCountry': {'type': 'string', 'maxLength': 2, 'minLength': 2, 'description': 'ISO 3166-1 alpha-2 country to assume when the number has no international prefix. Defaults to TR.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['address'], 'properties': {'address': {'type': 'string', 'maxLength': 500, 'minLength': 3, 'description': 'Free-text address.'}, 'defaultProvince': {'type': 'string', 'description': 'Province to assume when the address has none.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['start'], 'properties': {'end': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'If set, count business days between start and this date.'}, 'start': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Start date (YYYY-MM-DD).'}, 'addDays': {'type': 'integer', 'maximum': 3650, 'minimum': -3650, 'description': 'Add/subtract this many business days (not calendar days).'}, 'countHalfDaysAsWork': {'type': 'boolean', 'default': True, 'description': 'Count Arife half-days as working days?'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['bankCode', 'accountNumber'], 'properties': {'bankCode': {'type': 'string', 'description': '5-digit Turkish national bank / EFT code (e.g. 00062).'}, 'reserved': {'type': 'string', 'description': 'Reserved BBAN digit after the bank code. Defaults to 0.'}, 'accountNumber': {'type': 'string', 'description': 'Account number, up to 16 alphanumeric characters (padded left with zeros).'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['issueDate', 'supplier', 'customer', 'lines'], 'properties': {'id': {'type': 'string', 'pattern': '^[A-Z]{3}[0-9]{13}$', 'description': 'Invoice number. Omit and supply `series` to have it built from the series and sequence.'}, 'uuid': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'Document UUID (ETTN). Generated when omitted.'}, 'lines': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'unitPrice'], 'properties': {'name': {'type': 'string', 'maxLength': 300, 'minLength': 1, 'description': 'Item or service description as it must appear on the invoice.'}, 'note': {'type': 'string', 'maxLength': 500}, 'vatRate': {'type': 'number', 'default': 20, 'maximum': 100, 'minimum': 0, 'description': 'VAT percentage, e.g. 20, 10, 1 or 0.'}, 'quantity': {'type': 'number', 'default': 1, 'maximum': 1000000000, 'exclusiveMinimum': 0}, 'unitCode': {'type': 'string', 'default': 'C62', 'maxLength': 10, 'minLength': 1, 'description': 'UN/ECE unit code. C62 = piece, KGM = kg, MTR = metre, HUR = hour.'}, 'unitPrice': {'type': 'number', 'maximum': 1000000000000, 'minimum': 0, 'description': 'Net unit price, before VAT and before the discount.'}, 'discountRate': {'type': 'number', 'default': 0, 'maximum': 100, 'minimum': 0, 'description': 'Line discount percentage applied to the net amount.'}, 'sellerItemCode': {'type': 'string', 'maxLength': 60}, 'vatExemptionReasonCode': {'type': 'string', 'maxLength': 10, 'description': 'Required by the tax authority when vatRate is 0.'}}}, 'maxItems': 500, 'minItems': 1}, 'notes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'default': [], 'maxItems': 20}, 'series': {'type': 'string', 'pattern': '^[A-Z]{3}$', 'description': 'Three-letter series code, used with `sequence`.'}, 'profile': {'enum': ['TEMELFATURA', 'TICARIFATURA', 'EARSIVFATURA'], 'type': 'string', 'default': 'TEMELFATURA', 'description': 'TEMELFATURA: no formal objection flow. TICARIFATURA: buyer may accept/reject. EARSIVFATURA: buyer is not an e-Invoice user.'}, 'currency': {'type': 'string', 'default': 'TRY', 'maxLength': 3, 'minLength': 3, 'description': 'ISO 4217. Anything other than TRY requires `exchangeRate`.'}, 'customer': {'type': 'object', 'required': ['name', 'taxNumber'], 'properties': {'city': {'type': 'string', 'maxLength': 100, 'description': 'City.'}, 'name': {'type': 'string', 'maxLength': 300, 'minLength': 2, 'description': 'Registered trade name, or the person’s full name.'}, 'email': {'type': 'string', 'maxLength': 120}, 'phone': {'type': 'string', 'maxLength': 40}, 'street': {'type': 'string', 'maxLength': 200}, 'country': {'type': 'string', 'default': 'Türkiye', 'maxLength': 60}, 'district': {'type': 'string', 'maxLength': 100, 'description': 'District.'}, 'taxNumber': {'type': 'string', 'maxLength': 11, 'minLength': 10, 'description': 'VKN (10 digits) or, for an individual, TCKN (11 digits).'}, 'taxOffice': {'type': 'string', 'maxLength': 100, 'description': 'Tax office ("vergi dairesi"). Required for VKN holders.'}, 'postalCode': {'type': 'string', 'maxLength': 10}, 'buildingNumber': {'type': 'string', 'maxLength': 30}}}, 'sequence': {'type': 'integer', 'maximum': 999999999, 'minimum': 1, 'description': 'Sequence number within the series and year.'}, 'supplier': {'type': 'object', 'required': ['name', 'taxNumber'], 'properties': {'city': {'type': 'string', 'maxLength': 100, 'description': 'City.'}, 'name': {'type': 'string', 'maxLength': 300, 'minLength': 2, 'description': 'Registered trade name, or the person’s full name.'}, 'email': {'type': 'string', 'maxLength': 120}, 'phone': {'type': 'string', 'maxLength': 40}, 'street': {'type': 'string', 'maxLength': 200}, 'country': {'type': 'string', 'default': 'Türkiye', 'maxLength': 60}, 'district': {'type': 'string', 'maxLength': 100, 'description': 'District.'}, 'taxNumber': {'type': 'string', 'maxLength': 11, 'minLength': 10, 'description': 'VKN (10 digits) or, for an individual, TCKN (11 digits).'}, 'taxOffice': {'type': 'string', 'maxLength': 100, 'description': 'Tax office ("vergi dairesi"). Required for VKN holders.'}, 'postalCode': {'type': 'string', 'maxLength': 10}, 'buildingNumber': {'type': 'string', 'maxLength': 30}}}, 'issueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'issueTime': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}:\\d{2}$'}, 'exchangeRate': {'type': 'number', 'description': 'Units of TRY per one unit of `currency`.', 'exclusiveMinimum': 0}, 'amountInWords': {'type': 'boolean', 'default': True, 'description': 'Adds the payable amount written out in Turkish words as a note, the way invoices require.'}, 'invoiceTypeCode': {'enum': ['SATIS', 'IADE'], 'type': 'string', 'default': 'SATIS'}, 'orderReferenceId': {'type': 'string', 'maxLength': 50}, 'despatchDocumentId': {'type': 'string', 'maxLength': 50, 'description': 'Delivery note number, if the goods shipped separately.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['xml'], 'properties': {'xml': {'type': 'string', 'maxLength': 4000000, 'minLength': 20, 'description': 'UBL-TR e-Invoice / e-Archive (e-Arsiv) XML body.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['startDate', 'endDate', 'monthlyGross'], 'properties': {'age': {'type': 'integer', 'maximum': 90, 'minimum': 15, 'description': 'Employee age at termination — affects annual-leave entitlement (under 18 or 50+).'}, 'asOf': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Rate table date. Defaults to endDate.'}, 'endDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Termination date (YYYY-MM-DD). Inclusive of this day.'}, 'startDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Employment start date (YYYY-MM-DD).'}, 'monthlyGross': {'type': 'number', 'maximum': 10000000, 'description': 'Gross monthly wage the severance is based on (giydirilmiş brüt).', 'exclusiveMinimum': 0}, 'unusedLeaveDays': {'type': 'number', 'maximum': 400, 'minimum': 0, 'description': 'Unused annual-leave days, if you also want the unused-leave gross.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['amount'], 'properties': {'style': {'enum': ['lower', 'title', 'upper'], 'type': 'string', 'default': 'lower', 'description': 'Output letter case.'}, 'amount': {'anyOf': [{'type': 'string'}, {'type': 'number'}], 'description': 'Amount. Accepts both "1.234,56" and 1234.56.'}, 'currency': {'enum': ['TRY', 'USD', 'EUR', 'GBP'], 'type': 'string', 'default': 'TRY'}, 'wrapHash': {'type': 'boolean', 'default': False}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['postalCode'], 'properties': {'postalCode': {'type': 'string', 'maxLength': 10, 'minLength': 3, 'description': 'Turkish 5-digit postal code, with or without spaces.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['iban', 'name'], 'properties': {'iban': {'type': 'string', 'description': 'Beneficiary Turkish IBAN (with or without spaces).'}, 'name': {'type': 'string', 'description': 'Payee name shown to the payer (2–26 chars after trim).'}, 'amount': {'type': 'number', 'description': 'TRY amount; omitted → static QR (payer enters amount).'}, 'currency': {'type': 'string', 'description': 'Must be TRY if provided.'}, 'explanation': {'type': 'string', 'description': 'Optional remittance note (application free field 10).'}, 'generatorCode': {'type': 'string', 'description': 'QR generator / EFT code (4 digits). Defaults to last 4 of the IBAN bank code.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['type', 'lawFamily', 'basisDate', 'periodDays'], 'properties': {'type': {'enum': ['electronic', 'physical', 'vekil', 'ilanen', 'last_known_address'], 'type': 'string', 'description': 'Notification method. Determines which event `basisDate` refers to and whether the deemed-received date is same-day or shifted.'}, 'basisDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The date `basisLabel` describes for this type — for "electronic" this is the date UETS reports the message as reached, not sent or read.'}, 'lawFamily': {'enum': ['hmk'], 'type': 'string', 'description': 'Body of procedural law the period is computed under. Only "hmk" (Code of Civil Procedure) is supported so far.'}, 'periodDays': {'type': 'integer', 'maximum': 3650, 'description': 'Length of the statutory or judicial period, in days, counted from `periodStart`.', 'exclusiveMinimum': 0}, 'periodType': {'type': 'string', 'maxLength': 120, 'description': 'Free-text label for the period (e.g. "itiraz", "temyiz"), echoed back only — not mapped to a day count.'}, 'hasAttorney': {'type': 'boolean', 'description': 'Whether the addressee has a registered attorney of record. When true and `type` is not "vekil", a TK 11 warning is added noting that service should have gone to the attorney.'}, 'ilanenDeemedDays': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Only valid with type "ilanen": number of days the competent authority set for the notice to become deemed received (TK 31), 7-15, default 7. Not the number of days for the underlying period.'}, 'subjectToJudicialRecess': {'type': 'boolean', 'description': 'Whether this matter is subject to the judicial recess (adli tatil, HMK 104) instead of being exempt. Only affects the result when `lawFamily` is "hmk" and the computed last day falls in the 20 July - 31 August window.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['value'], 'properties': {'type': {'enum': ['auto', 'tckn', 'vkn', 'iban', 'plate', 'imei', 'gtin', 'kep', 'mersis', 'postal', 'isbn'], 'type': 'string', 'default': 'auto', 'description': 'Omitted → inferred from the format.'}, 'value': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Value to validate.'}}}
输入模式
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['amount'], 'properties': {'rate': {'anyOf': [{'type': 'number', 'const': 0}, {'type': 'number', 'const': 1}, {'type': 'number', 'const': 10}, {'type': 'number', 'const': 20}], 'default': 20, 'description': 'VAT rate in percent. 0, 1, 10 or 20.'}, 'amount': {'type': 'number', 'maximum': 1000000000000, 'minimum': 0, 'description': 'The amount to tax. See amountIncludesVat.'}, 'withholding': {'type': 'string', 'description': 'Withholding fraction such as "5/10", or a code from the list (reklam, tasima, hurda, isgucu…).'}, 'amountIncludesVat': {'type': 'boolean', 'default': False, 'description': 'If true, `amount` is the gross (KDV dahil); if false, it is the net/matrah.'}}}
近期工具变更
类似的 MCP 服务器
Lovie Company Formation
Supports company formation and business administration with bank accounts, cards, invoicing, bookkeeping, accounting periods, and…
独行录 / opcmenu
Supports founder and company discovery, collaboration goals and tasks, events and signups, networking, messaging, profiles, produ…
AgentLot Marketplace
Enables agents and users to discover, bid on, purchase, deliver, and settle paid digital services and compute work.
Odichat
Manages WhatsApp, Instagram, and Facebook inboxes with contacts, conversations, agents, automation rules, labels, canned response…
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…
Speedbot Autonomous Work Network
Supports asynchronous collaboration, discovery, messaging, referrals, and optional USDC-based scenarios among AI agents.
KaiCalls
Provides AI phone reception, outbound calling campaigns, call transcripts and recordings, lead management, routing, staff alerts,…