MCPcopy Create free account
hub / github.com/IBM/mcp-cli / update_custom_provider

Method update_custom_provider

src/mcp_cli/utils/preferences.py:664–699  ·  view source on GitHub ↗

Update an existing custom provider. Args: name: Provider name to update api_base: New API base URL (optional) default_model: New default model (optional) models: New list of models (optional) env_var_name: New environment variable

(
        self,
        name: str,
        api_base: str | None = None,
        default_model: str | None = None,
        models: list[str] | None = None,
        env_var_name: str | None = None,
    )

Source from the content-addressed store, hash-verified

662 return name in self.preferences.provider.custom_providers
663
664 def update_custom_provider(
665 self,
666 name: str,
667 api_base: str | None = None,
668 default_model: str | None = None,
669 models: list[str] | None = None,
670 env_var_name: str | None = None,
671 ) -> bool:
672 """Update an existing custom provider.
673
674 Args:
675 name: Provider name to update
676 api_base: New API base URL (optional)
677 default_model: New default model (optional)
678 models: New list of models (optional)
679 env_var_name: New environment variable name (optional)
680
681 Returns:
682 True if provider was updated, False if not found
683 """
684 if name not in self.preferences.provider.custom_providers:
685 return False
686
687 provider_data = self.preferences.provider.custom_providers[name]
688
689 if api_base is not None:
690 provider_data["api_base"] = api_base
691 if default_model is not None:
692 provider_data["default_model"] = default_model
693 if models is not None:
694 provider_data["models"] = models
695 if env_var_name is not None:
696 provider_data["env_var_name"] = env_var_name
697
698 self.save_preferences()
699 return True
700
701 def get_custom_provider_api_key(self, name: str) -> str | None:
702 """Get the API key for a custom provider from environment variables.

Calls 1

save_preferencesMethod · 0.95