pub struct WebFetchConfig {
pub enabled: bool,
pub allowed_domains: Vec<String>,
pub blocked_domains: Vec<String>,
pub allowed_private_hosts: Vec<String>,
pub max_response_size: usize,
pub timeout_secs: u64,
pub firecrawl: FirecrawlConfig,
}Expand description
Web fetch tool configuration ([web_fetch] section).
Fetches web pages and converts HTML to plain text for LLM consumption.
Domain filtering: allowed_domains controls which hosts are reachable (use ["*"]
for all public hosts). blocked_domains takes priority over allowed_domains.
If allowed_domains is empty, all requests are rejected (deny-by-default).
Fields§
§enabled: boolEnable web_fetch tool for fetching web page content
allowed_domains: Vec<String>Allowed domains for web fetch (exact or subdomain match; ["*"] = all public hosts)
blocked_domains: Vec<String>Blocked domains (exact or subdomain match; always takes priority over allowed_domains)
allowed_private_hosts: Vec<String>Private/internal hosts allowed to bypass SSRF protection (e.g. ["192.168.1.10", "internal.local"])
max_response_size: usizeMaximum response size in bytes (default: 500KB, plain text is much smaller than raw HTML)
timeout_secs: u64Request timeout in seconds (default: 30)
firecrawl: FirecrawlConfigFirecrawl fallback configuration ([web_fetch.firecrawl])
Trait Implementations§
Source§impl Clone for WebFetchConfig
impl Clone for WebFetchConfig
Source§fn clone(&self) -> WebFetchConfig
fn clone(&self) -> WebFetchConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WebFetchConfig
impl Debug for WebFetchConfig
Source§impl Default for WebFetchConfig
impl Default for WebFetchConfig
Source§impl<'de> Deserialize<'de> for WebFetchConfig
impl<'de> Deserialize<'de> for WebFetchConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for WebFetchConfig
impl JsonSchema for WebFetchConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for WebFetchConfig
impl RefUnwindSafe for WebFetchConfig
impl Send for WebFetchConfig
impl Sync for WebFetchConfig
impl Unpin for WebFetchConfig
impl UnsafeUnpin for WebFetchConfig
impl UnwindSafe for WebFetchConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more