uidwatch
Swiss bankruptcy, liquidation and register alerts for a UID list. Source: SHAB. Webhook, API, email.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- HIGH
- MEDIUMuidwatch_signup에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"uidwatch": {
"url": "https://uidwatch.tollwyn.com/mcp"
}
}
}원격 엔드포인트
https://uidwatch.tollwyn.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (12)
🟡uidwatch_signup(email, via, accept_terms)
Create a UIDWatch account and get its API key. The key is shown only in this answer: keep it and send it as "Authorization: Bearer <key>" in the configuration of the MCP client, which every other tool needs. accept_terms must be true: it accepts the terms of service (https://uidwatch.tollwyn.com/terms?via=mcp-registry), including the data processing terms in section 8, on behalf of the business that signs up. The trial lasts 30 days and watches 20 entries until a person confirms the email address from the mail UIDWatch sends, then 2500. via is an optional partner id; without one the account counts as signed up through MCP.
입력 스키마
{
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"maxLength": 254
},
"via": {
"type": "string",
"description": "Optional partner id: lower-case words joined by hyphens"
},
"accept_terms": {
"type": "boolean",
"const": true,
"description": "Accepts the terms at https://uidwatch.tollwyn.com/terms?via=mcp-registry, including the data processing terms in section 8, on behalf of the business that signs up."
}
},
"required": [
"email",
"accept_terms"
]
}🔴watchlist_replace(items)
Replace the whole watchlist with these entries, e.g. to sync it from an ERP every night: entries missing from items are removed, entries that stay keep their date. UIDs are accepted as CHE-123.456.789, CHE123456789 or with MWST/TVA/IVA; the check digit must match. Each entry may carry your reference (e.g. a customer number) and a group (e.g. the client a debtor belongs to). All or nothing: one invalid UID rejects the call with every problem listed. New entries get an initial check of the history in the gazette.
입력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"maxItems": 25000,
"items": {
"type": "object",
"required": [
"uid"
],
"properties": {
"uid": {
"type": "string",
"maxLength": 40,
"example": "CHE-110.090.028 MWST"
},
"group": {
"type": "string",
"maxLength": 100
},
"reference": {
"type": "string",
"maxLength": 200
}
}
}
}
},
"required": [
"items"
]
}🟡watchlist_add(items)
Add entries to the watchlist, or change the reference of entries already on it. UIDs are accepted as CHE-123.456.789, CHE123456789 or with MWST/TVA/IVA; the check digit must match. Each entry may carry your reference (e.g. a customer number) and a group (e.g. the client a debtor belongs to). All or nothing: one invalid UID rejects the call with every problem listed. New entries get an initial check of the history in the gazette.
입력 스키마
{
"type": "object",
"properties": {
"items": {
"type": "array",
"maxItems": 25000,
"items": {
"type": "object",
"required": [
"uid"
],
"properties": {
"uid": {
"type": "string",
"maxLength": 40,
"example": "CHE-110.090.028 MWST"
},
"group": {
"type": "string",
"maxLength": 100
},
"reference": {
"type": "string",
"maxLength": 200
}
}
}
}
},
"required": [
"items"
]
}🟢watchlist_list(limit, offset, group)
A page of the watchlist, oldest entry first, optionally of one group. Each entry tells whether its initial check is done (checked_at) and whether it is within the limit of the plan (monitored).
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 1000,
"default": 100
},
"offset": {
"type": "integer",
"minimum": 0,
"default": 0
},
"group": {
"type": "string",
"maxLength": 100
}
}
}🔴watchlist_remove(uid, group)
Remove one entry from the watchlist; name its group if it has one.
입력 스키마
{
"type": "object",
"properties": {
"uid": {
"type": "string",
"maxLength": 40,
"example": "CHE-110.090.028"
},
"group": {
"type": "string",
"maxLength": 100,
"default": ""
}
},
"required": [
"uid"
]
}🟢events_list(cursor, limit, kind, historical, uid, ...)
Events for the watchlist after a cursor, oldest first: bankruptcies, compositions, debt enforcement, liquidations, deletions, register deficiencies and changes, and new entries published in the Swiss Official Gazette of Commerce (SHAB), each with a link to the notice and its signed PDF. Keep next_cursor and pass it as cursor next time: every event comes exactly once. historical "true" filters the findings of the initial check, published before the entry was added.
입력 스키마
{
"type": "object",
"properties": {
"cursor": {
"type": "string",
"pattern": "^\\d{1,18}$",
"default": "0"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500,
"default": 100
},
"kind": {
"type": "string",
"enum": [
"bankruptcy",
"composition",
"debt_enforcement",
"liquidation",
"deletion",
"deficiency",
"change",
"new_entry"
]
},
"historical": {
"type": "string",
"enum": [
"true",
"false"
]
},
"uid": {
"type": "string",
"maxLength": 40
},
"group": {
"type": "string",
"maxLength": 100
}
}
}🟡webhook_create(url, kinds)
Add a webhook endpoint (https on a public address, at most 5): every new event of the chosen kinds (default: all) is posted to it as JSON, signed with HMAC-SHA256 in the UIDWatch-Signature header. The signing secret is returned only in this answer.
입력 스키마
{
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"maxLength": 2000,
"description": "https on a public address"
},
"kinds": {
"type": "array",
"minItems": 1,
"items": {
"type": "string",
"enum": [
"bankruptcy",
"composition",
"debt_enforcement",
"liquidation",
"deletion",
"deficiency",
"change",
"new_entry"
]
},
"description": "Default: all kinds"
}
},
"required": [
"url"
]
}🟢webhook_list
The webhook endpoints of the account with their kinds.
입력 스키마
{
"type": "object",
"properties": {}
}🔴webhook_delete(id)
Delete a webhook endpoint; no more events are posted to it.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
}
},
"required": [
"id"
]
}🟡webhook_test(id)
Post a sample event marked "test": true to a webhook endpoint now and tell how it answered (10 per minute).
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
}
},
"required": [
"id"
]
}🟢account_status
The account: plan (trial, monitor or paused), whether the list is monitored, the limit and usage in entries, the end of the trial, whether the email address is confirmed, and last_scan_at, the last successful check of the gazette.
입력 스키마
{
"type": "object",
"properties": {}
}🔴billing_checkout(blocks)
A Stripe Checkout link for the subscription: CHF 33 per month per package of 2500 entries, 1 to 10 packages, cancel monthly. A person, or an agent with its own payment method, opens the link and pays there.
입력 스키마
{
"type": "object",
"properties": {
"blocks": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"default": 1,
"description": "Packages to start with; adjustable in Checkout"
}
}
}커뮤니티
증거