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,52 @@
1
+ """
2
+ InterPro_search_domains
3
+
4
+ Search InterPro database for protein domains and families by name or accession. Returns matching ...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def InterPro_search_domains(
12
+ query: str,
13
+ size: Optional[int] = 20,
14
+ *,
15
+ stream_callback: Optional[Callable[[str], None]] = None,
16
+ use_cache: bool = False,
17
+ validate: bool = True,
18
+ ) -> list[Any]:
19
+ """
20
+ Search InterPro database for protein domains and families by name or accession. Returns matching ...
21
+
22
+ Parameters
23
+ ----------
24
+ query : str
25
+ Domain name, accession, or search term (e.g., 'kinase', 'IPR000719')
26
+ size : int
27
+ Number of results to return (default: 20, max: 100)
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
+ list[Any]
38
+ """
39
+ # Handle mutable defaults to avoid B006 linting error
40
+
41
+ return get_shared_client().run_one_function(
42
+ {
43
+ "name": "InterPro_search_domains",
44
+ "arguments": {"query": query, "size": size},
45
+ },
46
+ stream_callback=stream_callback,
47
+ use_cache=use_cache,
48
+ validate=validate,
49
+ )
50
+
51
+
52
+ __all__ = ["InterPro_search_domains"]
@@ -0,0 +1,52 @@
1
+ """
2
+ JASPAR_get_transcription_factors
3
+
4
+ Get transcription factor binding site matrices from JASPAR
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def JASPAR_get_transcription_factors(
12
+ collection: Optional[str] = "CORE",
13
+ limit: Optional[int] = 20,
14
+ *,
15
+ stream_callback: Optional[Callable[[str], None]] = None,
16
+ use_cache: bool = False,
17
+ validate: bool = True,
18
+ ) -> dict[str, Any]:
19
+ """
20
+ Get transcription factor binding site matrices from JASPAR
21
+
22
+ Parameters
23
+ ----------
24
+ collection : str
25
+ JASPAR collection
26
+ limit : int
27
+ Number of results
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": "JASPAR_get_transcription_factors",
44
+ "arguments": {"collection": collection, "limit": limit},
45
+ },
46
+ stream_callback=stream_callback,
47
+ use_cache=use_cache,
48
+ validate=validate,
49
+ )
50
+
51
+
52
+ __all__ = ["JASPAR_get_transcription_factors"]
@@ -0,0 +1,59 @@
1
+ """
2
+ MPD_get_phenotype_data
3
+
4
+ Get mouse phenotype data from Mouse Phenome Database for specific strains and phenotypes
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def MPD_get_phenotype_data(
12
+ strain: str,
13
+ phenotype_category: Optional[str] = "behavior",
14
+ limit: Optional[int] = 10,
15
+ *,
16
+ stream_callback: Optional[Callable[[str], None]] = None,
17
+ use_cache: bool = False,
18
+ validate: bool = True,
19
+ ) -> dict[str, Any]:
20
+ """
21
+ Get mouse phenotype data from Mouse Phenome Database for specific strains and phenotypes
22
+
23
+ Parameters
24
+ ----------
25
+ strain : str
26
+ Mouse strain (e.g., C57BL/6J, BALB/c, DBA/2J)
27
+ phenotype_category : str
28
+ Phenotype category (behavior, physiology, morphology)
29
+ limit : int
30
+ Number of results to return
31
+ stream_callback : Callable, optional
32
+ Callback for streaming output
33
+ use_cache : bool, default False
34
+ Enable caching
35
+ validate : bool, default True
36
+ Validate parameters
37
+
38
+ Returns
39
+ -------
40
+ dict[str, Any]
41
+ """
42
+ # Handle mutable defaults to avoid B006 linting error
43
+
44
+ return get_shared_client().run_one_function(
45
+ {
46
+ "name": "MPD_get_phenotype_data",
47
+ "arguments": {
48
+ "strain": strain,
49
+ "phenotype_category": phenotype_category,
50
+ "limit": limit,
51
+ },
52
+ },
53
+ stream_callback=stream_callback,
54
+ use_cache=use_cache,
55
+ validate=validate,
56
+ )
57
+
58
+
59
+ __all__ = ["MPD_get_phenotype_data"]
@@ -0,0 +1,52 @@
1
+ """
2
+ PRIDE_search_proteomics
3
+
4
+ Search PRIDE proteomics database for experiments
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def PRIDE_search_proteomics(
12
+ query: str,
13
+ page_size: Optional[int] = 20,
14
+ *,
15
+ stream_callback: Optional[Callable[[str], None]] = None,
16
+ use_cache: bool = False,
17
+ validate: bool = True,
18
+ ) -> dict[str, Any]:
19
+ """
20
+ Search PRIDE proteomics database for experiments
21
+
22
+ Parameters
23
+ ----------
24
+ query : str
25
+ Search query
26
+ page_size : int
27
+ Results per page
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": "PRIDE_search_proteomics",
44
+ "arguments": {"query": query, "page_size": page_size},
45
+ },
46
+ stream_callback=stream_callback,
47
+ use_cache=use_cache,
48
+ validate=validate,
49
+ )
50
+
51
+
52
+ __all__ = ["PRIDE_search_proteomics"]
@@ -0,0 +1,55 @@
1
+ """
2
+ PackageAnalyzer
3
+
4
+ Analyzes package candidates and recommends the best options based on quality metrics and suitability
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def PackageAnalyzer(
12
+ tool_description: str,
13
+ package_candidates: 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
+ Analyzes package candidates and recommends the best options based on quality metrics and suitability
21
+
22
+ Parameters
23
+ ----------
24
+ tool_description : str
25
+ Description of the tool being generated
26
+ package_candidates : str
27
+ JSON string containing package candidates with their metadata (from PyPI, sea...
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": "PackageAnalyzer",
44
+ "arguments": {
45
+ "tool_description": tool_description,
46
+ "package_candidates": package_candidates,
47
+ },
48
+ },
49
+ stream_callback=stream_callback,
50
+ use_cache=use_cache,
51
+ validate=validate,
52
+ )
53
+
54
+
55
+ __all__ = ["PackageAnalyzer"]
@@ -0,0 +1,52 @@
1
+ """
2
+ Paleobiology_get_fossils
3
+
4
+ Get fossil records from Paleobiology Database
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def Paleobiology_get_fossils(
12
+ taxon: str,
13
+ limit: Optional[int] = 20,
14
+ *,
15
+ stream_callback: Optional[Callable[[str], None]] = None,
16
+ use_cache: bool = False,
17
+ validate: bool = True,
18
+ ) -> dict[str, Any]:
19
+ """
20
+ Get fossil records from Paleobiology Database
21
+
22
+ Parameters
23
+ ----------
24
+ taxon : str
25
+ Taxon name
26
+ limit : int
27
+ Number of results
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": "Paleobiology_get_fossils",
44
+ "arguments": {"taxon": taxon, "limit": limit},
45
+ },
46
+ stream_callback=stream_callback,
47
+ use_cache=use_cache,
48
+ validate=validate,
49
+ )
50
+
51
+
52
+ __all__ = ["Paleobiology_get_fossils"]
@@ -0,0 +1,59 @@
1
+ """
2
+ PyPIPackageInspector
3
+
4
+ Extracts comprehensive package information from PyPI and GitHub for quality evaluation. Provides ...
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def PyPIPackageInspector(
12
+ package_name: str,
13
+ include_github: Optional[bool] = True,
14
+ include_downloads: Optional[bool] = True,
15
+ *,
16
+ stream_callback: Optional[Callable[[str], None]] = None,
17
+ use_cache: bool = False,
18
+ validate: bool = True,
19
+ ) -> dict[str, Any]:
20
+ """
21
+ Extracts comprehensive package information from PyPI and GitHub for quality evaluation. Provides ...
22
+
23
+ Parameters
24
+ ----------
25
+ package_name : str
26
+ Name of the Python package to inspect on PyPI (e.g., 'requests', 'numpy', 'pa...
27
+ include_github : bool
28
+ Whether to fetch GitHub repository statistics (stars, forks, issues, last pus...
29
+ include_downloads : bool
30
+ Whether to fetch download statistics from pypistats.org (downloads per day/we...
31
+ stream_callback : Callable, optional
32
+ Callback for streaming output
33
+ use_cache : bool, default False
34
+ Enable caching
35
+ validate : bool, default True
36
+ Validate parameters
37
+
38
+ Returns
39
+ -------
40
+ dict[str, Any]
41
+ """
42
+ # Handle mutable defaults to avoid B006 linting error
43
+
44
+ return get_shared_client().run_one_function(
45
+ {
46
+ "name": "PyPIPackageInspector",
47
+ "arguments": {
48
+ "package_name": package_name,
49
+ "include_github": include_github,
50
+ "include_downloads": include_downloads,
51
+ },
52
+ },
53
+ stream_callback=stream_callback,
54
+ use_cache=use_cache,
55
+ validate=validate,
56
+ )
57
+
58
+
59
+ __all__ = ["PyPIPackageInspector"]
@@ -0,0 +1,59 @@
1
+ """
2
+ ReMap_get_transcription_factor_binding
3
+
4
+ Get transcription factor binding sites from ReMap database for specific genes and cell types
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def ReMap_get_transcription_factor_binding(
12
+ gene_name: str,
13
+ cell_type: Optional[str] = "HepG2",
14
+ limit: Optional[int] = 10,
15
+ *,
16
+ stream_callback: Optional[Callable[[str], None]] = None,
17
+ use_cache: bool = False,
18
+ validate: bool = True,
19
+ ) -> dict[str, Any]:
20
+ """
21
+ Get transcription factor binding sites from ReMap database for specific genes and cell types
22
+
23
+ Parameters
24
+ ----------
25
+ gene_name : str
26
+ Gene symbol (e.g., BRCA1, TP53, MYC)
27
+ cell_type : str
28
+ Cell type (e.g., HepG2, K562, MCF-7)
29
+ limit : int
30
+ Number of results to return
31
+ stream_callback : Callable, optional
32
+ Callback for streaming output
33
+ use_cache : bool, default False
34
+ Enable caching
35
+ validate : bool, default True
36
+ Validate parameters
37
+
38
+ Returns
39
+ -------
40
+ dict[str, Any]
41
+ """
42
+ # Handle mutable defaults to avoid B006 linting error
43
+
44
+ return get_shared_client().run_one_function(
45
+ {
46
+ "name": "ReMap_get_transcription_factor_binding",
47
+ "arguments": {
48
+ "gene_name": gene_name,
49
+ "cell_type": cell_type,
50
+ "limit": limit,
51
+ },
52
+ },
53
+ stream_callback=stream_callback,
54
+ use_cache=use_cache,
55
+ validate=validate,
56
+ )
57
+
58
+
59
+ __all__ = ["ReMap_get_transcription_factor_binding"]
@@ -0,0 +1,55 @@
1
+ """
2
+ ReferenceInfoAnalyzer
3
+
4
+ Analyzes and curates reference information to provide high-quality context for tool generation
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def ReferenceInfoAnalyzer(
12
+ tool_description: str,
13
+ raw_reference_info: 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
+ Analyzes and curates reference information to provide high-quality context for tool generation
21
+
22
+ Parameters
23
+ ----------
24
+ tool_description : str
25
+ Description of the tool being generated
26
+ raw_reference_info : str
27
+ JSON string containing raw reference information from web search and package ...
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": "ReferenceInfoAnalyzer",
44
+ "arguments": {
45
+ "tool_description": tool_description,
46
+ "raw_reference_info": raw_reference_info,
47
+ },
48
+ },
49
+ stream_callback=stream_callback,
50
+ use_cache=use_cache,
51
+ validate=validate,
52
+ )
53
+
54
+
55
+ __all__ = ["ReferenceInfoAnalyzer"]
@@ -0,0 +1,46 @@
1
+ """
2
+ RegulomeDB_query_variant
3
+
4
+ Query RegulomeDB for regulatory variant annotations using rsID
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def RegulomeDB_query_variant(
12
+ rsid: 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
+ Query RegulomeDB for regulatory variant annotations using rsID
20
+
21
+ Parameters
22
+ ----------
23
+ rsid : str
24
+ dbSNP rsID (e.g., rs123456)
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": "RegulomeDB_query_variant", "arguments": {"rsid": rsid}},
40
+ stream_callback=stream_callback,
41
+ use_cache=use_cache,
42
+ validate=validate,
43
+ )
44
+
45
+
46
+ __all__ = ["RegulomeDB_query_variant"]
@@ -0,0 +1,59 @@
1
+ """
2
+ SCREEN_get_regulatory_elements
3
+
4
+ Get candidate cis-regulatory elements (cCREs) from SCREEN database for specific genomic regions
5
+ """
6
+
7
+ from typing import Any, Optional, Callable
8
+ from ._shared_client import get_shared_client
9
+
10
+
11
+ def SCREEN_get_regulatory_elements(
12
+ gene_name: str,
13
+ element_type: Optional[str] = "enhancer",
14
+ limit: Optional[int] = 10,
15
+ *,
16
+ stream_callback: Optional[Callable[[str], None]] = None,
17
+ use_cache: bool = False,
18
+ validate: bool = True,
19
+ ) -> dict[str, Any]:
20
+ """
21
+ Get candidate cis-regulatory elements (cCREs) from SCREEN database for specific genomic regions
22
+
23
+ Parameters
24
+ ----------
25
+ gene_name : str
26
+ Gene symbol to search for regulatory elements (e.g., BRCA1, TP53)
27
+ element_type : str
28
+ Type of regulatory element (promoter, enhancer, insulator)
29
+ limit : int
30
+ Number of results to return
31
+ stream_callback : Callable, optional
32
+ Callback for streaming output
33
+ use_cache : bool, default False
34
+ Enable caching
35
+ validate : bool, default True
36
+ Validate parameters
37
+
38
+ Returns
39
+ -------
40
+ dict[str, Any]
41
+ """
42
+ # Handle mutable defaults to avoid B006 linting error
43
+
44
+ return get_shared_client().run_one_function(
45
+ {
46
+ "name": "SCREEN_get_regulatory_elements",
47
+ "arguments": {
48
+ "gene_name": gene_name,
49
+ "element_type": element_type,
50
+ "limit": limit,
51
+ },
52
+ },
53
+ stream_callback=stream_callback,
54
+ use_cache=use_cache,
55
+ validate=validate,
56
+ )
57
+
58
+
59
+ __all__ = ["SCREEN_get_regulatory_elements"]
@@ -1,30 +1,30 @@
1
1
  """
2
- ArgumentDescriptionOptimizer
2
+ TestResultsAnalyzer
3
3
 
4
- Optimizes the descriptions of tool arguments/parameters based on test case results and actual usa...
4
+ Analyzes test execution results and extracts key issues for targeted optimization
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 ArgumentDescriptionOptimizer(
12
- parameter_schema: str,
11
+ def TestResultsAnalyzer(
13
12
  test_results: str,
13
+ tool_implementation: str,
14
14
  *,
15
15
  stream_callback: Optional[Callable[[str], None]] = None,
16
16
  use_cache: bool = False,
17
17
  validate: bool = True,
18
- ) -> Any:
18
+ ) -> dict[str, Any]:
19
19
  """
20
- Optimizes the descriptions of tool arguments/parameters based on test case results and actual usa...
20
+ Analyzes test execution results and extracts key issues for targeted optimization
21
21
 
22
22
  Parameters
23
23
  ----------
24
- parameter_schema : str
25
- JSON string of the original parameter schema with properties and descriptions.
26
24
  test_results : str
27
- A JSON string containing test case input/output pairs showing parameter usage.
25
+ JSON string containing test execution results with pass/fail status, error me...
26
+ tool_implementation : str
27
+ Current tool implementation code for context
28
28
  stream_callback : Callable, optional
29
29
  Callback for streaming output
30
30
  use_cache : bool, default False
@@ -34,16 +34,16 @@ def ArgumentDescriptionOptimizer(
34
34
 
35
35
  Returns
36
36
  -------
37
- Any
37
+ dict[str, Any]
38
38
  """
39
39
  # Handle mutable defaults to avoid B006 linting error
40
40
 
41
41
  return get_shared_client().run_one_function(
42
42
  {
43
- "name": "ArgumentDescriptionOptimizer",
43
+ "name": "TestResultsAnalyzer",
44
44
  "arguments": {
45
- "parameter_schema": parameter_schema,
46
45
  "test_results": test_results,
46
+ "tool_implementation": tool_implementation,
47
47
  },
48
48
  },
49
49
  stream_callback=stream_callback,
@@ -52,4 +52,4 @@ def ArgumentDescriptionOptimizer(
52
52
  )
53
53
 
54
54
 
55
- __all__ = ["ArgumentDescriptionOptimizer"]
55
+ __all__ = ["TestResultsAnalyzer"]