tavily_fastmcp.settings¶
Settings for the Tavily FastMCP package.
- Purpose:
Centralize environment-backed configuration for direct Python use, MCP server startup, and test execution.
- Design:
Preserve Tavily’s canonical
TAVILY_API_KEYenvironment variable.Namespace local runtime settings under
TAVILY_FASTMCP_.Cache the validated settings object for ergonomic reuse.
Examples
>>> from tavily_fastmcp.settings import Settings
>>> settings = Settings.model_construct(
... tavily_api_key="dummy",
... transport="stdio",
... )
>>> settings.transport
'stdio'
Classes¶
Runtime settings for |
Functions¶
|
Return the cached package settings. |
Module Contents¶
- class tavily_fastmcp.settings.Settings(_case_sensitive: bool | None = None, _nested_model_default_partial_update: bool | None = None, _env_prefix: str | None = None, _env_prefix_target: pydantic_settings.sources.EnvPrefixTarget | None = None, _env_file: pydantic_settings.sources.DotenvType | None = ENV_FILE_SENTINEL, _env_file_encoding: str | None = None, _env_ignore_empty: bool | None = None, _env_nested_delimiter: str | None = None, _env_nested_max_split: int | None = None, _env_parse_none_str: str | None = None, _env_parse_enums: bool | None = None, _cli_prog_name: str | None = None, _cli_parse_args: bool | list[str] | tuple[str, Ellipsis] | None = None, _cli_settings_source: pydantic_settings.sources.CliSettingsSource[Any] | None = None, _cli_parse_none_str: str | None = None, _cli_hide_none_type: bool | None = None, _cli_avoid_json: bool | None = None, _cli_enforce_required: bool | None = None, _cli_use_class_docs_for_groups: bool | None = None, _cli_exit_on_error: bool | None = None, _cli_prefix: str | None = None, _cli_flag_prefix_char: str | None = None, _cli_implicit_flags: bool | Literal['dual', 'toggle'] | None = None, _cli_ignore_unknown_args: bool | None = None, _cli_kebab_case: bool | Literal['all', 'no_enums'] | None = None, _cli_shortcuts: collections.abc.Mapping[str, str | list[str]] | None = None, _secrets_dir: pydantic_settings.sources.PathType | None = None, _build_sources: tuple[tuple[pydantic_settings.sources.PydanticBaseSettingsSource, Ellipsis], dict[str, Any]] | None = None, **values: Any)[source]¶
Bases:
pydantic_settings.BaseSettingsRuntime settings for
tavily_fastmcp.- Parameters:
tavily_api_key – Tavily API key read from
TAVILY_API_KEY.transport – MCP transport to run when using the CLI.
host – Hostname for streamable HTTP or SSE style transports.
port – TCP port for HTTP-based transports.
log_level – Logging verbosity.
default_search_topic – Default Tavily topic.
default_search_depth – Default Tavily search depth.
enable_live_tests – Whether live integration tests are enabled.
- Returns:
A validated settings object.
- Raises:
ValueError – If one or more settings values are invalid.
Examples
>>> settings = Settings.model_construct( ... tavily_api_key="dummy", ... transport="stdio", ... ) >>> settings.transport 'stdio'
- tavily_fastmcp.settings.get_settings() Settings[source]¶
Return the cached package settings.
- Returns:
The cached validated settings object.
- Raises:
ValueError – If required environment variables are missing.
Examples
>>> from tavily_fastmcp.settings import get_settings >>> callable(get_settings) True