文档 · 开始 文档概览 选择正确的阅读入口,并了解当前 pre-alpha 边界。 文档 · 开始 快速开始 安装锁定的工具链,并在本地验证仓库。 文档 · 开始 Core 合约示例 无需 Runtime 依赖,编译首个 Agent、类型化 Tool、Model Stream 与显式协议映射。 文档 · 开始 强类型 Agent 生成并固定类型化 Schema,再绑定第一方 OpenAI 与 Anthropic Adapter。 文档 · 开始 进程内 Agent 无需 HTTP 运行强类型 Agent,同时保留 PostgreSQL 持久化、鉴权、恢复与自持有角色。 文档 · 开始 持久化准入 原子提交已认证 Intent、数据库时间、首 Event 与初始 Checkpoint。 文档 · 开始 可恢复 Run 与 Result 使用持久化 Ingress Key 提交、恢复原 Run,并读取经过验证的公开 Result。 文档 · 理解 编译确定性 Graph 构建 Schema-pinned Graph,验证拓扑,并冻结 Canonical Digest。 文档 · 理解 子图与循环 组合共享状态子图、有界循环与能够在中断后恢复的显式返回路径。 文档 · 理解 Skill 组合 在能力包、共享状态子图、持久子 Run 与受保护 MCP Skill 之间选择,不创建第二套 Runtime。 文档 · 理解 持久执行模型 理解 Journal、Checkpoint、Lease、Fence 与恢复证据如何协同。 文档 · 理解 可恢复 Graph Runtime 注册精确可执行代码、重放非初始状态,并在一个 Fence 下驱动确定性有界 Sibling Batch。 文档 · 理解 可恢复 Agent Loop 提交 Lifecycle Handoff,并执行一个 Tenant-scoped 可恢复调度 Quantum。 文档 · 理解 可恢复调用执行 通过持久化 Start、分阶段有序 Tool Coordination、Streaming 校验与 No-dispatch Terminal Recovery 执行精确 Model/Tool Attempt。 文档 · 理解 Provider-native Agent 编译并运维支持有界 Output Repair、有序 Parallel Read-only Tool 与 Write Barrier 的可恢复多轮 Graph,并固定 Policy、Accounting 与 Cancellation Evidence。 文档 · 集成 本地 Rust Tool 生成 Digest-pinned Schema、注册强类型本地代码,并保留持久执行边界。 文档 · 集成 AgentService v1 通过带版本的嵌入式边界授权并暴露精确版本的可恢复 Agent。 文档 · 集成 Agent HTTP v1 通过经过认证、有资源上限的 JSON HTTP 接口提交、找回、读取与取消 Agent。 文档 · 集成 通用 MCP Tool Client 通过 JSON/SSE、OAuth、Custom Header 与受控 MRTR 发现和调用有界 Stateless MCP 2026-07-28 Tool。 文档 · 集成 MCP OAuth Client 将一个 MCP Resource 绑定到 Challenge-driven Discovery、PKCE、Issuer 校验、持久化 Credential 与有界 Replay。 文档 · 集成 MCP Remote Tool 固定 Identity、Schema、可恢复 Dispatch 与 Reconciliation,绑定严格 Stateless MCP 2026-07-28 Tool。 文档 · 集成 MCP Server Profile 在严格 Stateless 生产边界后暴露有界 Tools、Resources、Prompts、Completion 与 MRTR。 文档 · 集成 MCP Skills 通过不可变 Manifest、Origin-scoped 审批与校验后延迟读取发布并激活 Final SEP-2640 静态 Skill。 文档 · 集成 MCP Conformance 状态 查看冻结的官方 Runner 清单、已实现证据与当前 MCP 声明的精确边界。 文档 · 集成 A2A 1.0 Client 发现并固定一个 Agent,调用全部 11 个 Operation,并只依据已背书的远端保证对持久化 Unknown Send 执行 Reconciliation。 文档 · 集成 Artifact 持久化存储 将 Terminal A2A Part 物化为不可变 PostgreSQL Metadata 与私有、经过完整性校验的 Object Bytes。 文档 · 集成 A2A 1.0 Server 通过 Identity-first Policy 与可恢复 Service 合约暴露有界 HTTP+JSON 和 JSON-RPC/SSE。 文档 · 集成 A2A Conformance 状态 查看冻结的官方 TCK、已审计 Harness Patch、精确结果与 Server-only 声明边界。 文档 · 运维 公平调度 配置 Replica-safe 加权 Tenant Selection、精确 Starvation Bound、Rollout 与 Retention。 文档 · 运维 PostgreSQL Provider 配置、迁移、校验并测试已实现的持久化 Provider。 文档 · 运维 宿主验证 记录有界容量、恢复与故障证据,避免把 CI 结果误写成生产 SLO。 文档 · 项目 版本与发布 精确固定公共 Alpha,并理解兼容性、MSRV、持久化数据与发布门禁。 文档 · 项目 实现状态 区分已经实现、正在开发和明确尚未支持的能力。 首页 架构图 查看已经实现、正在开发和规划中的边界。 首页 当前实现 已经实现的切片与明确缺口。 首页 路线图 从合约走向可验证 v1 的开发顺序。 仓库 源代码 StateKnot/StateKnot on GitHub. 仓库 RFCs 架构与持久执行合约草案。 仓库 安全策略 私密漏洞报告与支持策略。
↑↓ 选择 ↵ 打开 39 项结果

Pre-alpha 文档

授权一个 MCP Resource,不扩大信任边界。

配置 StateKnot Challenge-driven MCP OAuth Client、持久化 Credential Store、精确 Callback 边界、有界 Replay 与冻结官方证据。

将 OAuth 绑定到一个精确 Resource

生产 MCP Resource 强制 HTTPS。Host 提供可信 User Agent,以及加密、 Tenant-scoped Credential Store 与带 Expiry 的 PKCE State Store。In-memory Constructor 只适用于明确不承诺跨重启恢复的进程。

Rust · OAuth 凭据持久化 Binding
use std::sync::Arc;

use stateknot_integrations::{
    McpClient, McpClientIdentity, McpClientOptions,
    McpOAuthAuthorization, McpOAuthOptions, McpOAuthRegistration,
    McpOAuthResource, ProviderEndpoint,
};

let endpoint = ProviderEndpoint::https("https://mcp.example.com/mcp/")?;
let resource = McpOAuthResource::from_endpoint(&endpoint)?;
let registration = McpOAuthRegistration::client_metadata_document(
    "https://agent.example.com/oauth/client-metadata.json",
)?;
let policy = McpOAuthOptions::native(
    "http://127.0.0.1:49152/callback",
    "Inventory Agent",
    registration,
)?;
let authorization = Arc::new(
    McpOAuthAuthorization::new_with_stores(
        resource,
        policy,
        user_agent,
        encrypted_credential_store,
        expiring_pkce_state_store,
    )
    .await?,
);

let client = McpClient::connect(
    endpoint,
    McpClientIdentity::new("inventory-agent", "1.0.0")?,
    authorization,
    McpClientOptions::default().with_maximum_authorization_retries(1)?,
)
.await?;

Credential 由外部 Provision 时使用 Pre-registration;发布 HTTPS Client Metadata Document 时使用 CIMD;只有部署 Policy 明确接受时才启用 DCR Fallback。

让 Challenge Recovery 保持有限

  1. 不存在可用 Credential 时,Client 先匿名发送。
  2. 有界 401/403 Bearer Challenge 驱动 Protected-resource 与 Authorization-server Discovery。
  3. StateKnot 恢复 Issuer-bound Credential,或按照 Policy 通过 Pre-registration、CIMD、DCR 启动 PKCE Flow。
  4. Host 打开已校验 Authorization URL,并从精确注册 Origin 与 Path 返回完整 Callback URL。
  5. Token Exchange 成功后,用新 JSON-RPC ID 重放一次 MCP Method。Timeout 与 Ambiguous Dispatch 永不重放。

403 只有携带 Scope 的显式 insufficient_scope Challenge 才能触发 Step-up。Scope Upgrade 与 Transport Replay 分别拥有独立硬上限。Issuer 变化会 强制启动新的 Issuer-bound Registration Flow。

由 Host 持有 User-agent 边界

Native Host 在打开 Browser 前占用 Loopback Listener,只接受配置的 Address、 Port 与 Path,返回一次完整 Callback URL 后关闭 Listener。StateKnot 强制 5 分钟 默认 Handoff Timeout、精确 Callback Binding、PKCE、State、RFC 8707 Resource Indicator 与 RFC 9207 Issuer Check。URL、Code、Verifier、Client Identity 与 Token 绝不能进入 Log。

把 Store 当作安全基础设施

  • 加密保存 Access Token、Refresh Token、Client Secret 与 PKCE State,并具备 Key Rotation Procedure。
  • 按 Tenant、Principal、MCP Resource 与 Authorization-server Issuer 隔离记录。
  • State 必须一次性且会过期;Credential Replacement 必须原子执行。
  • Discovery、Registration、Refresh、Migration、Scope Upgrade、Cancellation 与 Failure 只产生脱敏 Audit Fact。

复现精确声明

Shell · 本地 Contract 与冻结官方门禁
cargo test -p stateknot-integrations --test mcp_client_contract --locked
bash conformance/mcp-client/run-2026-07-28.sh

冻结门禁通过全部 32 个计分 Client 场景,其中包括全部 25 个 OAuth 场景:371 项计分 Assertion Success、0 Failure。7 个官方明确不计分的 Extension 单独报告, 不进入支持声明。请阅读完整证据边界与完整运维合约。