tooluniverse 1.0.10__py3-none-any.whl → 1.0.11.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of tooluniverse might be problematic. Click here for more details.

Files changed (151) hide show
  1. tooluniverse/__init__.py +57 -1
  2. tooluniverse/blast_tool.py +132 -0
  3. tooluniverse/boltz_tool.py +2 -2
  4. tooluniverse/cbioportal_tool.py +42 -0
  5. tooluniverse/clinvar_tool.py +268 -74
  6. tooluniverse/compose_scripts/tool_discover.py +1941 -443
  7. tooluniverse/data/agentic_tools.json +0 -370
  8. tooluniverse/data/alphafold_tools.json +6 -6
  9. tooluniverse/data/blast_tools.json +112 -0
  10. tooluniverse/data/cbioportal_tools.json +87 -0
  11. tooluniverse/data/clinvar_tools.json +235 -0
  12. tooluniverse/data/compose_tools.json +0 -89
  13. tooluniverse/data/dbsnp_tools.json +275 -0
  14. tooluniverse/data/emdb_tools.json +61 -0
  15. tooluniverse/data/ensembl_tools.json +259 -0
  16. tooluniverse/data/file_download_tools.json +275 -0
  17. tooluniverse/data/geo_tools.json +200 -48
  18. tooluniverse/data/gnomad_tools.json +109 -0
  19. tooluniverse/data/gtopdb_tools.json +68 -0
  20. tooluniverse/data/gwas_tools.json +32 -0
  21. tooluniverse/data/interpro_tools.json +199 -0
  22. tooluniverse/data/jaspar_tools.json +70 -0
  23. tooluniverse/data/kegg_tools.json +356 -0
  24. tooluniverse/data/mpd_tools.json +87 -0
  25. tooluniverse/data/ols_tools.json +314 -0
  26. tooluniverse/data/package_discovery_tools.json +64 -0
  27. tooluniverse/data/packages/categorized_tools.txt +0 -1
  28. tooluniverse/data/packages/machine_learning_tools.json +0 -47
  29. tooluniverse/data/paleobiology_tools.json +91 -0
  30. tooluniverse/data/pride_tools.json +62 -0
  31. tooluniverse/data/pypi_package_inspector_tools.json +158 -0
  32. tooluniverse/data/python_executor_tools.json +341 -0
  33. tooluniverse/data/regulomedb_tools.json +50 -0
  34. tooluniverse/data/remap_tools.json +89 -0
  35. tooluniverse/data/screen_tools.json +89 -0
  36. tooluniverse/data/tool_discovery_agents.json +428 -0
  37. tooluniverse/data/tool_discovery_agents.json.backup +1343 -0
  38. tooluniverse/data/uniprot_tools.json +77 -0
  39. tooluniverse/data/web_search_tools.json +250 -0
  40. tooluniverse/data/worms_tools.json +55 -0
  41. tooluniverse/dbsnp_tool.py +196 -58
  42. tooluniverse/default_config.py +35 -2
  43. tooluniverse/emdb_tool.py +30 -0
  44. tooluniverse/ensembl_tool.py +140 -47
  45. tooluniverse/execute_function.py +78 -14
  46. tooluniverse/file_download_tool.py +269 -0
  47. tooluniverse/geo_tool.py +81 -28
  48. tooluniverse/gnomad_tool.py +100 -52
  49. tooluniverse/gtopdb_tool.py +41 -0
  50. tooluniverse/interpro_tool.py +72 -0
  51. tooluniverse/jaspar_tool.py +30 -0
  52. tooluniverse/kegg_tool.py +230 -0
  53. tooluniverse/mpd_tool.py +42 -0
  54. tooluniverse/ncbi_eutils_tool.py +96 -0
  55. tooluniverse/ols_tool.py +435 -0
  56. tooluniverse/package_discovery_tool.py +217 -0
  57. tooluniverse/paleobiology_tool.py +30 -0
  58. tooluniverse/pride_tool.py +30 -0
  59. tooluniverse/pypi_package_inspector_tool.py +593 -0
  60. tooluniverse/python_executor_tool.py +711 -0
  61. tooluniverse/regulomedb_tool.py +30 -0
  62. tooluniverse/remap_tool.py +44 -0
  63. tooluniverse/remote/depmap_24q2/depmap_24q2_mcp_tool.py +1 -1
  64. tooluniverse/screen_tool.py +44 -0
  65. tooluniverse/smcp.py +10 -2
  66. tooluniverse/smcp_server.py +3 -3
  67. tooluniverse/tool_finder_embedding.py +3 -1
  68. tooluniverse/tool_finder_keyword.py +3 -1
  69. tooluniverse/tool_finder_llm.py +6 -2
  70. tooluniverse/tools/{UCSC_get_genes_by_region.py → BLAST_nucleotide_search.py} +22 -26
  71. tooluniverse/tools/BLAST_protein_search.py +63 -0
  72. tooluniverse/tools/ClinVar_search_variants.py +26 -15
  73. tooluniverse/tools/CodeQualityAnalyzer.py +3 -3
  74. tooluniverse/tools/EMDB_get_structure.py +46 -0
  75. tooluniverse/tools/GtoPdb_get_targets.py +52 -0
  76. tooluniverse/tools/InterPro_get_domain_details.py +46 -0
  77. tooluniverse/tools/InterPro_get_protein_domains.py +49 -0
  78. tooluniverse/tools/InterPro_search_domains.py +52 -0
  79. tooluniverse/tools/JASPAR_get_transcription_factors.py +52 -0
  80. tooluniverse/tools/MPD_get_phenotype_data.py +59 -0
  81. tooluniverse/tools/PRIDE_search_proteomics.py +52 -0
  82. tooluniverse/tools/PackageAnalyzer.py +55 -0
  83. tooluniverse/tools/Paleobiology_get_fossils.py +52 -0
  84. tooluniverse/tools/PyPIPackageInspector.py +59 -0
  85. tooluniverse/tools/ReMap_get_transcription_factor_binding.py +59 -0
  86. tooluniverse/tools/ReferenceInfoAnalyzer.py +55 -0
  87. tooluniverse/tools/RegulomeDB_query_variant.py +46 -0
  88. tooluniverse/tools/SCREEN_get_regulatory_elements.py +59 -0
  89. tooluniverse/tools/{ArgumentDescriptionOptimizer.py → TestResultsAnalyzer.py} +13 -13
  90. tooluniverse/tools/ToolDiscover.py +11 -11
  91. tooluniverse/tools/UniProt_id_mapping.py +63 -0
  92. tooluniverse/tools/UniProt_search.py +63 -0
  93. tooluniverse/tools/UnifiedToolGenerator.py +59 -0
  94. tooluniverse/tools/WoRMS_search_species.py +49 -0
  95. tooluniverse/tools/XMLToolOptimizer.py +55 -0
  96. tooluniverse/tools/__init__.py +119 -29
  97. tooluniverse/tools/alphafold_get_annotations.py +3 -3
  98. tooluniverse/tools/alphafold_get_prediction.py +3 -3
  99. tooluniverse/tools/alphafold_get_summary.py +3 -3
  100. tooluniverse/tools/cBioPortal_get_cancer_studies.py +46 -0
  101. tooluniverse/tools/cBioPortal_get_mutations.py +52 -0
  102. tooluniverse/tools/{gnomAD_query_variant.py → clinvar_get_clinical_significance.py} +8 -11
  103. tooluniverse/tools/clinvar_get_variant_details.py +49 -0
  104. tooluniverse/tools/dbSNP_get_variant_by_rsid.py +7 -7
  105. tooluniverse/tools/dbsnp_get_frequencies.py +46 -0
  106. tooluniverse/tools/dbsnp_search_by_gene.py +52 -0
  107. tooluniverse/tools/download_binary_file.py +66 -0
  108. tooluniverse/tools/download_file.py +71 -0
  109. tooluniverse/tools/download_text_content.py +55 -0
  110. tooluniverse/tools/dynamic_package_discovery.py +59 -0
  111. tooluniverse/tools/ensembl_get_sequence.py +52 -0
  112. tooluniverse/tools/{Ensembl_lookup_gene_by_symbol.py → ensembl_get_variants.py} +11 -11
  113. tooluniverse/tools/ensembl_lookup_gene.py +46 -0
  114. tooluniverse/tools/geo_get_dataset_info.py +46 -0
  115. tooluniverse/tools/geo_get_sample_info.py +46 -0
  116. tooluniverse/tools/geo_search_datasets.py +67 -0
  117. tooluniverse/tools/gnomad_get_gene_constraints.py +49 -0
  118. tooluniverse/tools/kegg_find_genes.py +52 -0
  119. tooluniverse/tools/kegg_get_gene_info.py +46 -0
  120. tooluniverse/tools/kegg_get_pathway_info.py +46 -0
  121. tooluniverse/tools/kegg_list_organisms.py +44 -0
  122. tooluniverse/tools/kegg_search_pathway.py +46 -0
  123. tooluniverse/tools/ols_find_similar_terms.py +63 -0
  124. tooluniverse/tools/{get_hyperopt_info.py → ols_get_ontology_info.py} +13 -10
  125. tooluniverse/tools/ols_get_term_ancestors.py +67 -0
  126. tooluniverse/tools/ols_get_term_children.py +67 -0
  127. tooluniverse/tools/{TestCaseGenerator.py → ols_get_term_info.py} +12 -9
  128. tooluniverse/tools/{CodeOptimizer.py → ols_search_ontologies.py} +22 -14
  129. tooluniverse/tools/ols_search_terms.py +71 -0
  130. tooluniverse/tools/python_code_executor.py +79 -0
  131. tooluniverse/tools/python_script_runner.py +79 -0
  132. tooluniverse/tools/web_api_documentation_search.py +63 -0
  133. tooluniverse/tools/web_search.py +71 -0
  134. tooluniverse/uniprot_tool.py +219 -16
  135. tooluniverse/url_tool.py +18 -0
  136. tooluniverse/utils.py +2 -2
  137. tooluniverse/web_search_tool.py +229 -0
  138. tooluniverse/worms_tool.py +64 -0
  139. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/METADATA +3 -2
  140. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/RECORD +144 -55
  141. tooluniverse/data/genomics_tools.json +0 -174
  142. tooluniverse/tools/ToolDescriptionOptimizer.py +0 -67
  143. tooluniverse/tools/ToolImplementationGenerator.py +0 -67
  144. tooluniverse/tools/ToolOptimizer.py +0 -59
  145. tooluniverse/tools/ToolSpecificationGenerator.py +0 -67
  146. tooluniverse/tools/ToolSpecificationOptimizer.py +0 -63
  147. tooluniverse/ucsc_tool.py +0 -60
  148. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/WHEEL +0 -0
  149. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/entry_points.txt +0 -0
  150. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/licenses/LICENSE +0 -0
  151. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,46 @@
1
+ """
2
+ geo_get_dataset_info
3
+
4
+ Get detailed information about a specific GEO dataset including title, summary, and metadata.
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def geo_get_dataset_info(
12
+ dataset_id: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Get detailed information about a specific GEO dataset including title, summary, and metadata.
20
+
21
+ Parameters
22
+ ----------
23
+ dataset_id : str
24
+ GEO dataset ID (e.g., 'GDS1234', 'GSE12345')
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {"name": "geo_get_dataset_info", "arguments": {"dataset_id": dataset_id}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["geo_get_dataset_info"]
@@ -0,0 +1,46 @@
1
+ """
2
+ geo_get_sample_info
3
+
4
+ Get sample information for a GEO dataset including sample characteristics and experimental condit...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def geo_get_sample_info(
12
+ dataset_id: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Get sample information for a GEO dataset including sample characteristics and experimental condit...
20
+
21
+ Parameters
22
+ ----------
23
+ dataset_id : str
24
+ GEO dataset ID (e.g., 'GDS1234', 'GSE12345')
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {"name": "geo_get_sample_info", "arguments": {"dataset_id": dataset_id}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["geo_get_sample_info"]
@@ -0,0 +1,67 @@
1
+ """
2
+ geo_search_datasets
3
+
4
+ Search GEO datasets by query terms, organism, study type, or platform. Returns dataset IDs and ba...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def geo_search_datasets(
12
+ query: Optional[str] = None,
13
+ organism: Optional[str] = "",
14
+ study_type: Optional[str] = "",
15
+ platform: Optional[str] = "",
16
+ limit: Optional[int] = 50,
17
+ *,
18
+ stream_callback: Optional[Callable[[str], None]] = None,
19
+ use_cache: bool = False,
20
+ validate: bool = True,
21
+ ) -> dict[str, Any]:
22
+ """
23
+ Search GEO datasets by query terms, organism, study type, or platform. Returns dataset IDs and ba...
24
+
25
+ Parameters
26
+ ----------
27
+ query : str
28
+ Search query terms (e.g., 'cancer', 'diabetes', 'microarray')
29
+ organism : str
30
+ Organism name (e.g., 'Homo sapiens', 'Mus musculus')
31
+ study_type : str
32
+ Type of study (e.g., 'Expression profiling by array', 'Expression profiling b...
33
+ platform : str
34
+ Platform used (e.g., 'GPL570', 'GPL96')
35
+ limit : int
36
+ Maximum number of results to return
37
+ stream_callback : Callable, optional
38
+ Callback for streaming output
39
+ use_cache : bool, default False
40
+ Enable caching
41
+ validate : bool, default True
42
+ Validate parameters
43
+
44
+ Returns
45
+ -------
46
+ dict[str, Any]
47
+ """
48
+ # Handle mutable defaults to avoid B006 linting error
49
+
50
+ return get_shared_client().run_one_function(
51
+ {
52
+ "name": "geo_search_datasets",
53
+ "arguments": {
54
+ "query": query,
55
+ "organism": organism,
56
+ "study_type": study_type,
57
+ "platform": platform,
58
+ "limit": limit,
59
+ },
60
+ },
61
+ stream_callback=stream_callback,
62
+ use_cache=use_cache,
63
+ validate=validate,
64
+ )
65
+
66
+
67
+ __all__ = ["geo_search_datasets"]
@@ -0,0 +1,49 @@
1
+ """
2
+ gnomad_get_gene_constraints
3
+
4
+ Get gene constraint metrics from gnomAD. Returns pLI, LOEUF, and other constraint scores for genes.
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def gnomad_get_gene_constraints(
12
+ gene_symbol: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Get gene constraint metrics from gnomAD. Returns pLI, LOEUF, and other constraint scores for genes.
20
+
21
+ Parameters
22
+ ----------
23
+ gene_symbol : str
24
+ Gene symbol (e.g., 'BRCA1', 'TP53')
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {
40
+ "name": "gnomad_get_gene_constraints",
41
+ "arguments": {"gene_symbol": gene_symbol},
42
+ },
43
+ stream_callback=stream_callback,
44
+ use_cache=use_cache,
45
+ validate=validate,
46
+ )
47
+
48
+
49
+ __all__ = ["gnomad_get_gene_constraints"]
@@ -0,0 +1,52 @@
1
+ """
2
+ kegg_find_genes
3
+
4
+ Find genes in KEGG database by keyword. Can search across all organisms or within a specific orga...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def kegg_find_genes(
12
+ keyword: str,
13
+ organism: Optional[str] = "",
14
+ *,
15
+ stream_callback: Optional[Callable[[str], None]] = None,
16
+ use_cache: bool = False,
17
+ validate: bool = True,
18
+ ) -> dict[str, Any]:
19
+ """
20
+ Find genes in KEGG database by keyword. Can search across all organisms or within a specific orga...
21
+
22
+ Parameters
23
+ ----------
24
+ keyword : str
25
+ Search keyword for gene names or descriptions
26
+ organism : str
27
+ Organism code (e.g., 'hsa' for human, 'mmu' for mouse). Optional - searches a...
28
+ stream_callback : Callable, optional
29
+ Callback for streaming output
30
+ use_cache : bool, default False
31
+ Enable caching
32
+ validate : bool, default True
33
+ Validate parameters
34
+
35
+ Returns
36
+ -------
37
+ dict[str, Any]
38
+ """
39
+ # Handle mutable defaults to avoid B006 linting error
40
+
41
+ return get_shared_client().run_one_function(
42
+ {
43
+ "name": "kegg_find_genes",
44
+ "arguments": {"keyword": keyword, "organism": organism},
45
+ },
46
+ stream_callback=stream_callback,
47
+ use_cache=use_cache,
48
+ validate=validate,
49
+ )
50
+
51
+
52
+ __all__ = ["kegg_find_genes"]
@@ -0,0 +1,46 @@
1
+ """
2
+ kegg_get_gene_info
3
+
4
+ Get detailed gene information from KEGG by gene ID. Returns gene data including sequence, functio...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def kegg_get_gene_info(
12
+ gene_id: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Get detailed gene information from KEGG by gene ID. Returns gene data including sequence, functio...
20
+
21
+ Parameters
22
+ ----------
23
+ gene_id : str
24
+ KEGG gene identifier (e.g., 'hsa:348', 'hsa:3480')
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {"name": "kegg_get_gene_info", "arguments": {"gene_id": gene_id}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["kegg_get_gene_info"]
@@ -0,0 +1,46 @@
1
+ """
2
+ kegg_get_pathway_info
3
+
4
+ Get detailed pathway information from KEGG by pathway ID. Returns pathway data including genes, c...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def kegg_get_pathway_info(
12
+ pathway_id: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Get detailed pathway information from KEGG by pathway ID. Returns pathway data including genes, c...
20
+
21
+ Parameters
22
+ ----------
23
+ pathway_id : str
24
+ KEGG pathway identifier (e.g., 'hsa00010', 'path:hsa00010')
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {"name": "kegg_get_pathway_info", "arguments": {"pathway_id": pathway_id}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["kegg_get_pathway_info"]
@@ -0,0 +1,44 @@
1
+ """
2
+ kegg_list_organisms
3
+
4
+ List all available organisms in the KEGG database. Returns organism codes, names, and descriptions.
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def kegg_list_organisms(
12
+ *,
13
+ stream_callback: Optional[Callable[[str], None]] = None,
14
+ use_cache: bool = False,
15
+ validate: bool = True,
16
+ ) -> dict[str, Any]:
17
+ """
18
+ List all available organisms in the KEGG database. Returns organism codes, names, and descriptions.
19
+
20
+ Parameters
21
+ ----------
22
+ No parameters
23
+ stream_callback : Callable, optional
24
+ Callback for streaming output
25
+ use_cache : bool, default False
26
+ Enable caching
27
+ validate : bool, default True
28
+ Validate parameters
29
+
30
+ Returns
31
+ -------
32
+ dict[str, Any]
33
+ """
34
+ # Handle mutable defaults to avoid B006 linting error
35
+
36
+ return get_shared_client().run_one_function(
37
+ {"name": "kegg_list_organisms", "arguments": {}},
38
+ stream_callback=stream_callback,
39
+ use_cache=use_cache,
40
+ validate=validate,
41
+ )
42
+
43
+
44
+ __all__ = ["kegg_list_organisms"]
@@ -0,0 +1,46 @@
1
+ """
2
+ kegg_search_pathway
3
+
4
+ Search KEGG pathways by keyword. Returns pathway IDs and descriptions matching the search term.
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def kegg_search_pathway(
12
+ keyword: str,
13
+ *,
14
+ stream_callback: Optional[Callable[[str], None]] = None,
15
+ use_cache: bool = False,
16
+ validate: bool = True,
17
+ ) -> dict[str, Any]:
18
+ """
19
+ Search KEGG pathways by keyword. Returns pathway IDs and descriptions matching the search term.
20
+
21
+ Parameters
22
+ ----------
23
+ keyword : str
24
+ Search keyword for pathway names or descriptions (e.g., 'diabetes', 'metaboli...
25
+ stream_callback : Callable, optional
26
+ Callback for streaming output
27
+ use_cache : bool, default False
28
+ Enable caching
29
+ validate : bool, default True
30
+ Validate parameters
31
+
32
+ Returns
33
+ -------
34
+ dict[str, Any]
35
+ """
36
+ # Handle mutable defaults to avoid B006 linting error
37
+
38
+ return get_shared_client().run_one_function(
39
+ {"name": "kegg_search_pathway", "arguments": {"keyword": keyword}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["kegg_search_pathway"]
@@ -0,0 +1,63 @@
1
+ """
2
+ ols_find_similar_terms
3
+
4
+ Find similar terms using LLM-based similarity
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def ols_find_similar_terms(
12
+ operation: str,
13
+ term_iri: str,
14
+ ontology: str,
15
+ size: Optional[int] = 10,
16
+ *,
17
+ stream_callback: Optional[Callable[[str], None]] = None,
18
+ use_cache: bool = False,
19
+ validate: bool = True,
20
+ ) -> Any:
21
+ """
22
+ Find similar terms using LLM-based similarity
23
+
24
+ Parameters
25
+ ----------
26
+ operation : str
27
+ The operation to perform (find_similar_terms)
28
+ term_iri : str
29
+ The IRI of the term to find similar terms for
30
+ ontology : str
31
+ The ontology ID
32
+ size : int
33
+ Number of similar terms to return (default: 10)
34
+ stream_callback : Callable, optional
35
+ Callback for streaming output
36
+ use_cache : bool, default False
37
+ Enable caching
38
+ validate : bool, default True
39
+ Validate parameters
40
+
41
+ Returns
42
+ -------
43
+ Any
44
+ """
45
+ # Handle mutable defaults to avoid B006 linting error
46
+
47
+ return get_shared_client().run_one_function(
48
+ {
49
+ "name": "ols_find_similar_terms",
50
+ "arguments": {
51
+ "operation": operation,
52
+ "term_iri": term_iri,
53
+ "ontology": ontology,
54
+ "size": size,
55
+ },
56
+ },
57
+ stream_callback=stream_callback,
58
+ use_cache=use_cache,
59
+ validate=validate,
60
+ )
61
+
62
+
63
+ __all__ = ["ols_find_similar_terms"]
@@ -1,27 +1,30 @@
1
1
  """
2
- get_hyperopt_info
2
+ ols_get_ontology_info
3
3
 
4
- Get comprehensive information about Hyperopt – distributed hyperparameter optimization
4
+ Get detailed information about an ontology
5
5
  """
6
6
 
7
7
  from typing import Any, Optional, Callable
8
8
  from ._shared_client import get_shared_client
9
9
 
10
10
 
11
- def get_hyperopt_info(
12
- include_examples: bool,
11
+ def ols_get_ontology_info(
12
+ operation: str,
13
+ ontology_id: str,
13
14
  *,
14
15
  stream_callback: Optional[Callable[[str], None]] = None,
15
16
  use_cache: bool = False,
16
17
  validate: bool = True,
17
18
  ) -> Any:
18
19
  """
19
- Get comprehensive information about Hyperopt – distributed hyperparameter optimization
20
+ Get detailed information about an ontology
20
21
 
21
22
  Parameters
22
23
  ----------
23
- include_examples : bool
24
- Whether to include usage examples and quick start guide
24
+ operation : str
25
+ The operation to perform (get_ontology_info)
26
+ ontology_id : str
27
+ The ID of the ontology to retrieve
25
28
  stream_callback : Callable, optional
26
29
  Callback for streaming output
27
30
  use_cache : bool, default False
@@ -37,8 +40,8 @@ def get_hyperopt_info(
37
40
 
38
41
  return get_shared_client().run_one_function(
39
42
  {
40
- "name": "get_hyperopt_info",
41
- "arguments": {"include_examples": include_examples},
43
+ "name": "ols_get_ontology_info",
44
+ "arguments": {"operation": operation, "ontology_id": ontology_id},
42
45
  },
43
46
  stream_callback=stream_callback,
44
47
  use_cache=use_cache,
@@ -46,4 +49,4 @@ def get_hyperopt_info(
46
49
  )
47
50
 
48
51
 
49
- __all__ = ["get_hyperopt_info"]
52
+ __all__ = ["ols_get_ontology_info"]
@@ -0,0 +1,67 @@
1
+ """
2
+ ols_get_term_ancestors
3
+
4
+ Get ancestor terms of a specific term in an ontology
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def ols_get_term_ancestors(
12
+ operation: str,
13
+ term_iri: str,
14
+ ontology: str,
15
+ include_obsolete: Optional[bool] = False,
16
+ size: Optional[int] = 20,
17
+ *,
18
+ stream_callback: Optional[Callable[[str], None]] = None,
19
+ use_cache: bool = False,
20
+ validate: bool = True,
21
+ ) -> Any:
22
+ """
23
+ Get ancestor terms of a specific term in an ontology
24
+
25
+ Parameters
26
+ ----------
27
+ operation : str
28
+ The operation to perform (get_term_ancestors)
29
+ term_iri : str
30
+ The IRI of the term to retrieve ancestors for
31
+ ontology : str
32
+ The ontology ID
33
+ include_obsolete : bool
34
+ Include obsolete terms (default: false)
35
+ size : int
36
+ Number of results to return (default: 20)
37
+ stream_callback : Callable, optional
38
+ Callback for streaming output
39
+ use_cache : bool, default False
40
+ Enable caching
41
+ validate : bool, default True
42
+ Validate parameters
43
+
44
+ Returns
45
+ -------
46
+ Any
47
+ """
48
+ # Handle mutable defaults to avoid B006 linting error
49
+
50
+ return get_shared_client().run_one_function(
51
+ {
52
+ "name": "ols_get_term_ancestors",
53
+ "arguments": {
54
+ "operation": operation,
55
+ "term_iri": term_iri,
56
+ "ontology": ontology,
57
+ "include_obsolete": include_obsolete,
58
+ "size": size,
59
+ },
60
+ },
61
+ stream_callback=stream_callback,
62
+ use_cache=use_cache,
63
+ validate=validate,
64
+ )
65
+
66
+
67
+ __all__ = ["ols_get_term_ancestors"]