uidwatch
Swiss bankruptcy, liquidation and register alerts for a UID list. Source: SHAB. Webhook, API, email.
我该使用它吗
质量与安全性
发现(2)
- HIGH
- MEDIUM在 uidwatch_signup 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `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"
}
}
}社区
证据