Coverage for src/qdrant_loader_mcp_server/mcp/schemas/__init__.py: 100%

30 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-09-08 06:06 +0000

1from typing import Any 

2 

3from .analyze_relationships import get_analyze_relationships_tool_schema 

4from .attachment import get_attachment_search_tool_schema 

5from .cluster_documents import get_cluster_documents_tool_schema 

6from .detect_conflicts import get_detect_conflicts_tool_schema 

7from .expand_cluster import get_expand_cluster_tool_schema 

8from .expand_document import get_expand_document_tool_schema 

9from .find_complementary import get_find_complementary_tool_schema 

10from .find_similar import get_find_similar_tool_schema 

11from .hierarchy import get_hierarchy_search_tool_schema 

12from .search import get_search_tool_schema 

13 

14 

15def get_all_tool_schemas() -> list[dict[str, Any]]: 

16 # Backward-compatibility alias: expose detect_conflicts under legacy name 

17 # 'detect_document_conflicts' in the tools list while the underlying schema 

18 # function uses the canonical 'detect_conflicts' name. 

19 conflicts_schema = get_detect_conflicts_tool_schema() 

20 conflicts_schema_legacy = {**conflicts_schema, "name": "detect_document_conflicts"} 

21 

22 return [ 

23 get_search_tool_schema(), 

24 get_hierarchy_search_tool_schema(), 

25 get_attachment_search_tool_schema(), 

26 get_analyze_relationships_tool_schema(), 

27 get_find_similar_tool_schema(), 

28 conflicts_schema_legacy, 

29 get_find_complementary_tool_schema(), 

30 get_cluster_documents_tool_schema(), 

31 get_expand_document_tool_schema(), 

32 get_expand_cluster_tool_schema(), 

33 ] 

34 

35 

36class MCPSchemas: 

37 """Backward-compatible wrapper exposing static methods for tests/importers.""" 

38 

39 get_search_tool_schema = staticmethod(get_search_tool_schema) 

40 get_hierarchy_search_tool_schema = staticmethod(get_hierarchy_search_tool_schema) 

41 get_attachment_search_tool_schema = staticmethod(get_attachment_search_tool_schema) 

42 get_analyze_relationships_tool_schema = staticmethod( 

43 get_analyze_relationships_tool_schema 

44 ) 

45 get_find_similar_tool_schema = staticmethod(get_find_similar_tool_schema) 

46 get_detect_conflicts_tool_schema = staticmethod(get_detect_conflicts_tool_schema) 

47 get_find_complementary_tool_schema = staticmethod( 

48 get_find_complementary_tool_schema 

49 ) 

50 get_cluster_documents_tool_schema = staticmethod(get_cluster_documents_tool_schema) 

51 get_expand_document_tool_schema = staticmethod(get_expand_document_tool_schema) 

52 get_expand_cluster_tool_schema = staticmethod(get_expand_cluster_tool_schema) 

53 

54 @classmethod 

55 def get_all_tool_schemas(cls) -> list[dict[str, Any]]: 

56 return get_all_tool_schemas() 

57 

58 

59__all__ = [ 

60 "get_search_tool_schema", 

61 "get_hierarchy_search_tool_schema", 

62 "get_attachment_search_tool_schema", 

63 "get_analyze_relationships_tool_schema", 

64 "get_find_similar_tool_schema", 

65 "get_detect_conflicts_tool_schema", 

66 "get_find_complementary_tool_schema", 

67 "get_cluster_documents_tool_schema", 

68 "get_expand_document_tool_schema", 

69 "get_expand_cluster_tool_schema", 

70 "get_all_tool_schemas", 

71 "MCPSchemas", 

72]