pub enum ConsentState {
Allow,
Deny,
Ask,
}Expand description
Stable since 0.63.0
MCP consent state.
Two persisted states (Allow / Deny) survive across sessions in
mcp-consent.json. The transient Ask variant is never persisted: it
is the in-memory default for unknown servers at the spawn gate and is
resolved to Allow/Deny (via oxicode mcp trust/untrust) before
storage. The per-tool consent path (crate::mcp::consent::ConsentManager::check)
keeps Allow as its default so the tool-call gate at
direct_tool.rs (!= Deny) is unaffected.
Variants§
Allow
Persisted: always allow.
Deny
Persisted: always deny.
Ask
Transient (never persisted): unknown at the spawn gate — resolve
via ConsentManager::check_spawn_consent. Serializes as "ask"
for forward compatibility but ConsentManager::decide never
stores it.
Trait Implementations§
Source§impl Clone for ConsentState
impl Clone for ConsentState
Source§fn clone(&self) -> ConsentState
fn clone(&self) -> ConsentState
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ConsentState
impl Debug for ConsentState
Source§impl Default for ConsentState
impl Default for ConsentState
Source§fn default() -> ConsentState
fn default() -> ConsentState
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ConsentState
impl<'de> Deserialize<'de> for ConsentState
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConsentState, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConsentState, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ConsentState
Source§impl PartialEq for ConsentState
impl PartialEq for ConsentState
Source§impl Serialize for ConsentState
impl Serialize for ConsentState
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for ConsentState
Auto Trait Implementations§
impl Freeze for ConsentState
impl RefUnwindSafe for ConsentState
impl Send for ConsentState
impl Sync for ConsentState
impl Unpin for ConsentState
impl UnsafeUnpin for ConsentState
impl UnwindSafe for ConsentState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.