Serveur MCP

Private Law Wiki

io.github.privatelawattorneys/wiki-private-law

Ce que fait ce MCP

Searches and quotes a private-law knowledge base and provides sourced assessments and rankings for banking-related cases and providers.

ask
Ask the Private Law wiki
Answer a question by quoting a published wiki article. The answer is extracted verbatim, never generated, and always carries the URL it came from. Returns confident=false with suggested reading when the corpus does not cover the question or when context genuinely conflicts. Bare MSO means the Hong Kong Money Service Operator licence; use Management Services Organization or regulated-practice context for the broader platform concept. Ask in the language you want answered — Russian and English are both first-class.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['question'], 'properties': {'locale': {'enum': ['ru', 'en', 'ko', 'zh-hant'], 'type': 'string', 'description': 'Corpus language; inferred from the question when omitted.'}, 'question': {'type': 'string', 'description': 'A natural-language question, up to 2000 characters.'}}}
Schéma de sortie
{'type': 'object', 'required': ['confident', 'answer', 'citations', 'suggestedReading', 'queryInterpretation'], 'properties': {'answer': {'type': ['string', 'null']}, 'locale': {'type': 'string'}, 'citations': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'url', 'provenance'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'distance': {'type': ['number', 'null']}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as', 'primary_sources', 'verification_status'], 'properties': {'id': {'type': 'string', 'description': '<locale>:<slug> for an article, <dataset>:<record id> for a dataset row.'}, 'cite_as': {'type': 'string'}, 'version': {'type': ['string', 'null'], 'description': 'Revision of exactly the material served: for an article the snapshot content hash (the HTML ETag value); for a dataset record the dataset revision it was published in, since the published file is named by the hash of its own content and meta.version plus datasets/index.json resolve that filename. Null when unknown.'}, 'contract': {'type': 'string', 'const': 'wiki-provenance/1'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string', 'format': 'uri', 'description': 'Published location without tracking parameters.'}, 'primary_sources': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': ['string', 'null']}, 'name': {'type': 'string'}}}}, 'verification_status': {'enum': ['verified', 'pending', 'unknown'], 'type': 'string'}}, 'description': 'Origin of one record: stable id, clean canonical URL, publisher, the exact published revision served, a ready citation, primary sources and review status.'}}}}, 'confident': {'type': 'boolean'}, 'threshold': {'type': 'number'}, 'topDistance': {'type': ['number', 'null']}, 'refusalReason': {'type': ['string', 'null']}, 'suggestedReading': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'url', 'provenance'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'distance': {'type': ['number', 'null']}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as', 'primary_sources', 'verification_status'], 'properties': {'id': {'type': 'string', 'description': '<locale>:<slug> for an article, <dataset>:<record id> for a dataset row.'}, 'cite_as': {'type': 'string'}, 'version': {'type': ['string', 'null'], 'description': 'Revision of exactly the material served: for an article the snapshot content hash (the HTML ETag value); for a dataset record the dataset revision it was published in, since the published file is named by the hash of its own content and meta.version plus datasets/index.json resolve that filename. Null when unknown.'}, 'contract': {'type': 'string', 'const': 'wiki-provenance/1'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string', 'format': 'uri', 'description': 'Published location without tracking parameters.'}, 'primary_sources': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': ['string', 'null']}, 'name': {'type': 'string'}}}}, 'verification_status': {'enum': ['verified', 'pending', 'unknown'], 'type': 'string'}}, 'description': 'Origin of one record: stable id, clean canonical URL, publisher, the exact published revision served, a ready citation, primary sources and review status.'}}}}, 'queryInterpretation': {'type': ['object', 'null'], 'required': ['term', 'sense', 'ambiguous', 'message', 'choices'], 'properties': {'term': {'enum': ['MSO'], 'type': 'string'}, 'sense': {'enum': ['hong_kong_money_service_operator', 'regulated_practice_management', 'comparison', 'ambiguous'], 'type': 'string'}, 'choices': {'type': 'array', 'items': {'type': 'object', 'required': ['sense', 'slug', 'locale', 'title', 'description', 'url'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'sense': {'enum': ['hong_kong_money_service_operator', 'regulated_practice_management'], 'type': 'string'}, 'title': {'type': 'string'}, 'locale': {'type': 'string'}, 'description': {'type': 'string'}}}}, 'message': {'type': 'string'}, 'ambiguous': {'type': 'boolean'}}}}}
assess_bank_case
Assess a problem with a bank
The complaint desk's deterministic assessment for a frozen account, a closure notice, a document request, a stuck payment or a refused application: what to do now, the escalation ladder of the bank's jurisdiction (bank complaint, ombudsman or regulator, data access request) with each rung judged for this client — open now, after the bank replies, conditional or not open to them — and linked to its primary source, plus deadlines, cautions and the help that fits. Also returns the letters to send — the formal complaint that starts the bank's clock and the data access request, in English with bracketed placeholders the person fills in themselves — and the dates that follow if they go out today. Pass holder whenever it is known: an ombudsman's door depends on whose account it is. Information, not legal advice. Never submit a person's contact details; hand them the complaint URL instead.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['problem', 'stage', 'jurisdiction', 'amount', 'sanctions'], 'properties': {'stage': {'enum': ['notice', 'replied', 'deadline_passed', 'closed'], 'type': 'string'}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "The client's current date (YYYY-MM-DD) for the calendar. Optional; defaults to the server's date."}, 'amount': {'enum': ['lt50k', '50k_250k', '250k_1m', 'gt1m'], 'type': 'string'}, 'holder': {'enum': ['individual', 'small_business', 'company'], 'type': 'string', 'description': 'Whose account it is. Optional; without it eligibility is stated, not decided.'}, 'locale': {'enum': ['ru', 'en'], 'type': 'string'}, 'problem': {'enum': ['freeze', 'closure', 'kyc_request', 'payment_stuck', 'refused'], 'type': 'string'}, 'sanctions': {'enum': ['none', 'passport', 'business'], 'type': 'string', 'description': 'Russia or Belarus nexus of the client.'}, 'jurisdiction': {'enum': ['uk', 'eu', 'ch', 'sg', 'hk', 'us', 'uae', 'other'], 'type': 'string', 'description': "Where the bank or the neobank's licence sits."}}}
Schéma de sortie
{'type': 'object', 'required': ['headline', 'verdict', 'firstSteps', 'escalation', 'deadlines', 'calendar', 'letters', 'service', 'cautions', 'articles', 'complaintUrl'], 'properties': {'letters': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'title', 'purpose', 'body'], 'properties': {'body': {'type': 'string'}, 'kind': {'enum': ['complaint', 'data_request'], 'type': 'string'}, 'title': {'type': 'string'}, 'purpose': {'type': 'string'}}}}, 'service': {'type': 'object', 'required': ['id', 'title', 'why'], 'properties': {'id': {'type': 'string'}, 'why': {'type': 'string'}, 'title': {'type': 'string'}}}, 'verdict': {'type': 'string'}, 'articles': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'url', 'provenance'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as', 'primary_sources', 'verification_status'], 'properties': {'id': {'type': 'string', 'description': '<locale>:<slug> for an article, <dataset>:<record id> for a dataset row.'}, 'cite_as': {'type': 'string'}, 'version': {'type': ['string', 'null'], 'description': 'Revision of exactly the material served: for an article the snapshot content hash (the HTML ETag value); for a dataset record the dataset revision it was published in, since the published file is named by the hash of its own content and meta.version plus datasets/index.json resolve that filename. Null when unknown.'}, 'contract': {'type': 'string', 'const': 'wiki-provenance/1'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string', 'format': 'uri', 'description': 'Published location without tracking parameters.'}, 'primary_sources': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': ['string', 'null']}, 'name': {'type': 'string'}}}}, 'verification_status': {'enum': ['verified', 'pending', 'unknown'], 'type': 'string'}}, 'description': 'Origin of one record: stable id, clean canonical URL, publisher, the exact published revision served, a ready citation, primary sources and review status.'}}}}, 'calendar': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'date'], 'properties': {'date': {'type': 'string'}, 'label': {'type': 'string'}}}}, 'cautions': {'type': 'array', 'items': {'type': 'string'}}, 'headline': {'type': 'string'}, 'deadlines': {'type': 'array', 'items': {'type': 'string'}}, 'escalation': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'when', 'how', 'who', 'status', 'statusNote'], 'properties': {'how': {'type': 'string'}, 'who': {'type': 'string'}, 'name': {'type': 'string'}, 'when': {'type': 'string'}, 'source': {'type': 'string'}, 'status': {'enum': ['open', 'later', 'conditional', 'closed'], 'type': 'string'}, 'statusNote': {'type': 'string'}}}}, 'firstSteps': {'type': 'array', 'items': {'type': 'string'}}, 'complaintUrl': {'type': 'string'}}}
bank_index
The private.law Bank Index
List providers of banking for international clients with their standing in the Bank Index: a ranking per product (business account, private banking, personal account, digital assets, payments and FX, banking infrastructure, trade finance), tier, composite score 0–100, data coverage and watch flag. Filter by product, tier or a standardised client profile; without a product each provider shows its best standing. Scores are computed from dated, sourced data points; unrated providers are listed too. Use bank_rating for one provider with its evidence.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'tier': {'enum': ['tier1', 'tier2', 'tier3', 'unrated'], 'type': 'string'}, 'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Default 25.'}, 'locale': {'enum': ['ru', 'en'], 'type': 'string'}, 'product': {'enum': ['business-account', 'private-banking', 'personal-account', 'digital-assets', 'payments-fx', 'banking-infrastructure', 'trade-finance'], 'type': 'string', 'description': 'Rank under this product; a provider appears in every product it offers.'}, 'profile': {'enum': ['founder-us-llc', 'trading-hk-ltd', 'hnw-individual', 'family-office', 'crypto-native', 'ru-nexus'], 'type': 'string', 'description': 'Only providers whose verdict for this profile is yes or case-by-case.'}}}
Schéma de sortie
{'type': 'object', 'required': ['method', 'generatedAt', 'total', 'providers'], 'properties': {'total': {'type': 'integer'}, 'method': {'type': 'string'}, 'providers': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'url', 'products', 'product', 'tier', 'composite', 'coverage', 'watch', 'reviewStatus', 'provenance'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'tier': {'enum': ['tier1', 'tier2', 'tier3', 'unrated'], 'type': 'string'}, 'watch': {'type': 'boolean'}, 'product': {'type': 'string', 'description': 'The product this standing is for.'}, 'coverage': {'type': 'number'}, 'products': {'type': 'array', 'items': {'type': 'string'}}, 'composite': {'type': ['integer', 'null']}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as'], 'properties': {'id': {'type': 'string'}, 'cite_as': {'type': 'string'}, 'version': {'type': 'string'}, 'contract': {'type': 'string'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string'}}}, 'reviewStatus': {'enum': ['unrated', 'draft', 'reviewed'], 'type': 'string'}}}}, 'generatedAt': {'type': 'string'}}}
bank_rating
One provider in the Bank Index, with evidence
Return one provider's full record: its standing under every product it offers (tier, composite, coverage), pillar scores, every indicator value with its source, date and verification level, the standardised profile verdicts, flags and a provenance object with a ready citation. Also returns the complaint-desk URL for that provider.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'The provider card slug, e.g. mercury.'}}}
Schéma de sortie
{'type': 'object', 'required': ['slug', 'products', 'headline', 'standings', 'tier', 'composite', 'coverage', 'watch', 'flags', 'pillars', 'indicators', 'profiles', 'review', 'complaint', 'provenance'], 'properties': {'slug': {'type': 'string'}, 'tier': {'enum': ['tier1', 'tier2', 'tier3', 'unrated'], 'type': 'string'}, 'flags': {'type': 'array', 'items': {'type': 'string'}}, 'watch': {'type': 'boolean'}, 'review': {'type': 'object'}, 'pillars': {'type': 'object'}, 'coverage': {'type': 'number'}, 'headline': {'type': ['object', 'null']}, 'products': {'type': 'array', 'items': {'type': 'string'}}, 'profiles': {'type': 'object'}, 'complaint': {'type': 'object'}, 'composite': {'type': ['integer', 'null']}, 'standings': {'type': 'object'}, 'indicators': {'type': 'object'}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as'], 'properties': {'id': {'type': 'string'}, 'cite_as': {'type': 'string'}, 'version': {'type': 'string'}, 'contract': {'type': 'string'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string'}}}}}
search
Search the Private Law wiki
Rank published articles for a query and return them with titles and URLs. Use when you want sources to read rather than a single answer. Search is sense-aware: bare MSO promotes only the Hong Kong Money Service Operator owner, professional-industry context promotes the regulated-practice platform, and genuinely conflicting context returns both with an explicit interpretation object.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Default 5.'}, 'query': {'type': 'string', 'description': 'Search terms or a question.'}, 'locale': {'enum': ['ru', 'en', 'ko', 'zh-hant'], 'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['hits', 'queryInterpretation'], 'properties': {'hits': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'url', 'provenance'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'title': {'type': 'string'}, 'distance': {'type': ['number', 'null']}, 'provenance': {'type': 'object', 'required': ['contract', 'id', 'canonical_url', 'publisher', 'version', 'cite_as', 'primary_sources', 'verification_status'], 'properties': {'id': {'type': 'string', 'description': '<locale>:<slug> for an article, <dataset>:<record id> for a dataset row.'}, 'cite_as': {'type': 'string'}, 'version': {'type': ['string', 'null'], 'description': 'Revision of exactly the material served: for an article the snapshot content hash (the HTML ETag value); for a dataset record the dataset revision it was published in, since the published file is named by the hash of its own content and meta.version plus datasets/index.json resolve that filename. Null when unknown.'}, 'contract': {'type': 'string', 'const': 'wiki-provenance/1'}, 'publisher': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'name': {'type': 'string'}}}, 'canonical_url': {'type': 'string', 'format': 'uri', 'description': 'Published location without tracking parameters.'}, 'primary_sources': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'url'], 'properties': {'url': {'type': ['string', 'null']}, 'name': {'type': 'string'}}}}, 'verification_status': {'enum': ['verified', 'pending', 'unknown'], 'type': 'string'}}, 'description': 'Origin of one record: stable id, clean canonical URL, publisher, the exact published revision served, a ready citation, primary sources and review status.'}}}}, 'queryInterpretation': {'type': ['object', 'null'], 'required': ['term', 'sense', 'ambiguous', 'message', 'choices'], 'properties': {'term': {'enum': ['MSO'], 'type': 'string'}, 'sense': {'enum': ['hong_kong_money_service_operator', 'regulated_practice_management', 'comparison', 'ambiguous'], 'type': 'string'}, 'choices': {'type': 'array', 'items': {'type': 'object', 'required': ['sense', 'slug', 'locale', 'title', 'description', 'url'], 'properties': {'url': {'type': 'string'}, 'slug': {'type': 'string'}, 'sense': {'enum': ['hong_kong_money_service_operator', 'regulated_practice_management'], 'type': 'string'}, 'title': {'type': 'string'}, 'locale': {'type': 'string'}, 'description': {'type': 'string'}}}}, 'message': {'type': 'string'}, 'ambiguous': {'type': 'boolean'}}}}}
Modifié
assess_bank_case
23 September 2026 02:47
Ajouté
assess_bank_case
19 September 2026 02:45
Ajouté
bank_rating
19 September 2026 02:45
Ajouté
bank_index
19 September 2026 02:45
Ajouté
search
17 September 2026 12:49
Ajouté
ask
17 September 2026 12:49