Dregs について
Dregsは、SaaSチーム向けの不正利用検知サービスです。MCPサーバーを通じて、AIエージェントがスコア付きIDやエスカレーション、根拠を調査し、プレビューと権限管理のもとでルールを扱えます。
主な機能
- 01不正利用のIDスコアリング
- 02IDの履歴、関連、端末、イベント
- 03エスカレーションの確認と状態更新
- 04ルール作成、プレビュー、調整
- 05読み取り専用の稼働状況レビュー
活用シーン
- 01不審な登録やアカウントの調査
- 02端末やセッションを共有するアカウントの追跡
- 03未対応エスカレーションとスコア傾向の確認
- 04適用前にルール変更の影響をプレビュー
MCP 対応
https://dregs.com/mcp のホスト型MCPサーバーは、アカウント、ID、イベント、端末、エスカレーション、ルールのツールをMCPクライアントに提供します。Streamable HTTPでOAuth 2.1またはBearerトークン認証を利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://dregs.com/mcpclaude mcp add --transport http com-dregs-dregs https://dregs.com/mcp{"mcpServers":{"com-dregs-dregs":{"type":"http","url":"https://dregs.com/mcp"}}}Cursor で開く{"servers":{"com-dregs-dregs":{"type":"http","url":"https://dregs.com/mcp"}}}VS Code で開く{"mcpServers":{"com-dregs-dregs":{"type":"http","url":"https://dregs.com/mcp"}}}{"mcpServers":{"com-dregs-dregs":{"serverUrl":"https://dregs.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Dregs MCP
Dregs は、サイトのユーザーについて、不正なサインアップ、ボット、重複アカウント、紹介プログラムの不正利用、アカウント乗っ取りといった不正行為や悪用のリスクをスコア化します。それぞれのスコアは、その根拠となる観測結果とともに説明されます。組み込みのModel Context Protocol(MCP)サーバーを使えば、Claude、ChatGPT、Codex、Cursor、VS Code などの AI エージェントが、Dregs アカウント内で ID を調査し、エスカレーションを確認し、ルールを調整できます。
このリポジトリは、そのサーバーへの接続方法をまとめた公開リポジトリです。各クライアント向けのセットアップ例、Claude Code プラグイン、MCP ディレクトリに掲載されている Dregs のリスト情報を提供しています。サーバー自体は Dregs が https://dregs.com/mcp でホストしており、ソースはこのリポジトリでは公開されていません。
最新の完全版ガイドは、Dregs マニュアルの AI エージェントの章をご覧ください。この README は概要版です。
Dregs MCP エンドポイント
| URL | https://dregs.com/mcp |
| トランスポート | Streamable HTTP |
| 認証 | OAuth 2.1(推奨)、または Authorization: Bearer ヘッダーの MCP トークン |
| レジストリ名 | com.dregs/dregs-mcp |
OAuth は最も簡単な接続方法です。MCP OAuth に対応したクライアントでは、ブラウザーで Dregs に移動し、接続を承認します。複数のチームに所属している場合は、承認ページでチームを選択できます。また、Dregs のダッシュボードにある Settings → AI Agents から、接続済みのエージェントを確認したり、接続を取り消したりできます。
MCP トークンは、OAuth に対応していないクライアントや、スクリプトで動作するエージェント向けです。Dregs のダッシュボードにある Settings → AI Agents で作成し、すぐにコピーしてください(表示されるのは一度だけです)。Authorization: Bearer YOUR_TOKEN として送信します。トークンは作成したチーム内であなたとして動作するため、パスワードと同様に扱ってください。
Claude Code を Dregs に接続する
最も手早い方法は、このリポジトリのプラグインを使うことです。Dregs MCP サーバーに加え、アプリケーションに Dregs を組み込むためのスキルと、その後のデータ操作に役立つスキルが追加されます。
/plugin marketplace add dregs-sdk/dregs-mcp
/plugin install dregs@dregs
次に /mcp を実行し、dregs を選んで、ブラウザーで OAuth 接続を承認します。チームに接続できることを確認するには、Claude に 「Dregs アカウントの概要をまとめてください」 のように尋ねてみてください。
プラグインを使わない場合は、サーバーを直接追加してください。Claude Code が OAuth の手順を案内します。
claude mcp add --transport http dregs https://dregs.com/mcp
または、ヘッドレス環境で使用する場合は、MCP トークンを使います。
claude mcp add --transport http dregs https://dregs.com/mcp --header "Authorization: Bearer YOUR_TOKEN"
同等のプロジェクトレベルの .mcp.json:
{
"mcpServers": {
"dregs": {
"type": "http",
"url": "https://dregs.com/mcp"
}
}
}
プラグインのスキル
プラグインのスキルはツールのスキーマではなく、ワークフローです。それぞれが実行前に get_documentation で関連するマニュアルの章を読み込み、確認用に変更案を提示し、書き込み前に確認を取ります。
| スキル | 機能 |
|---|---|
connect | OAuth またはトークンを使って Claude Code を Dregs MCP サーバーに接続し、get_account_summary で接続を確認します。 |
setup | 既存の状態を確認し、どの作業を行うかを尋ねながら、Dregs をアプリケーションに完全に統合します。 |
setup-tracking | dregs.js スニペット、サインアップ時とログイン時の dregs.identify()、主要なアクションに対する dregs.track() を追加し、イベントが届くことを確認します。 |
setup-events | 使用言語向けの公式 Dregs SDK でサーバーサイドイベントを送信し、イベント名と ID フィールドを Dregs の標準タイプに対応付けます。 |
setup-webhooks | 署名検証とスコアやエスカレーションへの初期応答を備えた Webhook レシーバーを構築し、配信を確認します。 |
health-check | 統合を読み取り専用で診断します。取り込み、識別、マッピング、アナライザーの観測結果、制限を確認します。 |
investigate-identity | スコアから観測結果、履歴、リンク、デバイス、イベントまで、1つの ID を追跡して結論を出します。 |
investigate-cluster | 共有デバイス、IP、セッションを通じて関連アカウントの輪をマッピングし、各メンバーの証拠を示します。 |
tune-rules | バッジとエスカレーションのルールを作成または調整し、影響をプレビューしてから書き込み前に確認を取ります。 |
weekly-review | アカウントの健全性を読み取り専用で確認します。ボリューム、スコアの分布、ルールのアクティビティ、未解決のエスカレーション、使用状況を確認します。 |
統合スキルはコードを編集するため、Claude Code や Codex など、リポジトリにアクセスできるクライアントが必要です。それ以外のスキルは、サーバーに接続できる環境であればどこでも利用できます。
Claude Desktop と claude.ai を Dregs に接続する
Claude Desktop と claude.ai は、OAuth を使用するカスタムコネクターとしてリモート MCP サーバーに接続します。
- Settings → Connectors を開き、Add custom connector を選択します。
- 名前と URL
https://dregs.com/mcpを入力します。 - Connect を選択し、ブラウザーが開いたら Dregs の OAuth 接続を承認します。
- 会話でツールメニューを開き、Dregs コネクターをオンにします。
ChatGPT と Codex を Dregs に接続する
Web 版の ChatGPT は、Developer mode(Settings → Security and login)で作成したプラグインを通じて接続します。Plugins を開き、URL https://dregs.com/mcp で接続を追加します。その後、ツールメニューから新しい会話に追加し、OAuth 接続を承認します。
ChatGPT デスクトップアプリ内の Codex、Codex CLI、Codex IDE 拡張機能は、1つの設定を共有します。
codex mcp add dregs --url https://dregs.com/mcp
codex mcp login dregs
または、~/.codex/config.toml で MCP トークンを使用します。
[mcp_servers.dregs]
url = "https://dregs.com/mcp"
bearer_token_env_var = "DREGS_MCP_TOKEN"
Cursor を Dregs に接続する
または、プロジェクト内の .cursor/mcp.json(すべてのプロジェクトで使用する場合は ~/.cursor/mcp.json)に追加し、Cursor が初めて接続するときに OAuth 接続を承認します。
{
"mcpServers": {
"dregs": {
"url": "https://dregs.com/mcp"
}
}
}
代わりに MCP トークンを使用するには、"headers": { "Authorization": "Bearer ${env:DREGS_MCP_TOKEN}" } を追加し、Cursor の起動前に環境変数として DREGS_MCP_TOKEN を設定します。
VS Code を Dregs に接続する
または、コマンドパレットから MCP: Add Server を実行するか、.vscode/mcp.json に追加します。
{
"servers": {
"dregs": {
"type": "http",
"url": "https://dregs.com/mcp"
}
}
}
MCP トークンを使用するには、"password": true を指定した promptString 入力を宣言し、それを Authorization
ヘッダーで参照します。マニュアルに完全な例があります。
その他の MCP クライアントを Dregs に接続する
Streamable HTTP 経由のリモートサーバーに対応するクライアントであれば、同じ方法で接続できます。
ローカル(stdio)サーバーのみに対応するクライアントでは、通常は mcp-remote ブリッジが機能します。トークンを使わず OAuth フローを実行するには、
--header 引数を省略します。
{
"mcpServers": {
"dregs": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://dregs.com/mcp", "--header", "Authorization: Bearer YOUR_TOKEN"]
}
}
}
エージェントが Dregs でできること
サーバーは、Dregs ダッシュボードの調査およびルール調整に関する機能を公開します。クライアントは接続時に 最新のツール一覧を取得するため、この表は機能の概要であり、正式な情報源ではありません。
| グループ | ツール |
|---|---|
| アカウントとダッシュボード | get_account_summary, dashboard_stats, dashboard_score_distribution, dashboard_rule_activity, get_documentation |
| ID とイベント | list_identities, get_identity, get_identity_analysis, get_identity_history, get_identity_links, search_events, analyze_identity, set_identity_disregarded |
| グループ | list_groups, get_group |
| デバイス | list_devices, get_device |
| エスカレーション | list_escalations, get_escalation, escalation_summary, update_escalation_status |
| エスカレーションルール | list_escalation_rules, get_escalation_rule, preview_escalation_rule, create_escalation_rule, update_escalation_rule, delete_escalation_rule |
| バッジルール | list_badge_rules, get_badge_rule, create_badge_rule, update_badge_rule, delete_badge_rule |
| 通知チャンネル | list_channels, get_channel, list_channel_deliveries, test_channel |
| データセットとマッピング | list_datasets, list_dataset_entries, add_dataset_entry, remove_dataset_entry, list_mappings, set_mapping, delete_mapping |
読み取りはすべてのチームメンバーが利用できます。書き込み権限はダッシュボードのロールに従います。ルールの作成、変更、削除、 ID の対象外設定、再スコアリング、チャンネルのテスト、データセットやマッピングの編集には、管理者ロールが必要です。 意図的に人間に任せている操作もあります。エージェントは通知チャンネルやそのシークレットを作成・編集したり、 チーム、認証情報、請求を管理したり、ID やイベントを削除したり、Dregs のスコアリング方法を変更したりすることはできません。 調査し、提案し、引き継ぎます。
各ツールには MCP アノテーション(readOnlyHint、destructiveHint、idempotentHint、openWorldHint)が付与されているため、
これらを尊重するクライアントでは、書き込みや削除の前に確認を求めることができます。
サーバー SDK
Dregs にデータを取り込むことと、エージェントを接続することは別の作業であり、5 つのサーバー言語それぞれに公式 SDK があります。イベントの送信、スコア付きの ID または詳細な分析結果の取得、再スコアのリクエスト、Webhook 署名の検証に対応しており、ステータスごとの型付きエラーと、バックオフを伴うリトライ機能が組み込まれています。HTTP クライアントを自分で作成する前に SDK をご利用ください。プラグインの setup-events スキルでも SDK を使用しています。
| 言語 | パッケージ | インストール | 最低要件 | ソース |
|---|---|---|---|---|
| Python | PyPI の dregs | pip install dregs または uv add dregs | Python 3.10 | dregs-sdk-python |
| TypeScript | npm の @dregs/sdk | npm install @dregs/sdk | Node 20 | dregs-sdk-typescript |
| Java | Maven Central の com.dregs:dregs-sdk | Gradle または Maven の座標を追加 | Java 17 | dregs-sdk-java |
| Ruby | RubyGems の dregs | bundle add dregs | Ruby 3.1 | dregs-sdk-ruby |
| PHP | Packagist の dregs/dregs-sdk | composer require dregs/dregs-sdk | PHP 8.2 | dregs-sdk-php |
SDK はサーバーサイド専用で、認証情報のシークレットキー(sk_…)をベアラートークンとして使用します。ブラウザーでのトラッキングには、引き続き公開キー(pk_…)を使う dregs.js スクリプトを使用します。npm の dregs パッケージはブラウザースクリプトであり、SDK ではありません。サーバー SDK は @dregs/sdk です。
AI による不正利用レビューの安全対策
- データを書き込むのは、スコアリング対象の人です。 ID 属性、表示名、イベントペイロードはユーザー入力であり、悪意のあるユーザーがエージェントに向けたテキストをこれらに仕込むことがあります。サーバーは、返す内容をすべて指示ではなくデータとして扱うようエージェントに指示しています。エージェントの結論を読む際も、この点に留意してください。
- エージェントはあなたのアカウント内で操作します。 ルールの変更や ID の除外は、チーム全体のスコアリングとエスカレーションに影響します。プレビューを依頼し(
preview_escalation_ruleは、ルールを適用した場合に今日何件の ID が対象になるかを報告します)、変更案を承認する前に確認してください。 - アクセス範囲を限定してください。 エージェントまたはマシンごとにトークンを 1 つ使用し、分かりやすい名前を付け、不要になったものは無効化してください。Settings → AI Agents で OAuth 接続を確認してください。
サポート
- セットアップに関するサポートと質問:[email protected]
- セキュリティ上の問題:SECURITY.md をご覧ください
- このリポジトリの内容(README、プラグイン、ディレクトリのメタデータ)に関する問題:こちらで issue を作成してください
このリポジトリの内容
| パス | 用途 |
|---|---|
server.json | 公式 MCP Registry に登録された Dregs のエントリー |
glama.json | Glama の掲載情報に関するメンテナーのメタデータ |
chatgpt-app-submission.json | ChatGPT プラグインディレクトリへの申請に使用するツールのアノテーション、根拠、テストケース |
.claude-plugin/、.mcp.json、skills/ | Claude Code プラグインとマーケットプレイスのマニフェスト |
.github/workflows/ | プッシュごとの検証と、リリース時のレジストリへの公開 |
新しいサーフェスバージョンのリリース
公開後、ツールサーフェスはパブリック API になります。変更時は、server.json、.claude-plugin/plugin.json、.claude-plugin/marketplace.json の version を同時に更新し、上記のツール表と、ツールを追加または名前変更した場合はスキルも更新してください。リリースに vX.Y.Z のタグを付け、GitHub リリースを公開します。publish-registry ワークフローは、リリース時に server.json を MCP Registry にプッシュします。
ライセンス
このリポジトリの内容は、MIT License の下で公開されています。Dregs サービス自体には、Dregs の利用規約が適用されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。