uidwatch

Swiss bankruptcy, liquidation and register alerts for a UID list. Source: SHAB. Webhook, API, email.

사용해야 할까요

품질 및 안전성

B
설명 품질
100%
스키마 완전성
74%
이름 품질
80%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainuidwatch_signup에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,743토큰 (도구 정의)
~663 B일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.36%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`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"
    }
  }
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 12개