use crate::credential::CredentialError;
#[derive(Debug, thiserror::Error)]
pub enum ConnectorGrantError {
#[error(
"MCP server '{server}': connector uses the authorization_code grant, not a machine grant"
)]
NotMachine { server: String },
#[error("MCP server '{server}': connector {field} is not configured")]
MissingField { server: String, field: &'static str },
#[error("MCP server '{server}': connector secret `{secret}` is not configured")]
MissingSecret { server: String, secret: String },
#[error("secrets are unavailable: {0}")]
Secrets(#[source] Box<dyn std::error::Error + Send + Sync>),
#[error(transparent)]
Credential(CredentialError),
}