MCPcopy Create free account
hub / github.com/agent0ai/agent-zero / get_project_instance

Method get_project_instance

helpers/mcp_handler.py:780–802  ·  view source on GitHub ↗
(cls, project_name: str | None, *, force: bool = False)

Source from the content-addressed store, hash-verified

778
779 @classmethod
780 def get_project_instance(cls, project_name: str | None, *, force: bool = False) -> "MCPConfig":
781 project_key = str(project_name or "").strip()
782 if not project_key:
783 return cls.get_instance()
784
785 from helpers import projects
786 project_key = projects.validate_project_name(project_key)
787
788 global_config = settings.get_settings().get(
789 "mcp_servers", DEFAULT_MCP_SERVERS_CONFIG
790 )
791 project_config = projects.load_project_mcp_servers(project_key)
792 servers_data, cache_key = cls.merge_config_strings(global_config, project_config)
793
794 with cls.__lock:
795 cached = cls.__project_instances.get(project_key)
796 if cached and cached[0] == cache_key and not force:
797 return cached[1]
798
799 instance = cls(servers_list=servers_data, config_scope=f"project:{project_key}")
800 with cls.__lock:
801 cls.__project_instances[project_key] = (cache_key, instance)
802 return instance
803
804 @classmethod
805 def refresh_project(cls, project_name: str) -> "MCPConfig":

Callers 5

refresh_projectMethod · 0.80
get_for_agentMethod · 0.80
processMethod · 0.80
processMethod · 0.80
processMethod · 0.80

Calls 3

merge_config_stringsMethod · 0.80
get_instanceMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected