このページは AI の支援を受けて英語から翻訳されています。内容が異なる場合は英語版が正となります。
Kotlin / JVM
StackQL MCP サーバーを、ライブラリまたは Gradle プラグインとして Kotlin または JVM アプリケーションに組み込みます。クライアントは公式の Kotlin MCP SDK です。
組み込みバイナリは、初回実行時にダウンロードされて sha256 で検証されるか、アプリにベンダリングされます。共通コントラクトを参照してください。
インストール
io.stackql:stackql-mcp ライブラリを追加します:
dependencies {
implementation("io.stackql:stackql-mcp:0.1.0")
}
JDK 17 と Kotlin 2.x が必要です。クライアントは公式の Kotlin MCP SDK のものです。
クイックスタート
import io.stackql.mcp.LaunchArgs
import io.stackql.mcp.Mode
import io.stackql.mcp.StackqlMcp
suspend fun main() {
val server = StackqlMcp.builder()
.mode(Mode.ReadOnly)
.auth(LaunchArgs.authFor("github", "null_auth"))
.start()
server.use {
val tools = server.client.listTools().tools
println("${tools.size} tools available")
}
}
API は、.mode()、.auth()、.start() を備えた StackqlMcp.builder()、Mode 列挙型、LaunchArgs.authFor() で構成されます。
モード
ビルダーのデフォルトは Mode.ReadOnly です。昇格するには、Mode.Safe、Mode.DeleteSafe、Mode.FullAccess のいずれかを指定して .mode() を呼び出します。昇格は明示的にのみ行われます。オプトインしない限り、サーバーはミューテーションツールやライフサイクルツールを有効にしません。
ベンダリング / 組み込み
ライブラリは署名済みバイナリをダウンロードして検証し、作業ディレクトリに関係なく ~/.stackql/mcp-server-bin/ の共有キャッシュに保存します。Gradle プラグインは同じ起動処理をビルドに組み込むため、CI タスクは個別のインストール手順なしで StackQL クエリを実行できます。
デモアプリ
costgate は、コスト予算に基づいてインフラストラクチャのデプロイをゲート制御します。CLI としても Gradle プラグインとしても提供されます。
CLI として使用する場合:
costgate check --intent examples/costgate.yaml --explain
Gradle プラグインとして使用する場合:
plugins {
id("io.stackql.costgate") version "0.1.0"
}
costgate {
intent.set(layout.projectDirectory.file("costgate.yaml"))
explain.set(true)
}