INNER CODE UNIT · Rust

migration_token

modelcontextprotocol/rust-sdk · conformance/src/bin/client.rs:568

async fn migration_token(
    server_url: &str,
    store: &InMemoryCredentialStore,
) -> anyhow::Result<String> {
    let mut manager = AuthorizationManager::new(server_url).await?;
    manager.set_credential_store(store.clone());

    if manager.initialize_from_store().await? {
        return Ok(manager.get_access_token().await?);
    }

    let challenge = initialize_challenge(server_url, conformance_lifecycle()).await?;
    let resolution = manager
        .resolve_metadata_from_challenge(challenge.as_deref())
        .await?;
    manager.set_metadata(resolution.metadata);
    manager
        .register_client("conformance-client", REDIRECT_URI, &[])

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…