aethis-mcp について
aethis-mcpは、MCPクライアントをAethisの決定エンジンに接続し、ルールセットや資格を決定論的に評価します。ルールの作成とテストにはプライベートベータのツールも用意されています。
主な機能
- 01ルールセットの決定論的な評価
- 02スキーマの確認と決定の説明
- 03次の質問への誘導
- 04ルールマップと決定トレースの表示
- 05プライベートベータでのルールセット作成とテスト
活用シーン
- 01公開ルールセットに基づく資格確認
- 02質問の誘導による未回答項目の収集
- 03決定の可否に至った理由の追跡
- 04ベータアクセスでのルールセット構築と改善
MCP 対応
MCPクライアントにAethisの決定、検索、プライベートベータの作成ツールとプロンプトを提供します。公開の決定ツールはキー不要ですが、作成機能とテナント単位の操作にはアクセス権と認証情報が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y aethis-mcpAETHIS_API_KEYシークレットAPI key for rule authoring tools (create/generate/publish). Decision tools (decide/schema/explain on public rulesets) work without a key. Get one via 'aethis login' in aethis-cli.AETHIS_BASE_URLAPI base URL. Defaults to https://api.aethis.ai — override for self-hosted or staging.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
35掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| ruleset_id | string | はい | 公開済みルールセットの ID |
詳細
aethis-mcp
Aethis の意思決定エンジン向け MCP サーバーです。法律、ポリシー、契約、規制を決定論的なロジックにコンパイルします。同じ入力には毎回同じ答えを返し、完全な監査証跡も保持します。
インストール · スキル · クイックスタート · ツール · セットアップ · 作成 · DSL · トラブルシューティング
インストール
作成機能はプライベートベータ版です。 意思決定ツール(
aethis_decide、aethis_schema、aethis_explain、aethis_next_question)は公開されており、キーは不要です。作成ツール(ルール生成、テストの改善、公開)を利用するには招待が必要です。aethis.ai/developer-access からアクセスをリクエストしてください。
おすすめ — aethis-cli を使ったワンコマンドでのインストール:
uv tool install aethis-cli
aethis mcp install --target all
サーバーを claude-code、cursor、claude-desktop、または windsurf に接続します。何度実行しても安全です。変更を反映するには、エディターを再起動してください。aethis account generate でキーを更新した後に、もう一度実行してください。すべてのオプションについては、aethis mcp install --help を参照してください。
手動インストール:
claude mcp add aethis -- npx -y aethis-mcp
Cursor/Claude Desktop/Windsurf の手動設定については、セットアップを参照してください。
AI コーディングエージェントを最初から最後まで導入する場合は、docs.aethis.ai/agents/onboarding をご覧ください。インストール、検証、認証、ワークフローのパターンを 1 ページで確認できます。
スキル
MCP サーバーをインストールした後、aethis-skills を使って再利用可能なエージェントのワークフローを追加できます。
npx skills add Aethis-ai/aethis-skills
このスキルパッケージには、ポリシーからルールセットを作成するワークフロー、テスト・改善・公開の反復手順、トレース付きの意思決定、回帰比較が含まれています。このパッケージ内の MCP ツールを呼び出すものであり、MCP サーバーを置き換えるものではありません。
クイックスタート
aethis_decide({
ruleset_id: "aethis/spacecraft-crew-certification",
field_values: { "space.crew.species": "Vogon" },
include_trace: true
})
{
"decision": "not_eligible",
"fields_provided": 1,
"fields_evaluated": 11,
"trace": {
"species_check": "FAIL — species is 'Vogon' (disqualifying, Section 3)"
}
}
公開ルールセットはキーなしで利用できます。aethis_discover_rulesets({}) または docs.aethis.ai からご覧ください。
エンジンの決定性と精度のベンチマーク:Aethis-ai/confidently-wrong-benchmark。
ツール
6 つのグループに 35 個のツールがあります。
| グループ | アクセス | ツール |
|---|---|---|
| 判定 | 公開 | aethis_decide、aethis_schema、aethis_next_question、aethis_explain、aethis_explain_failure、aethis_graph |
| 探索 — 公開カタログ | 公開 | aethis_discover_rulesets |
| 探索 — 自分のテナント | プライベートベータ | aethis_list_projects、aethis_list_rulesets、aethis_list_rulebooks、aethis_rulebook_schema |
| 作成 — ルールブック | プライベートベータ | aethis_create_rulebook、aethis_update_rulebook |
| 作成 — セクションとフィールド | プライベートベータ | aethis_discover_sections、aethis_refine_sections、aethis_validate_sections、aethis_set_field_spec、aethis_discover_fields、aethis_refine_fields、aethis_validate_fields |
| 作成 — 生成 | プライベートベータ | aethis_create_ruleset、aethis_set_tests、aethis_add_guidance、aethis_list_guidance、aethis_generate_and_test、aethis_generation_status、aethis_cancel_generation、aethis_refine、aethis_publish、aethis_add_domain_guidance、aethis_list_domain_guidance |
| 管理 | プライベートベータ | aethis_archive_project、aethis_archive_ruleset |
aethis_graph は公開ショーケースのルールセット(ruleset_id)には公開で、ルールブック(rulebook_id)にはテナントスコープで利用できます。ルールセットマップのグラフ({nodes, edges, sections, stats}。各ノードの display.sentence/display.routes/display.expr を含む)と、すぐに描画できる mermaid 図の文字列を返します。aethis_decide に include_graph_overlay: true を渡すと、同じグラフに特定の判定における基準ごとのステータス(satisfied/not_satisfied/pending)を付与したもの(レスポンス内の graph_overlay)を取得できます。入力内容に対する「現在地」を示すマップです。
aethis_create_rulebook/aethis_update_rulebook は、ルールブックの基本情報(名前/ドメイン/スラッグ/説明)と robot_hints(対話型エージェント向けの、ビート別の自然言語ガイダンス)を管理します。現在有効なビートは general_context、preamble、session_start、postamble、session_end、stuck です。予約済み(受け付けられますが、まだ動作には反映されません)のビートは persona、conversational_style、section_transition です。outcome_logic によるルールセットの連携は別の、より大規模な機能であり、現時点ではこの 2 つのツールの対象外です。
ワークフロー
適格性を評価する(2 回の呼び出し):
aethis_schema(ruleset_id) → fields needed
aethis_decide(ruleset_id, fields) → eligible / not_eligible / undetermined
基準ごとの評価履歴を取得するには、include_trace: true を渡します。人間が読めるルールの説明を取得するには、include_explanation: true を渡します。
aethis_decide は ruleset_id(単一のルールセット。公開の場合もあります)または rulebook_id(複数のルールセットを組み合わせたルールブック)のいずれかを受け付けます。両方を同時に指定することはできません。ルールブックの判定には常に API キー(AETHIS_API_KEY)が必要です。匿名の呼び出し元には HTTP 401 が返されます。aethis_graph でも、基盤となるマップに対して同じ ruleset_id/rulebook_id の使い分けが適用されます。
対話型の適格性判定(次の質問へのルーティング):
aethis_next_question(ruleset_id, field_values)
残っている質問のうち、最も情報量の多い質問と、残りの質問の optimal_path を返します。回答ごとに再度呼び出してください。エンジンは更新された状態から再計算します。判定が可能になると停止します。
作成(プライベートベータ):作成を参照してください。
プロンプト
| プロンプト | 説明 |
|---|---|
aethis-author | 手順に沿った TDD の作成ワークフロー |
aethis-decide | 判定ワークフローガイド。ruleset_id を任意で指定できます |
セットアップ
判定ツールはキーなしで利用できます。招待制の作成機能を利用するには、aethis login を実行してから、aethis mcp install --target <client> でインストールしてください。インストーラーは保存済みのプロファイルを参照するため、ホストの設定に API キーが含まれることはありません。
Claude Code
# Decision tools only
claude mcp add aethis -- npx -y aethis-mcp
# With authoring access
claude mcp add aethis -e AETHIS_PROFILE=default -e XDG_CONFIG_HOME=/absolute/path/to/config -- npx -y aethis-mcp
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。
{
"mcpServers": {
"aethis": {
"command": "npx",
"args": ["-y", "aethis-mcp"]
}
}
}
オーサリングを行う場合は、"env": { "AETHIS_PROFILE": "default", "XDG_CONFIG_HOME": "/absolute/path/to/config" } を追加します。保存済みのプロファイル名と、aethis/credentials を含む絶対パスのディレクトリを使用してください(通常はホームディレクトリ内の .config です)。
Cursor / Windsurf
~/.cursor/mcp.json または ~/.codeium/windsurf/mcp_config.json に追加します(JSON の形式は同じです)。
キー
AETHIS_PROFILE— 秘密情報ではない保存済みのプロファイル名です。この登録で使用するアカウントとエンドポイントを固定するため、CLI のactive_profileが後から変わっても影響を受けません。XDG_CONFIG_HOME—aethis/credentialsを含む絶対パスの設定ディレクトリです。相対パスや、ホーム/設定ディレクトリの外を指す認証情報のシンボリックリンクは拒否されます。認証情報ファイルにはグループおよびその他のユーザー向けの権限ビットを設定できません(通常は0600です)。AETHIS_API_KEY— プラットフォームキーをプロセス環境変数で意図的に上書きする場合に指定します。インストール時には保存済みプロファイルへの参照を優先し、ホスト設定やコマンド引数に生のキーを記載することは避けてください。ホストはプロセス環境変数を安全に渡す必要があります。シェルの環境変数が引き継がれるとは限りません。AETHIS_ANTHROPIC_KEY_ENV— Aethis のオーサリングツールで使用できる Anthropic キーを保持する環境変数の名前です(例:AETHIS_ANTHROPIC_KEY)。これを設定しない限り、サーバーが環境変数からプロバイダーキーを読み取ることはありません。Anthropic キーを安全に渡すを参照してください。aethis account generateでキーをローテーションし、aethis account revoke <key_id>で取り消します。取り消しを個別に行えるよう、マシンごとにキーを 1 つ発行してください。
認証情報の優先順位と再起動時の動作
MCP は CLI の認証情報ファイルを YAML として解析します。AETHIS_PROFILE を指定すると、その名前のプロファイルが選択されます。指定がない場合は、ファイルの active_profile(または default)が選択されます。プロファイルには API キーと base_url の両方が含まれ、デフォルトのエンドポイントは https://api.aethis.ai です。AETHIS_PROFILE を明示的に指定した場合、AETHIS_API_KEY と AETHIS_BASE_URL でそれぞれの値を意図的に上書きできます。プロファイルセレクターを明示的に指定せずに AETHIS_API_KEY を使う場合、暗黙的にアクティブなプロファイル(暗黙的な匿名設定を含む)は無視され、AETHIS_BASE_URL またはデフォルトのエンドポイントが使用されます。明示的に選択したプロファイルが見つからない、または形式が不正な場合は、環境変数による上書きがあっても、その状態が明確に示されて失敗します。AETHIS_PROFILE=anonymous を明示的に指定した場合は、常に署名なしの状態になります。匿名でセットアップした後は、aethis login を実行し、保存済みのオーサリングプロファイルを参照するよう再インストールしてから、ホストを再起動してください。
保存済みのプロファイルは、古い macOS Keychain エントリより優先されます。プロファイルが設定されておらず、明示的な名前も選択されていない場合、MCP は従来のデフォルト Keychain エントリを使用し、それがない場合は古い形式のフラットな credentials.yaml ファイルを使用できます。aethis/credentials にあるフラット形式の api_key/base_url ファイルも引き続きサポートされます。ログインを待機中の設定済みプロファイルは、他の保存済みキーを借用せず、署名なしの状態を維持します。
サーバーは、認証済みの起動時キーとエンドポイントを、再起動するまで同じ組として保持します。キーなしで起動した場合、認証が必要なツールは、同じエンドポイントで後からログインした認証情報を使用できます。エンドポイントが変更されると、そのことが明確に示されて処理は拒否されます。新しい組を読み込むには、MCP ホストを再起動してください。起動時の標準エラー出力には、認証情報の取得元のみが表示され、キーの値は表示されません。
Anthropic キーを安全に渡す方法
作成ツール(aethis_generate_and_test、aethis_refine、aethis_discover_fields、aethis_refine_fields、aethis_discover_sections、aethis_refine_sections)では、呼び出しごとに Anthropic API キーが必要です。次の 3 つの形式が使用でき、推奨順に記載しています。
Aethis 用にプロバイダーキーを設定した場合に限り、サーバーはそのキーを Aethis に送信します。サーバーが環境から ANTHROPIC_API_KEY(またはその他の変数)を独自に取得することはなく、ツール呼び出しでホストモデルから渡された環境変数名も、設定済みのもの以外は拒否されます。受け付けるのは Anthropic キー(sk-ant-…)のみです。それ以外はローカルで拒否され、送信されません。
-
AETHIS_ANTHROPIC_KEY_ENV(推奨)。MCP サーバーの設定で、キーを専用の環境変数に格納し、その変数名をAETHIS_ANTHROPIC_KEY_ENVに指定します。以降、ツールはその変数を自動的に使用します。生の値がツール呼び出しのペイロードに現れることはないため、ディスク上の MCP ホストのセッショントランスクリプトにも記録されません。// claude_desktop_config.json { "mcpServers": { "aethis": { "command": "npx", "args": ["aethis-mcp"], "env": { "AETHIS_PROFILE": "default", "XDG_CONFIG_HOME": "/absolute/path/to/config", "AETHIS_ANTHROPIC_KEY_ENV": "AETHIS_ANTHROPIC_KEY", "AETHIS_ANTHROPIC_KEY": "sk-ant-..." // never echoed back to the LLM } } } }aethis_generate_and_test({ project_id }) // uses the configured key -
anthropic_key_keychain(macOS)。キーチェーン参照で、"account"(サービスのデフォルトはaethis-anthropic-key)または"service:account"を指定します。security add-generic-password -U -s aethis-anthropic-key -a my-anthropic -w 'sk-ant-...'でキーを一度保存してから、次のように呼び出します。aethis_generate_and_test({ project_id, anthropic_key_keychain: "my-anthropic" }) -
anthropic_key(非推奨)。ツール引数として生のキーを渡します。後方互換性のために受け付けますが、生の値がディスク上のホストのセッショントランスクリプト JSONL にそのまま書き込まれます。この方法でキーを一度でも渡した場合は、より安全な形式を利用する前にキーをローテーションしてください。
作成(プライベートベータ)
作成機能には招待が必要です。アクセスをリクエストしてください。意思決定ツール(上記)は一般公開されています。
3 フェーズのワークフローです。フェーズ 1〜2 は複数セクションのドメイン向けです。単一セクションのルールではこれらを省略し、フェーズ 3 に進んでください。
フェーズ 1 — セクションの検出
aethis_discover_sections({ domain, sources: [{ name, content }, ...] })
aethis_validate_sections({ domain, expected_sections, discovered_sections })
aethis_refine_sections({ domain, feedback, sources })
フェーズ 2 — フィールドの用語集
aethis_set_field_spec({
project_id,
expected_fields: [{ key, sort, enum_values?, notes?: [{ note_text, source?, metadata? }] }, ...]
})
aethis_discover_fields({ project_id }) // auto-validates against the spec if set
aethis_refine_fields({ project_id, feedback })
aethis_validate_fields({ project_id, expected_fields })
フェーズ 3 — 生成、テスト、公開
aethis_create_ruleset({
name, section_id, domain?, source_text,
test_cases: [{ name, field_values, expected_outcome, expectations? }, ...],
contract_version?: 1,
expected_review_bindings?: { field_id: { token: true | false | null } }
})
aethis_generate_and_test({ project_id })
aethis_refine({ project_id, feedback }) // iterate until tests pass
aethis_publish({ project_id }) // refuses if tests fail; returns ruleset_id on success
テストに expectations を含める場合は、contract_version: 1 を設定してください。任意のバインディングカタログは汎用の作成メタデータです。バインディングのアサーションが不要な場合は省略し、レビュー用バインディングが存在しないことをアサートする場合は {} を渡してください。生成を開始する前に、サーバーが保存済みコントラクト全体を確認する必要があります。aethis_create_ruleset はプロジェクトを作成します。既存のプロジェクトにテストを追加したり置き換えたりするものではありません。後から置き換える場合は、完全なバージョン 1 コントラクトを指定して aethis_set_tests を使用し、その後、同じプロジェクトを生成または改良してください。旧式の更新では、保存済みのアサーションを破棄できません。フィールド値マップおよびバインディングマップでは、__proto__ という名前のオブジェクトキーは暗黙に破棄されるのではなく、拒否されます。
生成のポーリングがタイムアウトした場合は、再試行する前に aethis_generation_status({ project_id }) を呼び出してください。telemetry_availability、サーバーが確定する worker_lifecycle、retry_readiness を使用し、準備状態が ready の場合にのみ再試行してください。古いハートビートだけでは、ワーカーが停止した証拠にはなりません。aethis_cancel_generation({ project_id, job_id, confirm_job_id }) は、確認された job_id を提示し、そのアクティブな実行を中止する明示的な承認を得た後にのみ呼び出してください。これはプロジェクトのジョブ所有権を解放しますが、ワーカーの停止は即時ではなく協調的に行われる場合があります。返された詳細を確認してください。これは破壊的な変更であり、API キーによる保護が必要です。応答では、新たに cancelled に遷移した場合と、冪等な結果である already_cancelled を区別します。
ガイダンス
再生成せずに指定箇所へヒントを与え、さらにドメイン全体に適用する原則を設定できます。
aethis_add_guidance({ project_id, guidance_text, process_type })
aethis_list_guidance({ project_id })
aethis_add_domain_guidance({ domain, guidance_text, process_type, notes? })
aethis_list_domain_guidance({ domain })
process_type は rule_generation(デフォルト)または field_extraction です。
失敗するテストの診断
aethis_explain_failure({
ruleset_id, field_values, expected_outcome, test_name
})
// Returns criterion statuses, the failing rule, and a targeted fix hint.
重要
テストは公開のゲートです。
aethis_publishは、テストに失敗するルールセットの公開を拒否します。SME がテストを作成し、LLM がソーステキストとガイダンスからルールを生成します。プラットフォームは、テストを満たさないルールの出荷を拒否します。テストの質が高いほど、収束が速くなります。
重要
作成には Anthropic キーが必要です。
AETHIS_ANTHROPIC_KEY_ENVを設定するか、生のanthropic_key引数ではなくanthropic_key_keychain(macOS キーチェーンの参照)を使用してください。詳しくはAnthropic キーを安全に渡すをご覧ください。キーはリクエストごとに使用され、サーバー側に保存されることはありません。ただし、生の形式では MCP ホストのセッション記録がディスク上に残ります。
重要
DATE フィールドでは ISO 文字列ではなく、整数の序数(
date.toordinal())を使用します。2025-04-13=739354。簡易変換方法:python3 -c "from datetime import date; print(date(2025,4,13).toordinal())。
DSL の機能
フィールドの型
| 型 | 説明 |
|---|---|
Bool | 真/偽 |
Int | 整数(件数、ペンス単位の金額、整数のパーセンテージ) |
Enum | 名前付きの値の閉じた集合 |
Date | 整数の序数 — date.toordinal() |
Duration | 整数の日数 |
String | 自由形式のテキスト — 既知の値の集合には Enum を推奨 |
演算子
| カテゴリ | 演算子 |
|---|---|
| 論理 | AND、OR、NOT、IMPLIES |
| 比較 | =、≠、<、≤、>、≥ |
| 所属 | IN [v1, v2, ...] |
| 算術 | Int/Date の +、−;Int の * |
| 集約 | min(...)、max(...) |
ヘルパー
days_between(date_a, date_b)→Intyears_between(date_a, date_b)→Int— 2 つの日付の間の、完了した満年数(うるう年を考慮)。生年月日フィールドから年齢を求める場合に使用してください。days_between(...) / 365で年齢を算出しないでください。min(a, b, ...)、max(a, b, ...)→Int- 定数の算術演算は作成時に畳み込まれます(
5 * 365→1825)
未対応
- 実行時のフィールド値どうしの除算
- 重み付けスコアリングや確率的な結果
- フィールド値としてのリスト(事前に集計した
Int/Boolを使用) - 3 段階を超える結果(
eligible/not_eligible/undetermined)
トラブルシューティング
| エラー | 原因 | 対処方法 |
|---|---|---|
API key is required | AETHIS_API_KEY が設定されていない(作成時) | シェルプロファイルではなく、MCP クライアントの設定で構成します |
X-Anthropic-Key header is required | Anthropic キーがない | MCP サーバーの設定で AETHIS_ANTHROPIC_KEY_ENV を設定する(推奨)か、ツール呼び出しで anthropic_key_keychain/anthropic_key を渡します。Anthropic キーを安全に渡すをご覧ください。 |
Ruleset not found (404) | ID が誤っているか、アーカイブ済み | aethis_list_projects → aethis_list_rulesets |
Rate limit exceeded (429) | 1 日あたりの上限 | クライアントが自動的に再試行します。上位プランについては [email protected] までお問い合わせください |
Cannot publish: tests failing | テストに失敗している | すべてのテストに合格するまで aethis_refine を実行します |
| 生成のタイムアウト (504) | サーバーがまだ生成中(通常 5~15 分) | 待ってから、aethis_list_rulesets({ project_id }) で確認します。再度実行しないでください |
Expected an integer for <field>, got str | DATE フィールドに ISO 文字列が渡された | date.toordinal() の整数を使用します |
関連項目
- aethis-cli — Python CLI。YAML テストケースを使用したファイルベースの作成
- aethis-examples — 実行可能なルールセット(宇宙船、construction-CAR、消費者信用)とベンチマークシナリオ
- confidently-wrong-benchmark — 論文、225 シナリオのベンチマーク、LegalBench ハーネス
開発
git clone https://github.com/Aethis-ai/aethis-mcp.git
cd aethis-mcp && npm install && npm test && npm run build
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。