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.
- tooluniverse/__init__.py +57 -1
- tooluniverse/blast_tool.py +132 -0
- tooluniverse/boltz_tool.py +2 -2
- tooluniverse/cbioportal_tool.py +42 -0
- tooluniverse/clinvar_tool.py +268 -74
- tooluniverse/compose_scripts/tool_discover.py +1941 -443
- 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/dbsnp_tool.py +196 -58
- tooluniverse/default_config.py +35 -2
- tooluniverse/emdb_tool.py +30 -0
- tooluniverse/ensembl_tool.py +140 -47
- tooluniverse/execute_function.py +78 -14
- tooluniverse/file_download_tool.py +269 -0
- tooluniverse/geo_tool.py +81 -28
- tooluniverse/gnomad_tool.py +100 -52
- tooluniverse/gtopdb_tool.py +41 -0
- tooluniverse/interpro_tool.py +72 -0
- tooluniverse/jaspar_tool.py +30 -0
- tooluniverse/kegg_tool.py +230 -0
- tooluniverse/mpd_tool.py +42 -0
- tooluniverse/ncbi_eutils_tool.py +96 -0
- tooluniverse/ols_tool.py +435 -0
- tooluniverse/package_discovery_tool.py +217 -0
- tooluniverse/paleobiology_tool.py +30 -0
- 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/depmap_24q2/depmap_24q2_mcp_tool.py +1 -1
- tooluniverse/screen_tool.py +44 -0
- tooluniverse/smcp.py +10 -2
- tooluniverse/smcp_server.py +3 -3
- tooluniverse/tool_finder_embedding.py +3 -1
- tooluniverse/tool_finder_keyword.py +3 -1
- tooluniverse/tool_finder_llm.py +6 -2
- 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/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 +18 -0
- tooluniverse/utils.py +2 -2
- tooluniverse/web_search_tool.py +229 -0
- tooluniverse/worms_tool.py +64 -0
- {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/METADATA +3 -2
- {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/RECORD +144 -55
- 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.10.dist-info → tooluniverse-1.0.11.1.dist-info}/WHEEL +0 -0
- {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/entry_points.txt +0 -0
- {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/licenses/LICENSE +0 -0
- {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "PyPIPackageInspector",
|
|
4
|
+
"name": "PyPIPackageInspector",
|
|
5
|
+
"description": "Extracts comprehensive package information from PyPI and GitHub for quality evaluation. Provides detailed metrics on popularity (downloads, stars, forks), maintenance (release frequency, recent activity), documentation quality, Python version compatibility, and security indicators. Returns an overall quality score (0-100) with breakdown by category.",
|
|
6
|
+
"parameter": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"package_name": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "Name of the Python package to inspect on PyPI (e.g., 'requests', 'numpy', 'pandas')"
|
|
12
|
+
},
|
|
13
|
+
"include_github": {
|
|
14
|
+
"type": "boolean",
|
|
15
|
+
"description": "Whether to fetch GitHub repository statistics (stars, forks, issues, last push). Requires package to have GitHub URL in metadata.",
|
|
16
|
+
"default": true
|
|
17
|
+
},
|
|
18
|
+
"include_downloads": {
|
|
19
|
+
"type": "boolean",
|
|
20
|
+
"description": "Whether to fetch download statistics from pypistats.org (downloads per day/week/month)",
|
|
21
|
+
"default": true
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"required": ["package_name"]
|
|
25
|
+
},
|
|
26
|
+
"return_schema": {
|
|
27
|
+
"type": "object",
|
|
28
|
+
"properties": {
|
|
29
|
+
"status": {
|
|
30
|
+
"type": "string",
|
|
31
|
+
"enum": ["success", "error"],
|
|
32
|
+
"description": "Status of the inspection operation"
|
|
33
|
+
},
|
|
34
|
+
"package_name": {
|
|
35
|
+
"type": "string",
|
|
36
|
+
"description": "Name of the inspected package"
|
|
37
|
+
},
|
|
38
|
+
"pypi_metadata": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"description": "Complete PyPI metadata including version, author, license, dependencies, release history",
|
|
41
|
+
"properties": {
|
|
42
|
+
"name": {"type": "string"},
|
|
43
|
+
"version": {"type": "string"},
|
|
44
|
+
"summary": {"type": "string"},
|
|
45
|
+
"author": {"type": "string"},
|
|
46
|
+
"license": {"type": "string"},
|
|
47
|
+
"requires_python": {"type": "string"},
|
|
48
|
+
"github_url": {"type": "string"},
|
|
49
|
+
"total_releases": {"type": "integer"},
|
|
50
|
+
"days_since_last_release": {"type": "integer"},
|
|
51
|
+
"releases_last_year": {"type": "integer"}
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
"download_stats": {
|
|
55
|
+
"type": "object",
|
|
56
|
+
"description": "Download statistics from pypistats.org",
|
|
57
|
+
"properties": {
|
|
58
|
+
"downloads_last_day": {"type": "integer"},
|
|
59
|
+
"downloads_last_week": {"type": "integer"},
|
|
60
|
+
"downloads_last_month": {"type": "integer"}
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
"github_stats": {
|
|
64
|
+
"type": "object",
|
|
65
|
+
"description": "GitHub repository statistics",
|
|
66
|
+
"properties": {
|
|
67
|
+
"stars": {"type": "integer"},
|
|
68
|
+
"forks": {"type": "integer"},
|
|
69
|
+
"open_issues": {"type": "integer"},
|
|
70
|
+
"days_since_last_push": {"type": "integer"},
|
|
71
|
+
"archived": {"type": "boolean"},
|
|
72
|
+
"topics": {"type": "array", "items": {"type": "string"}}
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"quality_scores": {
|
|
76
|
+
"type": "object",
|
|
77
|
+
"description": "Comprehensive quality scores (0-100 scale)",
|
|
78
|
+
"properties": {
|
|
79
|
+
"overall_score": {
|
|
80
|
+
"type": "integer",
|
|
81
|
+
"description": "Weighted overall quality score combining all dimensions"
|
|
82
|
+
},
|
|
83
|
+
"popularity_score": {
|
|
84
|
+
"type": "integer",
|
|
85
|
+
"description": "Based on downloads, stars, forks, and release count"
|
|
86
|
+
},
|
|
87
|
+
"maintenance_score": {
|
|
88
|
+
"type": "integer",
|
|
89
|
+
"description": "Based on recent releases, GitHub activity, and update frequency"
|
|
90
|
+
},
|
|
91
|
+
"documentation_score": {
|
|
92
|
+
"type": "integer",
|
|
93
|
+
"description": "Based on docs URL, description length, and classifiers"
|
|
94
|
+
},
|
|
95
|
+
"compatibility_score": {
|
|
96
|
+
"type": "integer",
|
|
97
|
+
"description": "Based on wheel availability, Python version support"
|
|
98
|
+
},
|
|
99
|
+
"security_score": {
|
|
100
|
+
"type": "integer",
|
|
101
|
+
"description": "Based on license, maintenance status, and issue management"
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
"recommendation": {
|
|
106
|
+
"type": "string",
|
|
107
|
+
"description": "Human-readable recommendation with reasoning"
|
|
108
|
+
},
|
|
109
|
+
"error": {
|
|
110
|
+
"type": "string",
|
|
111
|
+
"description": "Error message if inspection failed"
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"required": ["status", "package_name"]
|
|
115
|
+
},
|
|
116
|
+
"test_examples": [
|
|
117
|
+
{
|
|
118
|
+
"input": {
|
|
119
|
+
"package_name": "requests",
|
|
120
|
+
"include_github": true,
|
|
121
|
+
"include_downloads": true
|
|
122
|
+
},
|
|
123
|
+
"expected_output_type": "object",
|
|
124
|
+
"description": "Inspect the popular 'requests' HTTP library for quality metrics"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"input": {
|
|
128
|
+
"package_name": "numpy"
|
|
129
|
+
},
|
|
130
|
+
"expected_output_type": "object",
|
|
131
|
+
"description": "Inspect NumPy with default settings (GitHub and downloads enabled)"
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
"input": {
|
|
135
|
+
"package_name": "pandas",
|
|
136
|
+
"include_github": false,
|
|
137
|
+
"include_downloads": false
|
|
138
|
+
},
|
|
139
|
+
"expected_output_type": "object",
|
|
140
|
+
"description": "Inspect Pandas with only PyPI metadata (faster, no external API calls)"
|
|
141
|
+
}
|
|
142
|
+
],
|
|
143
|
+
"metadata": {
|
|
144
|
+
"tags": ["package-inspection", "pypi", "quality-metrics", "package-evaluation"],
|
|
145
|
+
"difficulty_level": "intermediate",
|
|
146
|
+
"estimated_execution_time": "3-10 seconds",
|
|
147
|
+
"api_dependencies": ["PyPI", "pypistats.org", "GitHub API"],
|
|
148
|
+
"version": "1.0.0",
|
|
149
|
+
"author": "ToolUniverse Team",
|
|
150
|
+
"use_cases": [
|
|
151
|
+
"Evaluate package quality before adding as dependency",
|
|
152
|
+
"Compare alternative packages for similar functionality",
|
|
153
|
+
"Monitor package health and maintenance status",
|
|
154
|
+
"Generate package quality reports for documentation"
|
|
155
|
+
]
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
]
|
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "PythonCodeExecutor",
|
|
4
|
+
"name": "python_code_executor",
|
|
5
|
+
"description": "Execute Python code snippets safely in sandboxed environment with timeout and resource limits. Supports variable passing and result extraction.",
|
|
6
|
+
"parameter": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"code": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "Python code to execute. Can use variables from 'arguments' parameter. Use 'result = ...' to return values."
|
|
12
|
+
},
|
|
13
|
+
"arguments": {
|
|
14
|
+
"type": "object",
|
|
15
|
+
"description": "Variables to pass into execution environment as dictionary. Keys become variable names in the code.",
|
|
16
|
+
"additionalProperties": true
|
|
17
|
+
},
|
|
18
|
+
"timeout": {
|
|
19
|
+
"type": "integer",
|
|
20
|
+
"description": "Execution timeout in seconds",
|
|
21
|
+
"default": 30,
|
|
22
|
+
"minimum": 1,
|
|
23
|
+
"maximum": 300
|
|
24
|
+
},
|
|
25
|
+
"return_variable": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"description": "Variable name to extract as result from the executed code",
|
|
28
|
+
"default": "result"
|
|
29
|
+
},
|
|
30
|
+
"allowed_imports": {
|
|
31
|
+
"type": "array",
|
|
32
|
+
"items": {"type": "string"},
|
|
33
|
+
"description": "Additional allowed modules beyond the default safe set (math, json, datetime, etc.)"
|
|
34
|
+
},
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"type": "array",
|
|
37
|
+
"items": {"type": "string"},
|
|
38
|
+
"description": "List of Python packages that the code depends on. Will be checked and optionally installed before execution."
|
|
39
|
+
},
|
|
40
|
+
"auto_install_dependencies": {
|
|
41
|
+
"type": "boolean",
|
|
42
|
+
"description": "Whether to automatically install missing dependencies without user confirmation",
|
|
43
|
+
"default": false
|
|
44
|
+
},
|
|
45
|
+
"require_confirmation": {
|
|
46
|
+
"type": "boolean",
|
|
47
|
+
"description": "Whether to require user confirmation before installing packages",
|
|
48
|
+
"default": true
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"required": ["code"]
|
|
52
|
+
},
|
|
53
|
+
"return_schema": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"properties": {
|
|
56
|
+
"success": {
|
|
57
|
+
"type": "boolean",
|
|
58
|
+
"description": "Whether execution succeeded"
|
|
59
|
+
},
|
|
60
|
+
"result": {
|
|
61
|
+
"description": "The result value from the executed code (from return_variable)"
|
|
62
|
+
},
|
|
63
|
+
"stdout": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"description": "Standard output from the execution"
|
|
66
|
+
},
|
|
67
|
+
"stderr": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"description": "Standard error output from the execution"
|
|
70
|
+
},
|
|
71
|
+
"execution_time_ms": {
|
|
72
|
+
"type": "integer",
|
|
73
|
+
"description": "Execution time in milliseconds"
|
|
74
|
+
},
|
|
75
|
+
"memory_used_mb": {
|
|
76
|
+
"type": "number",
|
|
77
|
+
"description": "Memory usage in MB (if available)"
|
|
78
|
+
},
|
|
79
|
+
"error": {
|
|
80
|
+
"type": "string",
|
|
81
|
+
"description": "Error message if execution failed"
|
|
82
|
+
},
|
|
83
|
+
"error_type": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"description": "Type of error if execution failed"
|
|
86
|
+
},
|
|
87
|
+
"traceback": {
|
|
88
|
+
"type": "string",
|
|
89
|
+
"description": "Full traceback if execution failed"
|
|
90
|
+
},
|
|
91
|
+
"requires_confirmation": {
|
|
92
|
+
"type": "boolean",
|
|
93
|
+
"description": "Whether user confirmation is required for package installation"
|
|
94
|
+
},
|
|
95
|
+
"missing_packages": {
|
|
96
|
+
"type": "array",
|
|
97
|
+
"items": {"type": "string"},
|
|
98
|
+
"description": "List of packages that are missing and need to be installed"
|
|
99
|
+
},
|
|
100
|
+
"install_command": {
|
|
101
|
+
"type": "string",
|
|
102
|
+
"description": "The pip install command that would be executed"
|
|
103
|
+
},
|
|
104
|
+
"installed_packages": {
|
|
105
|
+
"type": "array",
|
|
106
|
+
"items": {"type": "string"},
|
|
107
|
+
"description": "List of packages that were successfully installed"
|
|
108
|
+
},
|
|
109
|
+
"metadata": {
|
|
110
|
+
"type": "object",
|
|
111
|
+
"properties": {
|
|
112
|
+
"code_lines": {
|
|
113
|
+
"type": "integer",
|
|
114
|
+
"description": "Number of lines in the executed code"
|
|
115
|
+
},
|
|
116
|
+
"ast_warnings": {
|
|
117
|
+
"type": "array",
|
|
118
|
+
"items": {"type": "string"},
|
|
119
|
+
"description": "AST safety warnings"
|
|
120
|
+
},
|
|
121
|
+
"allowed_modules": {
|
|
122
|
+
"type": "array",
|
|
123
|
+
"items": {"type": "string"},
|
|
124
|
+
"description": "List of allowed modules"
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"test_examples": [
|
|
131
|
+
{
|
|
132
|
+
"input": {
|
|
133
|
+
"code": "result = sum([1, 2, 3, 4, 5])"
|
|
134
|
+
},
|
|
135
|
+
"expected_output_type": "object",
|
|
136
|
+
"description": "Basic arithmetic calculation"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"input": {
|
|
140
|
+
"code": "result = x ** 2 + y ** 2",
|
|
141
|
+
"arguments": {"x": 3, "y": 4}
|
|
142
|
+
},
|
|
143
|
+
"expected_output_type": "object",
|
|
144
|
+
"description": "Calculation with variables"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"input": {
|
|
148
|
+
"code": "import math\nresult = math.sqrt(16)"
|
|
149
|
+
},
|
|
150
|
+
"expected_output_type": "object",
|
|
151
|
+
"description": "Using allowed math module"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"input": {
|
|
155
|
+
"code": "result = [i**2 for i in range(10)]"
|
|
156
|
+
},
|
|
157
|
+
"expected_output_type": "object",
|
|
158
|
+
"description": "List comprehension"
|
|
159
|
+
}
|
|
160
|
+
],
|
|
161
|
+
"metadata": {
|
|
162
|
+
"tags": [
|
|
163
|
+
"python",
|
|
164
|
+
"code-execution",
|
|
165
|
+
"sandbox",
|
|
166
|
+
"security",
|
|
167
|
+
"math",
|
|
168
|
+
"data-processing"
|
|
169
|
+
],
|
|
170
|
+
"difficulty_level": "intermediate",
|
|
171
|
+
"estimated_execution_time": "< 30 seconds"
|
|
172
|
+
},
|
|
173
|
+
"dependencies": []
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"type": "PythonScriptRunner",
|
|
177
|
+
"name": "python_script_runner",
|
|
178
|
+
"description": "Run Python script files in isolated subprocess with resource limits and timeout. Supports command-line arguments and environment variables.",
|
|
179
|
+
"parameter": {
|
|
180
|
+
"type": "object",
|
|
181
|
+
"properties": {
|
|
182
|
+
"script_path": {
|
|
183
|
+
"type": "string",
|
|
184
|
+
"description": "Path to Python script file (.py) to execute"
|
|
185
|
+
},
|
|
186
|
+
"script_args": {
|
|
187
|
+
"type": "array",
|
|
188
|
+
"items": {"type": "string"},
|
|
189
|
+
"description": "Command-line arguments to pass to the script"
|
|
190
|
+
},
|
|
191
|
+
"timeout": {
|
|
192
|
+
"type": "integer",
|
|
193
|
+
"description": "Execution timeout in seconds",
|
|
194
|
+
"default": 60,
|
|
195
|
+
"minimum": 1,
|
|
196
|
+
"maximum": 600
|
|
197
|
+
},
|
|
198
|
+
"working_directory": {
|
|
199
|
+
"type": "string",
|
|
200
|
+
"description": "Working directory for script execution (defaults to script directory)"
|
|
201
|
+
},
|
|
202
|
+
"env_vars": {
|
|
203
|
+
"type": "object",
|
|
204
|
+
"description": "Environment variables to set for script execution",
|
|
205
|
+
"additionalProperties": {"type": "string"}
|
|
206
|
+
},
|
|
207
|
+
"dependencies": {
|
|
208
|
+
"type": "array",
|
|
209
|
+
"items": {"type": "string"},
|
|
210
|
+
"description": "List of Python packages that the script depends on. Will be checked and optionally installed before execution."
|
|
211
|
+
},
|
|
212
|
+
"auto_install_dependencies": {
|
|
213
|
+
"type": "boolean",
|
|
214
|
+
"description": "Whether to automatically install missing dependencies without user confirmation",
|
|
215
|
+
"default": false
|
|
216
|
+
},
|
|
217
|
+
"require_confirmation": {
|
|
218
|
+
"type": "boolean",
|
|
219
|
+
"description": "Whether to require user confirmation before installing packages",
|
|
220
|
+
"default": true
|
|
221
|
+
}
|
|
222
|
+
},
|
|
223
|
+
"required": ["script_path"]
|
|
224
|
+
},
|
|
225
|
+
"return_schema": {
|
|
226
|
+
"type": "object",
|
|
227
|
+
"properties": {
|
|
228
|
+
"success": {
|
|
229
|
+
"type": "boolean",
|
|
230
|
+
"description": "Whether script execution succeeded"
|
|
231
|
+
},
|
|
232
|
+
"result": {
|
|
233
|
+
"type": "string",
|
|
234
|
+
"description": "Execution result message"
|
|
235
|
+
},
|
|
236
|
+
"stdout": {
|
|
237
|
+
"type": "string",
|
|
238
|
+
"description": "Standard output from the script"
|
|
239
|
+
},
|
|
240
|
+
"stderr": {
|
|
241
|
+
"type": "string",
|
|
242
|
+
"description": "Standard error output from the script"
|
|
243
|
+
},
|
|
244
|
+
"execution_time_ms": {
|
|
245
|
+
"type": "integer",
|
|
246
|
+
"description": "Execution time in milliseconds"
|
|
247
|
+
},
|
|
248
|
+
"memory_used_mb": {
|
|
249
|
+
"type": "number",
|
|
250
|
+
"description": "Memory usage in MB (if available)"
|
|
251
|
+
},
|
|
252
|
+
"error": {
|
|
253
|
+
"type": "string",
|
|
254
|
+
"description": "Error message if execution failed"
|
|
255
|
+
},
|
|
256
|
+
"error_type": {
|
|
257
|
+
"type": "string",
|
|
258
|
+
"description": "Type of error if execution failed"
|
|
259
|
+
},
|
|
260
|
+
"traceback": {
|
|
261
|
+
"type": "string",
|
|
262
|
+
"description": "Full traceback if execution failed"
|
|
263
|
+
},
|
|
264
|
+
"requires_confirmation": {
|
|
265
|
+
"type": "boolean",
|
|
266
|
+
"description": "Whether user confirmation is required for package installation"
|
|
267
|
+
},
|
|
268
|
+
"missing_packages": {
|
|
269
|
+
"type": "array",
|
|
270
|
+
"items": {"type": "string"},
|
|
271
|
+
"description": "List of packages that are missing and need to be installed"
|
|
272
|
+
},
|
|
273
|
+
"install_command": {
|
|
274
|
+
"type": "string",
|
|
275
|
+
"description": "The pip install command that would be executed"
|
|
276
|
+
},
|
|
277
|
+
"installed_packages": {
|
|
278
|
+
"type": "array",
|
|
279
|
+
"items": {"type": "string"},
|
|
280
|
+
"description": "List of packages that were successfully installed"
|
|
281
|
+
},
|
|
282
|
+
"metadata": {
|
|
283
|
+
"type": "object",
|
|
284
|
+
"properties": {
|
|
285
|
+
"code_lines": {
|
|
286
|
+
"type": "integer",
|
|
287
|
+
"description": "Number of lines in the script (if available)"
|
|
288
|
+
},
|
|
289
|
+
"ast_warnings": {
|
|
290
|
+
"type": "array",
|
|
291
|
+
"items": {"type": "string"},
|
|
292
|
+
"description": "AST safety warnings"
|
|
293
|
+
},
|
|
294
|
+
"allowed_modules": {
|
|
295
|
+
"type": "array",
|
|
296
|
+
"items": {"type": "string"},
|
|
297
|
+
"description": "List of allowed modules"
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
"test_examples": [
|
|
304
|
+
{
|
|
305
|
+
"input": {
|
|
306
|
+
"script_path": "./examples/hello_world.py"
|
|
307
|
+
},
|
|
308
|
+
"expected_output_type": "object",
|
|
309
|
+
"description": "Run a simple hello world script"
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
"input": {
|
|
313
|
+
"script_path": "./examples/data_processor.py",
|
|
314
|
+
"script_args": ["--input", "data.csv", "--output", "result.csv"]
|
|
315
|
+
},
|
|
316
|
+
"expected_output_type": "object",
|
|
317
|
+
"description": "Run script with command-line arguments"
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
"input": {
|
|
321
|
+
"script_path": "./examples/configurable_script.py",
|
|
322
|
+
"env_vars": {"DEBUG": "true", "LOG_LEVEL": "info"}
|
|
323
|
+
},
|
|
324
|
+
"expected_output_type": "object",
|
|
325
|
+
"description": "Run script with environment variables"
|
|
326
|
+
}
|
|
327
|
+
],
|
|
328
|
+
"metadata": {
|
|
329
|
+
"tags": [
|
|
330
|
+
"python",
|
|
331
|
+
"script-execution",
|
|
332
|
+
"subprocess",
|
|
333
|
+
"file-io",
|
|
334
|
+
"batch-processing"
|
|
335
|
+
],
|
|
336
|
+
"difficulty_level": "intermediate",
|
|
337
|
+
"estimated_execution_time": "< 60 seconds"
|
|
338
|
+
},
|
|
339
|
+
"dependencies": []
|
|
340
|
+
}
|
|
341
|
+
]
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "RegulomeDBRESTTool",
|
|
4
|
+
"name": "RegulomeDB_query_variant",
|
|
5
|
+
"description": "Query RegulomeDB for regulatory variant annotations using rsID",
|
|
6
|
+
"parameter": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"rsid": {"type": "string", "description": "dbSNP rsID (e.g., rs123456)"}
|
|
10
|
+
},
|
|
11
|
+
"required": ["rsid"]
|
|
12
|
+
},
|
|
13
|
+
"fields": {
|
|
14
|
+
"endpoint": "https://regulomedb.org/regulome-search/?regions={rsid}&assembly=hg19",
|
|
15
|
+
"return_format": "JSON"
|
|
16
|
+
},
|
|
17
|
+
"return_schema": {
|
|
18
|
+
"type": "object",
|
|
19
|
+
"properties": {
|
|
20
|
+
"rsid": {"type": "string"},
|
|
21
|
+
"chromosome": {"type": "string"},
|
|
22
|
+
"position": {"type": "integer"},
|
|
23
|
+
"ref_allele": {"type": "string"},
|
|
24
|
+
"alt_allele": {"type": "string"},
|
|
25
|
+
"regulome_score": {"type": "string"},
|
|
26
|
+
"regulome_evidence": {"type": "array"},
|
|
27
|
+
"regulatory_features": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"properties": {
|
|
32
|
+
"feature_type": {"type": "string"},
|
|
33
|
+
"cell_type": {"type": "string"},
|
|
34
|
+
"evidence": {"type": "string"},
|
|
35
|
+
"score": {"type": "number"}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
"motif_break": {"type": "boolean"},
|
|
40
|
+
"motif_name": {"type": "string"},
|
|
41
|
+
"motif_score": {"type": "number"},
|
|
42
|
+
"motif_concordance": {"type": "string"}
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"test_examples": [
|
|
46
|
+
{"rsid": "rs123456"},
|
|
47
|
+
{"rsid": "rs429358"}
|
|
48
|
+
]
|
|
49
|
+
}
|
|
50
|
+
]
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"type": "ReMapRESTTool",
|
|
4
|
+
"name": "ReMap_get_transcription_factor_binding",
|
|
5
|
+
"description": "Get transcription factor binding sites from ReMap database for specific genes and cell types",
|
|
6
|
+
"parameter": {
|
|
7
|
+
"type": "object",
|
|
8
|
+
"properties": {
|
|
9
|
+
"gene_name": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "Gene symbol (e.g., BRCA1, TP53, MYC)"
|
|
12
|
+
},
|
|
13
|
+
"cell_type": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"description": "Cell type (e.g., HepG2, K562, MCF-7)",
|
|
16
|
+
"default": "HepG2"
|
|
17
|
+
},
|
|
18
|
+
"limit": {
|
|
19
|
+
"type": "integer",
|
|
20
|
+
"description": "Number of results to return",
|
|
21
|
+
"default": 10,
|
|
22
|
+
"minimum": 1,
|
|
23
|
+
"maximum": 50
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"required": [
|
|
27
|
+
"gene_name"
|
|
28
|
+
]
|
|
29
|
+
},
|
|
30
|
+
"fields": {
|
|
31
|
+
"endpoint": "https://www.encodeproject.org/search/?type=Experiment&assay_title=ChIP-seq&target.label={gene_name}&biosample_ontology.term_name={cell_type}&format=json&limit={limit}",
|
|
32
|
+
"return_format": "JSON"
|
|
33
|
+
},
|
|
34
|
+
"return_schema": {
|
|
35
|
+
"type": "object",
|
|
36
|
+
"properties": {
|
|
37
|
+
"experiments": {
|
|
38
|
+
"type": "array",
|
|
39
|
+
"items": {
|
|
40
|
+
"type": "object",
|
|
41
|
+
"properties": {
|
|
42
|
+
"accession": {
|
|
43
|
+
"type": "string"
|
|
44
|
+
},
|
|
45
|
+
"assay_title": {
|
|
46
|
+
"type": "string"
|
|
47
|
+
},
|
|
48
|
+
"target": {
|
|
49
|
+
"type": "object"
|
|
50
|
+
},
|
|
51
|
+
"biosample_ontology": {
|
|
52
|
+
"type": "object"
|
|
53
|
+
},
|
|
54
|
+
"description": {
|
|
55
|
+
"type": "string"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"gene_name": {
|
|
61
|
+
"type": "string"
|
|
62
|
+
},
|
|
63
|
+
"cell_type": {
|
|
64
|
+
"type": "string"
|
|
65
|
+
},
|
|
66
|
+
"count": {
|
|
67
|
+
"type": "integer"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"test_examples": [
|
|
72
|
+
{
|
|
73
|
+
"gene_name": "BRCA1",
|
|
74
|
+
"cell_type": "HepG2",
|
|
75
|
+
"limit": 5
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"gene_name": "TP53",
|
|
79
|
+
"cell_type": "K562",
|
|
80
|
+
"limit": 3
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"gene_name": "MYC",
|
|
84
|
+
"cell_type": "MCF-7",
|
|
85
|
+
"limit": 5
|
|
86
|
+
}
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
]
|