tooluniverse 1.0.9.1__py3-none-any.whl → 1.0.11__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.
- tooluniverse/__init__.py +57 -1
- tooluniverse/admetai_tool.py +1 -1
- tooluniverse/agentic_tool.py +65 -17
- tooluniverse/base_tool.py +19 -8
- tooluniverse/blast_tool.py +132 -0
- tooluniverse/boltz_tool.py +3 -3
- tooluniverse/cache/result_cache_manager.py +167 -12
- tooluniverse/cbioportal_tool.py +42 -0
- tooluniverse/clinvar_tool.py +268 -74
- tooluniverse/compose_scripts/drug_safety_analyzer.py +1 -1
- tooluniverse/compose_scripts/multi_agent_literature_search.py +1 -1
- tooluniverse/compose_scripts/output_summarizer.py +4 -4
- tooluniverse/compose_scripts/tool_discover.py +1941 -443
- tooluniverse/compose_scripts/tool_graph_composer.py +1 -1
- tooluniverse/compose_scripts/tool_metadata_generator.py +1 -1
- tooluniverse/compose_tool.py +9 -9
- tooluniverse/core_tool.py +2 -2
- tooluniverse/ctg_tool.py +4 -4
- tooluniverse/custom_tool.py +1 -1
- tooluniverse/data/agentic_tools.json +0 -370
- tooluniverse/data/alphafold_tools.json +6 -6
- tooluniverse/data/blast_tools.json +112 -0
- tooluniverse/data/cbioportal_tools.json +87 -0
- tooluniverse/data/clinvar_tools.json +235 -0
- tooluniverse/data/compose_tools.json +0 -89
- tooluniverse/data/dbsnp_tools.json +275 -0
- tooluniverse/data/emdb_tools.json +61 -0
- tooluniverse/data/ensembl_tools.json +259 -0
- tooluniverse/data/file_download_tools.json +275 -0
- tooluniverse/data/geo_tools.json +200 -48
- tooluniverse/data/gnomad_tools.json +109 -0
- tooluniverse/data/gtopdb_tools.json +68 -0
- tooluniverse/data/gwas_tools.json +32 -0
- tooluniverse/data/interpro_tools.json +199 -0
- tooluniverse/data/jaspar_tools.json +70 -0
- tooluniverse/data/kegg_tools.json +356 -0
- tooluniverse/data/mpd_tools.json +87 -0
- tooluniverse/data/ols_tools.json +314 -0
- tooluniverse/data/package_discovery_tools.json +64 -0
- tooluniverse/data/packages/categorized_tools.txt +0 -1
- tooluniverse/data/packages/machine_learning_tools.json +0 -47
- tooluniverse/data/paleobiology_tools.json +91 -0
- tooluniverse/data/pride_tools.json +62 -0
- tooluniverse/data/pypi_package_inspector_tools.json +158 -0
- tooluniverse/data/python_executor_tools.json +341 -0
- tooluniverse/data/regulomedb_tools.json +50 -0
- tooluniverse/data/remap_tools.json +89 -0
- tooluniverse/data/screen_tools.json +89 -0
- tooluniverse/data/tool_discovery_agents.json +428 -0
- tooluniverse/data/tool_discovery_agents.json.backup +1343 -0
- tooluniverse/data/uniprot_tools.json +77 -0
- tooluniverse/data/web_search_tools.json +250 -0
- tooluniverse/data/worms_tools.json +55 -0
- tooluniverse/dataset_tool.py +2 -2
- tooluniverse/dbsnp_tool.py +196 -58
- tooluniverse/default_config.py +36 -3
- tooluniverse/emdb_tool.py +30 -0
- tooluniverse/enrichr_tool.py +14 -14
- tooluniverse/ensembl_tool.py +140 -47
- tooluniverse/execute_function.py +594 -29
- tooluniverse/extended_hooks.py +4 -4
- tooluniverse/file_download_tool.py +269 -0
- tooluniverse/gene_ontology_tool.py +1 -1
- tooluniverse/generate_tools.py +3 -3
- tooluniverse/geo_tool.py +81 -28
- tooluniverse/gnomad_tool.py +100 -52
- tooluniverse/gtopdb_tool.py +41 -0
- tooluniverse/humanbase_tool.py +10 -10
- tooluniverse/interpro_tool.py +72 -0
- tooluniverse/jaspar_tool.py +30 -0
- tooluniverse/kegg_tool.py +230 -0
- tooluniverse/logging_config.py +2 -2
- tooluniverse/mcp_client_tool.py +57 -129
- tooluniverse/mcp_integration.py +52 -49
- tooluniverse/mcp_tool_registry.py +147 -528
- tooluniverse/mpd_tool.py +42 -0
- tooluniverse/ncbi_eutils_tool.py +96 -0
- tooluniverse/ols_tool.py +435 -0
- tooluniverse/openalex_tool.py +8 -8
- tooluniverse/openfda_tool.py +2 -2
- tooluniverse/output_hook.py +15 -15
- tooluniverse/package_discovery_tool.py +217 -0
- tooluniverse/package_tool.py +1 -1
- tooluniverse/paleobiology_tool.py +30 -0
- tooluniverse/pmc_tool.py +2 -2
- tooluniverse/pride_tool.py +30 -0
- tooluniverse/pypi_package_inspector_tool.py +593 -0
- tooluniverse/python_executor_tool.py +711 -0
- tooluniverse/regulomedb_tool.py +30 -0
- tooluniverse/remap_tool.py +44 -0
- tooluniverse/remote/boltz/boltz_mcp_server.py +1 -1
- tooluniverse/remote/depmap_24q2/depmap_24q2_mcp_tool.py +3 -3
- tooluniverse/remote/immune_compass/compass_tool.py +3 -3
- tooluniverse/remote/pinnacle/pinnacle_tool.py +2 -2
- tooluniverse/remote/transcriptformer/transcriptformer_tool.py +3 -3
- tooluniverse/remote/uspto_downloader/uspto_downloader_mcp_server.py +3 -3
- tooluniverse/remote_tool.py +4 -4
- tooluniverse/screen_tool.py +44 -0
- tooluniverse/scripts/filter_tool_files.py +2 -2
- tooluniverse/smcp.py +93 -12
- tooluniverse/smcp_server.py +100 -21
- tooluniverse/space/__init__.py +46 -0
- tooluniverse/space/loader.py +133 -0
- tooluniverse/space/validator.py +353 -0
- tooluniverse/tool_finder_embedding.py +5 -3
- tooluniverse/tool_finder_keyword.py +12 -10
- tooluniverse/tool_finder_llm.py +12 -8
- tooluniverse/tools/{UCSC_get_genes_by_region.py → BLAST_nucleotide_search.py} +22 -26
- tooluniverse/tools/BLAST_protein_search.py +63 -0
- tooluniverse/tools/ClinVar_search_variants.py +26 -15
- tooluniverse/tools/CodeQualityAnalyzer.py +3 -3
- tooluniverse/tools/EMDB_get_structure.py +46 -0
- tooluniverse/tools/GtoPdb_get_targets.py +52 -0
- tooluniverse/tools/InterPro_get_domain_details.py +46 -0
- tooluniverse/tools/InterPro_get_protein_domains.py +49 -0
- tooluniverse/tools/InterPro_search_domains.py +52 -0
- tooluniverse/tools/JASPAR_get_transcription_factors.py +52 -0
- tooluniverse/tools/MPD_get_phenotype_data.py +59 -0
- tooluniverse/tools/PRIDE_search_proteomics.py +52 -0
- tooluniverse/tools/PackageAnalyzer.py +55 -0
- tooluniverse/tools/Paleobiology_get_fossils.py +52 -0
- tooluniverse/tools/PyPIPackageInspector.py +59 -0
- tooluniverse/tools/ReMap_get_transcription_factor_binding.py +59 -0
- tooluniverse/tools/ReferenceInfoAnalyzer.py +55 -0
- tooluniverse/tools/RegulomeDB_query_variant.py +46 -0
- tooluniverse/tools/SCREEN_get_regulatory_elements.py +59 -0
- tooluniverse/tools/{ArgumentDescriptionOptimizer.py → TestResultsAnalyzer.py} +13 -13
- tooluniverse/tools/ToolDiscover.py +11 -11
- tooluniverse/tools/UniProt_id_mapping.py +63 -0
- tooluniverse/tools/UniProt_search.py +63 -0
- tooluniverse/tools/UnifiedToolGenerator.py +59 -0
- tooluniverse/tools/WoRMS_search_species.py +49 -0
- tooluniverse/tools/XMLToolOptimizer.py +55 -0
- tooluniverse/tools/__init__.py +119 -29
- tooluniverse/tools/_shared_client.py +3 -3
- tooluniverse/tools/alphafold_get_annotations.py +3 -3
- tooluniverse/tools/alphafold_get_prediction.py +3 -3
- tooluniverse/tools/alphafold_get_summary.py +3 -3
- tooluniverse/tools/cBioPortal_get_cancer_studies.py +46 -0
- tooluniverse/tools/cBioPortal_get_mutations.py +52 -0
- tooluniverse/tools/{gnomAD_query_variant.py → clinvar_get_clinical_significance.py} +8 -11
- tooluniverse/tools/clinvar_get_variant_details.py +49 -0
- tooluniverse/tools/dbSNP_get_variant_by_rsid.py +7 -7
- tooluniverse/tools/dbsnp_get_frequencies.py +46 -0
- tooluniverse/tools/dbsnp_search_by_gene.py +52 -0
- tooluniverse/tools/download_binary_file.py +66 -0
- tooluniverse/tools/download_file.py +71 -0
- tooluniverse/tools/download_text_content.py +55 -0
- tooluniverse/tools/dynamic_package_discovery.py +59 -0
- tooluniverse/tools/ensembl_get_sequence.py +52 -0
- tooluniverse/tools/{Ensembl_lookup_gene_by_symbol.py → ensembl_get_variants.py} +11 -11
- tooluniverse/tools/ensembl_lookup_gene.py +46 -0
- tooluniverse/tools/geo_get_dataset_info.py +46 -0
- tooluniverse/tools/geo_get_sample_info.py +46 -0
- tooluniverse/tools/geo_search_datasets.py +67 -0
- tooluniverse/tools/gnomad_get_gene_constraints.py +49 -0
- tooluniverse/tools/kegg_find_genes.py +52 -0
- tooluniverse/tools/kegg_get_gene_info.py +46 -0
- tooluniverse/tools/kegg_get_pathway_info.py +46 -0
- tooluniverse/tools/kegg_list_organisms.py +44 -0
- tooluniverse/tools/kegg_search_pathway.py +46 -0
- tooluniverse/tools/ols_find_similar_terms.py +63 -0
- tooluniverse/tools/{get_hyperopt_info.py → ols_get_ontology_info.py} +13 -10
- tooluniverse/tools/ols_get_term_ancestors.py +67 -0
- tooluniverse/tools/ols_get_term_children.py +67 -0
- tooluniverse/tools/{TestCaseGenerator.py → ols_get_term_info.py} +12 -9
- tooluniverse/tools/{CodeOptimizer.py → ols_search_ontologies.py} +22 -14
- tooluniverse/tools/ols_search_terms.py +71 -0
- tooluniverse/tools/python_code_executor.py +79 -0
- tooluniverse/tools/python_script_runner.py +79 -0
- tooluniverse/tools/web_api_documentation_search.py +63 -0
- tooluniverse/tools/web_search.py +71 -0
- tooluniverse/uniprot_tool.py +219 -16
- tooluniverse/url_tool.py +19 -1
- tooluniverse/uspto_tool.py +1 -1
- tooluniverse/utils.py +12 -12
- tooluniverse/web_search_tool.py +229 -0
- tooluniverse/worms_tool.py +64 -0
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/METADATA +8 -3
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/RECORD +184 -92
- tooluniverse/data/genomics_tools.json +0 -174
- tooluniverse/tools/ToolDescriptionOptimizer.py +0 -67
- tooluniverse/tools/ToolImplementationGenerator.py +0 -67
- tooluniverse/tools/ToolOptimizer.py +0 -59
- tooluniverse/tools/ToolSpecificationGenerator.py +0 -67
- tooluniverse/tools/ToolSpecificationOptimizer.py +0 -63
- tooluniverse/ucsc_tool.py +0 -60
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/WHEEL +0 -0
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/entry_points.txt +0 -0
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/licenses/LICENSE +0 -0
- {tooluniverse-1.0.9.1.dist-info → tooluniverse-1.0.11.dist-info}/top_level.txt +0 -0
|
@@ -1,30 +1,36 @@
|
|
|
1
1
|
"""
|
|
2
|
-
|
|
2
|
+
clinvar_search_variants
|
|
3
3
|
|
|
4
|
-
Search ClinVar
|
|
4
|
+
Search for variants in ClinVar database by gene name, condition, or variant ID. Returns variant i...
|
|
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
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
def clinvar_search_variants(
|
|
12
|
+
gene: Optional[str] = None,
|
|
13
|
+
condition: Optional[str] = None,
|
|
14
|
+
variant_id: Optional[str] = None,
|
|
15
|
+
max_results: Optional[int] = 20,
|
|
14
16
|
*,
|
|
15
17
|
stream_callback: Optional[Callable[[str], None]] = None,
|
|
16
18
|
use_cache: bool = False,
|
|
17
19
|
validate: bool = True,
|
|
18
|
-
) ->
|
|
20
|
+
) -> dict[str, Any]:
|
|
19
21
|
"""
|
|
20
|
-
Search ClinVar
|
|
22
|
+
Search for variants in ClinVar database by gene name, condition, or variant ID. Returns variant i...
|
|
21
23
|
|
|
22
24
|
Parameters
|
|
23
25
|
----------
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
gene : str
|
|
27
|
+
Gene name or symbol (e.g., 'BRCA1', 'BRCA2')
|
|
28
|
+
condition : str
|
|
29
|
+
Disease or condition name (e.g., 'breast cancer', 'diabetes')
|
|
30
|
+
variant_id : str
|
|
31
|
+
ClinVar variant ID (e.g., '12345')
|
|
32
|
+
max_results : int
|
|
33
|
+
Maximum number of results to return
|
|
28
34
|
stream_callback : Callable, optional
|
|
29
35
|
Callback for streaming output
|
|
30
36
|
use_cache : bool, default False
|
|
@@ -34,14 +40,19 @@ def ClinVar_search_variants(
|
|
|
34
40
|
|
|
35
41
|
Returns
|
|
36
42
|
-------
|
|
37
|
-
|
|
43
|
+
dict[str, Any]
|
|
38
44
|
"""
|
|
39
45
|
# Handle mutable defaults to avoid B006 linting error
|
|
40
46
|
|
|
41
47
|
return get_shared_client().run_one_function(
|
|
42
48
|
{
|
|
43
|
-
"name": "
|
|
44
|
-
"arguments": {
|
|
49
|
+
"name": "clinvar_search_variants",
|
|
50
|
+
"arguments": {
|
|
51
|
+
"gene": gene,
|
|
52
|
+
"condition": condition,
|
|
53
|
+
"variant_id": variant_id,
|
|
54
|
+
"max_results": max_results,
|
|
55
|
+
},
|
|
45
56
|
},
|
|
46
57
|
stream_callback=stream_callback,
|
|
47
58
|
use_cache=use_cache,
|
|
@@ -49,4 +60,4 @@ def ClinVar_search_variants(
|
|
|
49
60
|
)
|
|
50
61
|
|
|
51
62
|
|
|
52
|
-
__all__ = ["
|
|
63
|
+
__all__ = ["clinvar_search_variants"]
|
|
@@ -14,12 +14,12 @@ def CodeQualityAnalyzer(
|
|
|
14
14
|
tool_parameters: str,
|
|
15
15
|
implementation_code: str,
|
|
16
16
|
test_cases: str,
|
|
17
|
-
test_execution_results:
|
|
17
|
+
test_execution_results: str,
|
|
18
18
|
*,
|
|
19
19
|
stream_callback: Optional[Callable[[str], None]] = None,
|
|
20
20
|
use_cache: bool = False,
|
|
21
21
|
validate: bool = True,
|
|
22
|
-
) -> Any:
|
|
22
|
+
) -> dict[str, Any]:
|
|
23
23
|
"""
|
|
24
24
|
Analyzes code quality from multiple dimensions including algorithmic correctness, functional impl...
|
|
25
25
|
|
|
@@ -46,7 +46,7 @@ def CodeQualityAnalyzer(
|
|
|
46
46
|
|
|
47
47
|
Returns
|
|
48
48
|
-------
|
|
49
|
-
Any
|
|
49
|
+
dict[str, Any]
|
|
50
50
|
"""
|
|
51
51
|
# Handle mutable defaults to avoid B006 linting error
|
|
52
52
|
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"""
|
|
2
|
+
EMDB_get_structure
|
|
3
|
+
|
|
4
|
+
Get electron microscopy structure data from EMDB
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from typing import Any, Optional, Callable
|
|
8
|
+
from ._shared_client import get_shared_client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def EMDB_get_structure(
|
|
12
|
+
emdb_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 electron microscopy structure data from EMDB
|
|
20
|
+
|
|
21
|
+
Parameters
|
|
22
|
+
----------
|
|
23
|
+
emdb_id : str
|
|
24
|
+
EMDB structure ID (e.g., EMD-1234)
|
|
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": "EMDB_get_structure", "arguments": {"emdb_id": emdb_id}},
|
|
40
|
+
stream_callback=stream_callback,
|
|
41
|
+
use_cache=use_cache,
|
|
42
|
+
validate=validate,
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
__all__ = ["EMDB_get_structure"]
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"""
|
|
2
|
+
GtoPdb_get_targets
|
|
3
|
+
|
|
4
|
+
Get pharmacological targets from Guide to Pharmacology database
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from typing import Any, Optional, Callable
|
|
8
|
+
from ._shared_client import get_shared_client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def GtoPdb_get_targets(
|
|
12
|
+
target_type: Optional[str] = "protein",
|
|
13
|
+
limit: 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
|
+
Get pharmacological targets from Guide to Pharmacology database
|
|
21
|
+
|
|
22
|
+
Parameters
|
|
23
|
+
----------
|
|
24
|
+
target_type : str
|
|
25
|
+
Target type
|
|
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
|
+
list[Any]
|
|
38
|
+
"""
|
|
39
|
+
# Handle mutable defaults to avoid B006 linting error
|
|
40
|
+
|
|
41
|
+
return get_shared_client().run_one_function(
|
|
42
|
+
{
|
|
43
|
+
"name": "GtoPdb_get_targets",
|
|
44
|
+
"arguments": {"target_type": target_type, "limit": limit},
|
|
45
|
+
},
|
|
46
|
+
stream_callback=stream_callback,
|
|
47
|
+
use_cache=use_cache,
|
|
48
|
+
validate=validate,
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
__all__ = ["GtoPdb_get_targets"]
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"""
|
|
2
|
+
InterPro_get_domain_details
|
|
3
|
+
|
|
4
|
+
Get detailed information about a specific InterPro domain entry including description, hierarchy,...
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from typing import Any, Optional, Callable
|
|
8
|
+
from ._shared_client import get_shared_client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def InterPro_get_domain_details(
|
|
12
|
+
accession: 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 InterPro domain entry including description, hierarchy,...
|
|
20
|
+
|
|
21
|
+
Parameters
|
|
22
|
+
----------
|
|
23
|
+
accession : str
|
|
24
|
+
InterPro accession ID (e.g., IPR000719, IPR000719)
|
|
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": "InterPro_get_domain_details", "arguments": {"accession": accession}},
|
|
40
|
+
stream_callback=stream_callback,
|
|
41
|
+
use_cache=use_cache,
|
|
42
|
+
validate=validate,
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
__all__ = ["InterPro_get_domain_details"]
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"""
|
|
2
|
+
InterPro_get_protein_domains
|
|
3
|
+
|
|
4
|
+
Get protein domain annotations from InterPro database using UniProt protein ID. Returns domain fa...
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from typing import Any, Optional, Callable
|
|
8
|
+
from ._shared_client import get_shared_client
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def InterPro_get_protein_domains(
|
|
12
|
+
protein_id: str,
|
|
13
|
+
*,
|
|
14
|
+
stream_callback: Optional[Callable[[str], None]] = None,
|
|
15
|
+
use_cache: bool = False,
|
|
16
|
+
validate: bool = True,
|
|
17
|
+
) -> list[Any]:
|
|
18
|
+
"""
|
|
19
|
+
Get protein domain annotations from InterPro database using UniProt protein ID. Returns domain fa...
|
|
20
|
+
|
|
21
|
+
Parameters
|
|
22
|
+
----------
|
|
23
|
+
protein_id : str
|
|
24
|
+
UniProt protein ID (e.g., P05067, Q9Y6K9)
|
|
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
|
+
list[Any]
|
|
35
|
+
"""
|
|
36
|
+
# Handle mutable defaults to avoid B006 linting error
|
|
37
|
+
|
|
38
|
+
return get_shared_client().run_one_function(
|
|
39
|
+
{
|
|
40
|
+
"name": "InterPro_get_protein_domains",
|
|
41
|
+
"arguments": {"protein_id": protein_id},
|
|
42
|
+
},
|
|
43
|
+
stream_callback=stream_callback,
|
|
44
|
+
use_cache=use_cache,
|
|
45
|
+
validate=validate,
|
|
46
|
+
)
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
__all__ = ["InterPro_get_protein_domains"]
|
|
@@ -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"]
|