# SealGate

> 既存のログインにパスキーを追加する API (日本製)。プロジェクト・API キー・パスキー・監査ログを tool で扱う。管理画面のアカウントでログインしてつなぐ (OAuth)

- name: jp.sealgate/sealgate
- version: 1.4.1
- connection class: R2 (oauth_consent_once)
- trust: 83/100 flags: no-repository
- quality: 83/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/jp.sealgate%2Fsealgate
- tools: https://api.protogrid.dev/v1/servers/jp.sealgate%2Fsealgate/tools

**An agent can connect after a one-time OAuth consent by a human.** Remote endpoint behind OAuth 2. Tokens stay with the agent; the registry only exposes the authorization metadata.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "sealgate": {
      "type": "http",
      "url": "https://api.sealgate.jp/v1/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-99% +updated-0d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 83/100 (good)

### protocol: n/a (weight 25)

- n/a `protocol.modern`, `protocol.stateless`, `protocol.transport`, `protocol.list_ttl`: no remote answered a protocol handshake (not probed yet, unreachable, or local-only)

### authorization: 83 (weight 15)

- pass `auth.prm`: Protected Resource Metadata (RFC 9728) published
- pass `auth.as_metadata`: authorization server metadata reachable
- warn `auth.cimd`: only Dynamic Client Registration, deprecated in 2026-07-28 in favour of CIMD
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 15 of 15 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,348 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 50 (weight 15)

- pass `stability.changes`: 5 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 15, about 1,348 tokens to load them all
- tool set hash: d03c7637d9704d4ff927833f9a94f1ee
- tools last changed: 2026-09-24T06:03:30.720Z
- badge: [![protogrid quality](https://protogrid.dev/badge/jp.sealgate/sealgate.svg)](https://protogrid.dev/servers/jp.sealgate/sealgate)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-09-24 `get_billing_portal` added
  - カードの変更・領収書・解約を行う Stripe の画面の URL を返します。カードを登録済みの組織だけが使えます。 (api_key が必要: 管理画面で発行したキー)
- 2026-09-24 `create_checkout` added
  - 従量課金 (その月の MAU で決まるステップ式、税抜) に切り替えるための Stripe Checkout の URL を返します。利用者にこの URL を開いてカードを入力してもらうと、その場で無料枠の上限が外れます (人の手はこの 1 回だけ)。メールアドレスの確認が済んだ組織だけが使えます。 (api_key が必要: 管理画面で発行したキー)
- 2026-09-24 `get_account` added
  - 組織のプラン (free / metered / enterprise)、メールアドレスの確認が済んでいるか、今月の MAU と無料枠の上限を返します。 (api_key が必要: 管理画面で発行したキー)
- 2026-09-24 `signup_url` changed (description) **meaning changed**
  - before: SealGate の登録 URL を返します。登録は利用者本人が Google か GitHub のアカウントでログインするだけです (エージェントは代行できません)。登録後、管理画面で発行した API キーを以後の tool の引数 api_key に渡してください。
  - after: 利用者本人がブラウザで登録するときの URL を返します (Google / GitHub / メールアドレス)。エージェントが登録するなら signup を使ってください。
- 2026-09-24 `signup` added
  - メールアドレスと、パスキーを使うサイトのドメイン (rp_id) で SealGate の組織を作り、最初のアプリと API キーをその場で返します (パスワード不要)。無料枠 (月 1,000 MAU) ですぐ組み込みを始められます。利用者に確認リンク (verify_url) を開いてもらうとメールアドレスの確認が済み、カード登録 (create_checkout) ができるようになります。24 時間以内に開かれないと組織は停止します。

Full history: https://api.protogrid.dev/v1/servers/jp.sealgate%2Fsealgate/changes

## Remotes

- https://api.sealgate.jp/v1/mcp (streamable-http, auth oauth2, reachable true, uptime30d 0.9910714)

## Packages

_none_

## Tools (15)

- `create_checkout`: 従量課金 (その月の MAU で決まるステップ式、税抜) に切り替えるための Stripe Checkout の URL を返します。利用者にこの URL を開いてカードを入力してもらうと、その場で無料枠の上限が外れます (人の手はこの 1 回だけ)。メールアドレスの確認が済んだ組織だけが使えます。 (api_key が必要: 管理画面で発行したキー)
- `get_account`: 組織のプラン (free / metered / enterprise)、メールアドレスの確認が済んでいるか、今月の MAU と無料枠の上限を返します。 (api_key が必要: 管理画面で発行したキー)
- `get_app`: この API キーのアプリ (rp_id、許可オリジン、パスワード併存期限、Webhook URL) を返します。 (api_key が必要: 管理画面で発行したキー)
- `get_billing_portal`: カードの変更・領収書・解約を行う Stripe の画面の URL を返します。カードを登録済みの組織だけが使えます。 (api_key が必要: 管理画面で発行したキー)
- `get_integration_guide`: SealGate の組み込み方 (流れ、REST API、ブラウザ SDK、サーバー側の実装例、エラー、料金) を Markdown で返します。
- `get_stats`: MAU (6 か月)、登録完了数、直近 30 日のログイン成否、利用者数、鍵の種類を返します。 (api_key が必要: 管理画面で発行したキー)
- `issue_recovery_token`: 端末をなくした利用者が別の端末でパスキーを登録し直すための 15 分有効のトークンを返します。本人確認は開発者側で済ませてから呼んでください。 (api_key が必要: 管理画面で発行したキー)
- `list_audit`: 登録・ログイン・失効・復旧の記録を新しい順に返します。event と since で絞れます。 (api_key が必要: 管理画面で発行したキー)
- `list_credentials`: 利用者 (external_id) のパスキー一覧を返します。失効済みも含み、revoked_at で区別します。 (api_key が必要: 管理画面で発行したキー)
- `list_plans`: ステップ式の料金表 (税抜)。その月のログイン利用者数 (MAU) がどの帯に入るかで月額が決まります。
- `list_users`: パスキーを登録した利用者 (external_id、表示名、有効な鍵の数、最終ログイン) を返します。q で external_id を部分一致で絞れます。 (api_key が必要: 管理画面で発行したキー)
- `revoke_credential`: パスキーを 1 本失効します。取り消せません。 (api_key が必要: 管理画面で発行したキー)
- `revoke_user`: 利用者 (external_id) のパスキーをすべて失効します (退会・乗っ取り時)。取り消せません。 (api_key が必要: 管理画面で発行したキー)
- `signup`: メールアドレスと、パスキーを使うサイトのドメイン (rp_id) で SealGate の組織を作り、最初のアプリと API キーをその場で返します (パスワード不要)。無料枠 (月 1,000 MAU) ですぐ組み込みを始められます。利用者に確認リンク (verify_url) を開いてもらうとメールアドレスの確認が済み、カード登録 (create_checkout) ができるようになります。24 時間以内に開かれないと組織は停止します。
- `signup_url`: 利用者本人がブラウザで登録するときの URL を返します (Google / GitHub / メールアドレス)。エージェントが登録するなら signup を使ってください。
