tooluniverse 0.1.4__py3-none-any.whl → 1.0.0__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 (187) hide show
  1. tooluniverse/__init__.py +340 -4
  2. tooluniverse/admetai_tool.py +84 -0
  3. tooluniverse/agentic_tool.py +563 -0
  4. tooluniverse/alphafold_tool.py +96 -0
  5. tooluniverse/base_tool.py +129 -6
  6. tooluniverse/boltz_tool.py +207 -0
  7. tooluniverse/chem_tool.py +192 -0
  8. tooluniverse/compose_scripts/__init__.py +1 -0
  9. tooluniverse/compose_scripts/biomarker_discovery.py +293 -0
  10. tooluniverse/compose_scripts/comprehensive_drug_discovery.py +186 -0
  11. tooluniverse/compose_scripts/drug_safety_analyzer.py +89 -0
  12. tooluniverse/compose_scripts/literature_tool.py +34 -0
  13. tooluniverse/compose_scripts/output_summarizer.py +279 -0
  14. tooluniverse/compose_scripts/tool_description_optimizer.py +681 -0
  15. tooluniverse/compose_scripts/tool_discover.py +705 -0
  16. tooluniverse/compose_scripts/tool_graph_composer.py +448 -0
  17. tooluniverse/compose_tool.py +371 -0
  18. tooluniverse/ctg_tool.py +1002 -0
  19. tooluniverse/custom_tool.py +81 -0
  20. tooluniverse/dailymed_tool.py +108 -0
  21. tooluniverse/data/admetai_tools.json +155 -0
  22. tooluniverse/data/agentic_tools.json +1156 -0
  23. tooluniverse/data/alphafold_tools.json +87 -0
  24. tooluniverse/data/boltz_tools.json +9 -0
  25. tooluniverse/data/chembl_tools.json +16 -0
  26. tooluniverse/data/clait_tools.json +108 -0
  27. tooluniverse/data/clinicaltrials_gov_tools.json +326 -0
  28. tooluniverse/data/compose_tools.json +202 -0
  29. tooluniverse/data/dailymed_tools.json +70 -0
  30. tooluniverse/data/dataset_tools.json +646 -0
  31. tooluniverse/data/disease_target_score_tools.json +712 -0
  32. tooluniverse/data/efo_tools.json +17 -0
  33. tooluniverse/data/embedding_tools.json +319 -0
  34. tooluniverse/data/enrichr_tools.json +31 -0
  35. tooluniverse/data/europe_pmc_tools.json +22 -0
  36. tooluniverse/data/expert_feedback_tools.json +10 -0
  37. tooluniverse/data/fda_drug_adverse_event_tools.json +491 -0
  38. tooluniverse/data/fda_drug_labeling_tools.json +544 -168
  39. tooluniverse/data/fda_drugs_with_brand_generic_names_for_tool.py +76929 -148860
  40. tooluniverse/data/finder_tools.json +209 -0
  41. tooluniverse/data/gene_ontology_tools.json +113 -0
  42. tooluniverse/data/gwas_tools.json +1082 -0
  43. tooluniverse/data/hpa_tools.json +333 -0
  44. tooluniverse/data/humanbase_tools.json +47 -0
  45. tooluniverse/data/idmap_tools.json +74 -0
  46. tooluniverse/data/mcp_client_tools_example.json +113 -0
  47. tooluniverse/data/mcpautoloadertool_defaults.json +28 -0
  48. tooluniverse/data/medlineplus_tools.json +141 -0
  49. tooluniverse/data/monarch_tools.json +1 -1
  50. tooluniverse/data/openalex_tools.json +36 -0
  51. tooluniverse/data/opentarget_tools.json +82 -58
  52. tooluniverse/data/output_summarization_tools.json +101 -0
  53. tooluniverse/data/packages/bioinformatics_core_tools.json +1756 -0
  54. tooluniverse/data/packages/categorized_tools.txt +206 -0
  55. tooluniverse/data/packages/cheminformatics_tools.json +347 -0
  56. tooluniverse/data/packages/earth_sciences_tools.json +74 -0
  57. tooluniverse/data/packages/genomics_tools.json +776 -0
  58. tooluniverse/data/packages/image_processing_tools.json +38 -0
  59. tooluniverse/data/packages/machine_learning_tools.json +789 -0
  60. tooluniverse/data/packages/neuroscience_tools.json +62 -0
  61. tooluniverse/data/packages/original_tools.txt +0 -0
  62. tooluniverse/data/packages/physics_astronomy_tools.json +62 -0
  63. tooluniverse/data/packages/scientific_computing_tools.json +560 -0
  64. tooluniverse/data/packages/single_cell_tools.json +453 -0
  65. tooluniverse/data/packages/software_tools.json +4954 -0
  66. tooluniverse/data/packages/structural_biology_tools.json +396 -0
  67. tooluniverse/data/packages/visualization_tools.json +399 -0
  68. tooluniverse/data/pubchem_tools.json +215 -0
  69. tooluniverse/data/pubtator_tools.json +68 -0
  70. tooluniverse/data/rcsb_pdb_tools.json +1332 -0
  71. tooluniverse/data/reactome_tools.json +19 -0
  72. tooluniverse/data/semantic_scholar_tools.json +26 -0
  73. tooluniverse/data/special_tools.json +2 -25
  74. tooluniverse/data/tool_composition_tools.json +88 -0
  75. tooluniverse/data/toolfinderkeyword_defaults.json +34 -0
  76. tooluniverse/data/txagent_client_tools.json +9 -0
  77. tooluniverse/data/uniprot_tools.json +211 -0
  78. tooluniverse/data/url_fetch_tools.json +94 -0
  79. tooluniverse/data/uspto_downloader_tools.json +9 -0
  80. tooluniverse/data/uspto_tools.json +811 -0
  81. tooluniverse/data/xml_tools.json +3275 -0
  82. tooluniverse/dataset_tool.py +296 -0
  83. tooluniverse/default_config.py +165 -0
  84. tooluniverse/efo_tool.py +42 -0
  85. tooluniverse/embedding_database.py +630 -0
  86. tooluniverse/embedding_sync.py +396 -0
  87. tooluniverse/enrichr_tool.py +266 -0
  88. tooluniverse/europe_pmc_tool.py +52 -0
  89. tooluniverse/execute_function.py +1775 -95
  90. tooluniverse/extended_hooks.py +444 -0
  91. tooluniverse/gene_ontology_tool.py +194 -0
  92. tooluniverse/graphql_tool.py +158 -36
  93. tooluniverse/gwas_tool.py +358 -0
  94. tooluniverse/hpa_tool.py +1645 -0
  95. tooluniverse/humanbase_tool.py +389 -0
  96. tooluniverse/logging_config.py +254 -0
  97. tooluniverse/mcp_client_tool.py +764 -0
  98. tooluniverse/mcp_integration.py +413 -0
  99. tooluniverse/mcp_tool_registry.py +925 -0
  100. tooluniverse/medlineplus_tool.py +337 -0
  101. tooluniverse/openalex_tool.py +228 -0
  102. tooluniverse/openfda_adv_tool.py +283 -0
  103. tooluniverse/openfda_tool.py +393 -160
  104. tooluniverse/output_hook.py +1122 -0
  105. tooluniverse/package_tool.py +195 -0
  106. tooluniverse/pubchem_tool.py +158 -0
  107. tooluniverse/pubtator_tool.py +168 -0
  108. tooluniverse/rcsb_pdb_tool.py +38 -0
  109. tooluniverse/reactome_tool.py +108 -0
  110. tooluniverse/remote/boltz/boltz_mcp_server.py +50 -0
  111. tooluniverse/remote/depmap_24q2/depmap_24q2_mcp_tool.py +442 -0
  112. tooluniverse/remote/expert_feedback/human_expert_mcp_tools.py +2013 -0
  113. tooluniverse/remote/expert_feedback/simple_test.py +23 -0
  114. tooluniverse/remote/expert_feedback/start_web_interface.py +188 -0
  115. tooluniverse/remote/expert_feedback/web_only_interface.py +0 -0
  116. tooluniverse/remote/expert_feedback_mcp/human_expert_mcp_server.py +1611 -0
  117. tooluniverse/remote/expert_feedback_mcp/simple_test.py +34 -0
  118. tooluniverse/remote/expert_feedback_mcp/start_web_interface.py +91 -0
  119. tooluniverse/remote/immune_compass/compass_tool.py +327 -0
  120. tooluniverse/remote/pinnacle/pinnacle_tool.py +328 -0
  121. tooluniverse/remote/transcriptformer/transcriptformer_tool.py +586 -0
  122. tooluniverse/remote/uspto_downloader/uspto_downloader_mcp_server.py +61 -0
  123. tooluniverse/remote/uspto_downloader/uspto_downloader_tool.py +120 -0
  124. tooluniverse/remote_tool.py +99 -0
  125. tooluniverse/restful_tool.py +53 -30
  126. tooluniverse/scripts/generate_tool_graph.py +408 -0
  127. tooluniverse/scripts/visualize_tool_graph.py +829 -0
  128. tooluniverse/semantic_scholar_tool.py +62 -0
  129. tooluniverse/smcp.py +2452 -0
  130. tooluniverse/smcp_server.py +975 -0
  131. tooluniverse/test/mcp_server_test.py +0 -0
  132. tooluniverse/test/test_admetai_tool.py +370 -0
  133. tooluniverse/test/test_agentic_tool.py +129 -0
  134. tooluniverse/test/test_alphafold_tool.py +71 -0
  135. tooluniverse/test/test_chem_tool.py +37 -0
  136. tooluniverse/test/test_compose_lieraturereview.py +63 -0
  137. tooluniverse/test/test_compose_tool.py +448 -0
  138. tooluniverse/test/test_dailymed.py +69 -0
  139. tooluniverse/test/test_dataset_tool.py +200 -0
  140. tooluniverse/test/test_disease_target_score.py +56 -0
  141. tooluniverse/test/test_drugbank_filter_examples.py +179 -0
  142. tooluniverse/test/test_efo.py +31 -0
  143. tooluniverse/test/test_enrichr_tool.py +21 -0
  144. tooluniverse/test/test_europe_pmc_tool.py +20 -0
  145. tooluniverse/test/test_fda_adv.py +95 -0
  146. tooluniverse/test/test_fda_drug_labeling.py +91 -0
  147. tooluniverse/test/test_gene_ontology_tools.py +66 -0
  148. tooluniverse/test/test_gwas_tool.py +139 -0
  149. tooluniverse/test/test_hpa.py +625 -0
  150. tooluniverse/test/test_humanbase_tool.py +20 -0
  151. tooluniverse/test/test_idmap_tools.py +61 -0
  152. tooluniverse/test/test_mcp_server.py +211 -0
  153. tooluniverse/test/test_mcp_tool.py +247 -0
  154. tooluniverse/test/test_medlineplus.py +220 -0
  155. tooluniverse/test/test_openalex_tool.py +32 -0
  156. tooluniverse/test/test_opentargets.py +28 -0
  157. tooluniverse/test/test_pubchem_tool.py +116 -0
  158. tooluniverse/test/test_pubtator_tool.py +37 -0
  159. tooluniverse/test/test_rcsb_pdb_tool.py +86 -0
  160. tooluniverse/test/test_reactome.py +54 -0
  161. tooluniverse/test/test_semantic_scholar_tool.py +24 -0
  162. tooluniverse/test/test_software_tools.py +147 -0
  163. tooluniverse/test/test_tool_description_optimizer.py +49 -0
  164. tooluniverse/test/test_tool_finder.py +26 -0
  165. tooluniverse/test/test_tool_finder_llm.py +252 -0
  166. tooluniverse/test/test_tools_find.py +195 -0
  167. tooluniverse/test/test_uniprot_tools.py +74 -0
  168. tooluniverse/test/test_uspto_tool.py +72 -0
  169. tooluniverse/test/test_xml_tool.py +113 -0
  170. tooluniverse/tool_finder_embedding.py +267 -0
  171. tooluniverse/tool_finder_keyword.py +693 -0
  172. tooluniverse/tool_finder_llm.py +699 -0
  173. tooluniverse/tool_graph_web_ui.py +955 -0
  174. tooluniverse/tool_registry.py +416 -0
  175. tooluniverse/uniprot_tool.py +155 -0
  176. tooluniverse/url_tool.py +253 -0
  177. tooluniverse/uspto_tool.py +240 -0
  178. tooluniverse/utils.py +369 -41
  179. tooluniverse/xml_tool.py +369 -0
  180. tooluniverse-1.0.0.dist-info/METADATA +377 -0
  181. tooluniverse-1.0.0.dist-info/RECORD +186 -0
  182. {tooluniverse-0.1.4.dist-info → tooluniverse-1.0.0.dist-info}/WHEEL +1 -1
  183. tooluniverse-1.0.0.dist-info/entry_points.txt +9 -0
  184. tooluniverse-0.1.4.dist-info/METADATA +0 -141
  185. tooluniverse-0.1.4.dist-info/RECORD +0 -18
  186. {tooluniverse-0.1.4.dist-info → tooluniverse-1.0.0.dist-info}/licenses/LICENSE +0 -0
  187. {tooluniverse-0.1.4.dist-info → tooluniverse-1.0.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,333 @@
1
+ [
2
+ {
3
+ "type": "HPASearchGenesTool",
4
+ "name": "HPA_search_genes_by_query",
5
+ "description": "Search for matching genes by gene name, keywords, or cell line names and return Ensembl ID list. This is the entry tool for many HPA query workflows.",
6
+ "fields": {
7
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
8
+ "timeout": 30,
9
+ "format": "json"
10
+ },
11
+ "parameter": {
12
+ "type": "object",
13
+ "properties": {
14
+ "search_query": {
15
+ "type": "string",
16
+ "description": "Gene name, alias, keyword, or cell line name to search for, e.g., 'EGFR', 'TP53', or 'MCF7'."
17
+ }
18
+ },
19
+ "required": ["search_query"]
20
+ },
21
+ "input_description": "Input a search query string such as 'BCAS1' or 'MCF7'. The tool will search HPA database for matching genes.",
22
+ "output_description": "Returns a list containing all matching genes, each with official name, Ensembl ID, and known synonyms. Use the Ensembl ID for subsequent detailed queries."
23
+ },
24
+ {
25
+ "type": "HPAGetComparativeExpressionTool",
26
+ "name": "HPA_get_comparative_expression_by_gene_and_cellline",
27
+ "description": "Compare the expression level differences of a gene between a specific cell line and healthy tissues using gene name and cell line name.",
28
+ "fields": {
29
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
30
+ "timeout": 30,
31
+ "format": "json"
32
+ },
33
+ "parameter": {
34
+ "type": "object",
35
+ "properties": {
36
+ "gene_name": {
37
+ "type": "string",
38
+ "description": "Gene name or gene symbol, e.g., 'TP53', 'BRCA1', 'EGFR', etc."
39
+ },
40
+ "cell_line": {
41
+ "type": "string",
42
+ "description": "Cell line name, supported cell lines include: ishikawa, hela, mcf7, a549, hepg2, jurkat, pc3, rh30, siha, u251."
43
+ }
44
+ },
45
+ "required": ["gene_name", "cell_line"]
46
+ },
47
+ "input_description": "Input gene name (e.g., TP53) and cell line name (e.g., hela). The tool will query the RNA expression level of the specified gene in the specific cell line and simultaneously obtain and compare the average expression level of the gene in healthy tissues.",
48
+ "output_description": "Returns comparison results containing gene basic information, cell line expression value, and healthy tissue expression value. Provides expression values in nTPM units and textual description of expression level differences. Includes gene symbol, synonyms, expression unit explanation, and detailed comparison summary."
49
+ },
50
+ {
51
+ "type": "HPAGetDiseaseExpressionTool",
52
+ "name": "HPA_get_disease_expression_by_gene_tissue_disease",
53
+ "description": "Compare the expression level of a gene in specific disease state versus healthy state using gene name, tissue type, and disease name.",
54
+ "fields": {
55
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
56
+ "timeout": 30,
57
+ "format": "json"
58
+ },
59
+ "parameter": {
60
+ "type": "object",
61
+ "properties": {
62
+ "gene_name": {
63
+ "type": "string",
64
+ "description": "Gene name or gene symbol, e.g., 'TP53', 'BRCA1', 'KRAS', etc."
65
+ },
66
+ "tissue_type": {
67
+ "type": "string",
68
+ "description": "Tissue type, e.g., 'brain', 'breast', 'colon', 'lung', etc., optional parameter."
69
+ },
70
+ "disease_name": {
71
+ "type": "string",
72
+ "description": "Disease name, supported diseases include: brain_cancer, breast_cancer, colon_cancer, lung_cancer, liver_cancer, prostate_cancer, kidney_cancer, pancreatic_cancer, stomach_cancer, ovarian_cancer."
73
+ }
74
+ },
75
+ "required": ["gene_name", "disease_name"]
76
+ },
77
+ "input_description": "Input gene name (e.g., BRCA1) and disease name (e.g., breast_cancer). Optionally specify tissue type to precisely locate disease-related tissue. The tool will query the RNA expression level of the specified gene in disease state.",
78
+ "output_description": "Returns comparison analysis of gene expression in disease state versus healthy state. Contains nTPM values for disease expression and healthy expression. Provides fold change analysis and determination of expression up/down regulation."
79
+ },
80
+ {
81
+ "type": "HPAGetBiologicalProcessTool",
82
+ "name": "HPA_get_biological_processes_by_gene",
83
+ "description": "Get biological process information for a gene, with special focus on key processes like apoptosis, cell cycle, etc.",
84
+ "fields": {
85
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
86
+ "timeout": 30,
87
+ "format": "json"
88
+ },
89
+ "parameter": {
90
+ "type": "object",
91
+ "properties": {
92
+ "gene_name": {
93
+ "type": "string",
94
+ "description": "Gene name or gene symbol, e.g., 'TP53', 'CDK1', 'CASP3', etc."
95
+ },
96
+ "filter_processes": {
97
+ "type": "boolean",
98
+ "description": "Whether to filter and focus on specific biological processes (apoptosis, cell cycle, transcription regulation, etc.), defaults to true."
99
+ }
100
+ },
101
+ "required": ["gene_name"]
102
+ },
103
+ "input_description": "Input gene name (e.g., TP53). Optionally choose whether to filter specific biological process categories. The tool will retrieve gene function annotation information from Human Protein Atlas.",
104
+ "output_description": "Returns list of all biological processes the gene is involved in. Highlights target processes (apoptosis, biological rhythm, cell cycle, host-virus interaction, necrosis, transcription, transcription regulation). Provides total process count statistics and detailed descriptions of target processes."
105
+ },
106
+ {
107
+ "type": "HPAGetGenePageDetailsTool",
108
+ "name": "HPA_get_comprehensive_gene_details_by_ensembl_id",
109
+ "description": "Get detailed in-depth information from gene page using Ensembl Gene ID, including image URLs, antibody data, protein expression, and comprehensive information. This is the core tool for retrieving all images (tissue immunohistochemistry, subcellular immunofluorescence).",
110
+ "fields": {
111
+ "endpoint": "https://www.proteinatlas.org/{ensembl_id}.xml",
112
+ "timeout": 30,
113
+ "format": "xml"
114
+ },
115
+ "parameter": {
116
+ "type": "object",
117
+ "properties": {
118
+ "ensembl_id": {
119
+ "type": "string",
120
+ "description": "Ensembl Gene ID, e.g., 'ENSG00000064787' (BCAS1), 'ENSG00000141510' (TP53), etc. Usually obtained through HPA_search_genes_by_query tool."
121
+ },
122
+ "include_images": {
123
+ "type": "boolean",
124
+ "description": "Whether to include image URL information (immunofluorescence, cell line images, etc.), defaults to true."
125
+ },
126
+ "include_antibodies": {
127
+ "type": "boolean",
128
+ "description": "Whether to include detailed antibody information (validation status, Western blot data, etc.), defaults to true."
129
+ },
130
+ "include_expression": {
131
+ "type": "boolean",
132
+ "description": "Whether to include detailed expression data (tissue specificity, subcellular localization, etc.), defaults to true."
133
+ }
134
+ },
135
+ "required": ["ensembl_id"]
136
+ },
137
+ "input_description": "Input Ensembl Gene ID (e.g., ENSG00000064787). The tool will parse HPA's single gene XML page to get the most comprehensive data. Optionally include detailed information for images, antibodies, and expression data.",
138
+ "output_description": "Returns comprehensive gene details including basic information, tissue immunohistochemistry (IHC) image URL list with metadata, subcellular immunofluorescence (IF) image URL list with metadata, antibody validation data, detailed expression data for tissues and cell lines, subcellular localization information, and statistical summary (antibody count, image count, expression tissue count, etc.)."
139
+ },
140
+ {
141
+ "type": "HPAGetCancerPrognosticsTool",
142
+ "name": "HPA_get_cancer_prognostics_by_gene",
143
+ "description": "Retrieve prognostic value of a gene across various cancer types, indicating if its expression level correlates with patient survival outcomes.",
144
+ "fields": {
145
+ "endpoint": "https://www.proteinatlas.org/{ensembl_id}.json",
146
+ "timeout": 30,
147
+ "format": "json"
148
+ },
149
+ "parameter": {
150
+ "type": "object",
151
+ "properties": {
152
+ "ensembl_id": {
153
+ "type": "string",
154
+ "description": "Ensembl Gene ID of the gene to check, e.g., 'ENSG00000141510' for TP53, 'ENSG00000012048' for BRCA1."
155
+ }
156
+ },
157
+ "required": ["ensembl_id"]
158
+ },
159
+ "input_description": "Input a single Ensembl Gene ID. The tool will use HPA's efficient JSON API to retrieve cancer prognostic data.",
160
+ "output_description": "Returns a list of cancers where the gene has significant prognostic value, including the prognostic type (favorable/unfavorable), p-value, and summary statistics. Explains whether high/low expression correlates with better/worse patient survival."
161
+ },
162
+ {
163
+ "type": "HPAGetProteinInteractionsTool",
164
+ "name": "HPA_get_protein_interactions_by_gene",
165
+ "description": "Fetch known protein-protein interaction partners for a given gene from Human Protein Atlas database.",
166
+ "fields": {
167
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
168
+ "timeout": 30,
169
+ "format": "json"
170
+ },
171
+ "parameter": {
172
+ "type": "object",
173
+ "properties": {
174
+ "gene_name": {
175
+ "type": "string",
176
+ "description": "Official gene symbol, e.g., 'EGFR', 'TP53', 'BRCA1', etc."
177
+ }
178
+ },
179
+ "required": ["gene_name"]
180
+ },
181
+ "input_description": "Input a single gene name. The tool will query HPA's protein-protein interaction database.",
182
+ "output_description": "Returns a list of proteins that are known to interact with the protein product of the queried gene. Includes interaction partner count and detailed interaction summary."
183
+ },
184
+ {
185
+ "type": "HPAGetRnaExpressionByTissueTool",
186
+ "name": "HPA_get_rna_expression_in_specific_tissues",
187
+ "description": "Query RNA expression levels (nTPM) for a specific gene in one or more user-specified tissues with precise tissue matching.",
188
+ "fields": {
189
+ "endpoint": "https://www.proteinatlas.org/{ensembl_id}.json",
190
+ "timeout": 30,
191
+ "format": "json"
192
+ },
193
+ "parameter": {
194
+ "type": "object",
195
+ "properties": {
196
+ "ensembl_id": {
197
+ "type": "string",
198
+ "description": "Ensembl Gene ID for the gene, e.g., 'ENSG00000141510' for TP53."
199
+ },
200
+ "tissue_names": {
201
+ "type": "array",
202
+ "items": { "type": "string" },
203
+ "description": "List of tissue names to query, e.g., ['brain', 'liver', 'heart muscle', 'kidney']. Case-insensitive matching is supported."
204
+ }
205
+ },
206
+ "required": ["ensembl_id", "tissue_names"]
207
+ },
208
+ "input_description": "Input an Ensembl Gene ID and a list of tissue names. The tool will perform intelligent tissue name matching.",
209
+ "output_description": "Returns a dictionary mapping queried tissue names to their expression data, including matched tissue name, expression value in nTPM, and categorized expression level (Very high/High/Medium/Low/Very low). Also provides a sample of available tissues for reference."
210
+ },
211
+ {
212
+ "type": "HPAGetContextualBiologicalProcessTool",
213
+ "name": "HPA_get_contextual_biological_process_analysis",
214
+ "description": "Analyze a gene's biological processes in the context of a specific tissue or cell line by integrating functional annotation with expression data to determine functional relevance.",
215
+ "fields": {
216
+ "endpoint": "composite_workflow",
217
+ "timeout": 60,
218
+ "format": "json"
219
+ },
220
+ "parameter": {
221
+ "type": "object",
222
+ "properties": {
223
+ "gene_name": {
224
+ "type": "string",
225
+ "description": "Gene name or symbol, e.g., 'TP53', 'EGFR', 'BRCA1'."
226
+ },
227
+ "context_name": {
228
+ "type": "string",
229
+ "description": "Name of the tissue or cell line to provide context, e.g., 'brain', 'liver', 'hela', 'mcf7'."
230
+ }
231
+ },
232
+ "required": ["gene_name", "context_name"]
233
+ },
234
+ "input_description": "Input a gene name and a context (tissue or cell line name). This composite tool will perform multi-step analysis combining biological processes and expression data.",
235
+ "output_description": "Returns a comprehensive contextual analysis including: gene's biological processes, expression level in the specified context, contextual conclusion about functional relevance, and intelligent interpretation of whether the gene's roles are likely important in the given tissue/cell line context."
236
+ },
237
+ {
238
+ "type": "HPAGetRnaExpressionBySourceTool",
239
+ "name": "HPA_get_rna_expression_by_source",
240
+ "description": "Get RNA expression level (nTPM) for a gene in a specific biological source using optimized columns parameter. Supports tissue, blood, brain, and single_cell source types with comprehensive source mappings.",
241
+ "fields": {
242
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
243
+ "timeout": 30,
244
+ "format": "json"
245
+ },
246
+ "parameter": {
247
+ "type": "object",
248
+ "properties": {
249
+ "gene_name": {
250
+ "type": "string",
251
+ "description": "Gene name or gene symbol, e.g., 'GFAP', 'TP53', 'BRCA1', etc."
252
+ },
253
+ "source_type": {
254
+ "type": "string",
255
+ "description": "The type of biological source. Choose from: 'tissue', 'blood', 'brain', 'single_cell'."
256
+ },
257
+ "source_name": {
258
+ "type": "string",
259
+ "description": "The specific name of the biological source, e.g., 'liver', 'heart_muscle', 't_cell', 'hepatocytes', 'cerebellum'. Must be a valid name from the comprehensive HPA columns mapping."
260
+ }
261
+ },
262
+ "required": ["gene_name", "source_type", "source_name"]
263
+ },
264
+ "input_description": "Input gene name (e.g., GFAP), source type (tissue/blood/brain/single_cell), and specific source name (e.g., liver). The tool will directly query the specific column for highly efficient data retrieval.",
265
+ "output_description": "Returns precise RNA expression data with nTPM value, expression level categorization (Very high/High/Medium/Low/Very low), and metadata about the query. Includes gene information, source details, expression unit explanation, and the specific data column used."
266
+ },
267
+ {
268
+ "type": "HPAGetSubcellularLocationTool",
269
+ "name": "HPA_get_subcellular_location",
270
+ "description": "Get annotated subcellular locations for a protein using optimized columns parameter. Retrieves both main and additional subcellular locations efficiently.",
271
+ "fields": {
272
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
273
+ "timeout": 30,
274
+ "format": "json"
275
+ },
276
+ "parameter": {
277
+ "type": "object",
278
+ "properties": {
279
+ "gene_name": {
280
+ "type": "string",
281
+ "description": "Gene name or gene symbol, e.g., 'CCNB1', 'TP53', 'EGFR', etc."
282
+ }
283
+ },
284
+ "required": ["gene_name"]
285
+ },
286
+ "input_description": "Input gene name (e.g., CCNB1). The tool will use optimized scml and scal columns to efficiently retrieve subcellular location annotations.",
287
+ "output_description": "Returns comprehensive subcellular location data including main locations (primary sites), additional locations (secondary sites), total location count, and a formatted location summary. Provides both structured data and human-readable summary."
288
+ },
289
+ {
290
+ "type": "HPAGetGeneJSONTool",
291
+ "name": "HPA_get_gene_basic_info_by_ensembl_id",
292
+ "description": "Get gene basic information and expression data from Human Protein Atlas using Ensembl Gene ID. Enhanced version now uses efficient JSON API.",
293
+ "fields": {
294
+ "endpoint": "https://www.proteinatlas.org/{ensembl_id}.json",
295
+ "timeout": 30,
296
+ "format": "json"
297
+ },
298
+ "parameter": {
299
+ "type": "object",
300
+ "properties": {
301
+ "ensembl_id": {
302
+ "type": "string",
303
+ "description": "Ensembl Gene ID, e.g., 'ENSG00000134057', 'ENSG00000141510', etc."
304
+ }
305
+ },
306
+ "required": ["ensembl_id"]
307
+ },
308
+ "input_description": "Input Ensembl Gene ID (e.g., ENSG00000134057). This enhanced tool now uses HPA's direct JSON API for more comprehensive and faster data retrieval.",
309
+ "output_description": "Returns gene information in compatible JSON format including Ensembl ID, gene name, gene synonyms, Uniprot ID, biological process annotations, and comprehensive RNA tissue-specific expression data."
310
+ },
311
+ {
312
+ "type": "HPAGetGeneXMLTool",
313
+ "name": "HPA_get_gene_tsv_data_by_ensembl_id",
314
+ "description": "Get detailed gene data in TSV format from Human Protein Atlas using Ensembl Gene ID (backward compatibility tool).",
315
+ "fields": {
316
+ "endpoint": "https://www.proteinatlas.org/api/search_download.php",
317
+ "timeout": 30,
318
+ "format": "tsv"
319
+ },
320
+ "parameter": {
321
+ "type": "object",
322
+ "properties": {
323
+ "ensembl_id": {
324
+ "type": "string",
325
+ "description": "Ensembl Gene ID, e.g., 'ENSG00000134057', 'ENSG00000141510', etc."
326
+ }
327
+ },
328
+ "required": ["ensembl_id"]
329
+ },
330
+ "input_description": "Input Ensembl Gene ID (e.g., ENSG00000134057). This tool uses TSV format to get detailed gene expression and annotation data.",
331
+ "output_description": "Returns detailed gene data in TSV format. Includes gene basic information, biological processes, RNA expression levels, and covers expression data from multiple cell lines for in-depth analysis."
332
+ }
333
+ ]
@@ -0,0 +1,47 @@
1
+ [
2
+ {
3
+ "type": "HumanBaseTool",
4
+ "name": "humanbase_ppi_analysis",
5
+ "description": "Retrieve tissue-specific protein-protein interactions and biological processes from HumanBase. Returns a NetworkX graph of tissue specific protein-protein interactions and a list of associated biological processes involeed by the given genes from Gene Ontology.",
6
+ "parameter": {
7
+ "type": "object",
8
+ "properties": {
9
+ "gene_list": {
10
+ "type": "array",
11
+ "items": {"type": "string"},
12
+ "description": "List of gene names or symbols to analyze for protein-protein interactions. The gene name should be the official gene symbol, not the synonym.",
13
+ "minItems": 1
14
+ },
15
+ "tissue": {
16
+ "type": "string",
17
+ "description": "Tissue type for tissue-specific interactions. Examples: 'brain', 'heart', 'liver', 'kidney', etc.",
18
+ "default": "brain"
19
+ },
20
+ "max_node": {
21
+ "type": "integer",
22
+ "description": "Maximum number of nodes to retrieve in the interaction network. Warning: the more nodes, the more time it takes to retrieve the data. Default is 10 (~30 seconds).",
23
+ "default": 10,
24
+ "minimum": 1,
25
+ "maximum": 100
26
+ },
27
+ "interaction": {
28
+ "type": "string",
29
+ "description": "Specific interaction type to filter by. Available types: 'co-expression', 'interaction', 'tf-binding', 'gsea-microrna-targets', 'gsea-perturbations'. If not specified, all types will be included.",
30
+ "enum": [
31
+ "co-expression",
32
+ "interaction",
33
+ "tf-binding",
34
+ "gsea-microrna-targets",
35
+ "gsea-perturbations"
36
+ ]
37
+ },
38
+ "string_mode": {
39
+ "type": "boolean",
40
+ "description": "Whether to return the result in string mode. If True, the result will be a string of the network graph and the biological processes. If False, the result will be a NetworkX graph and a list of biological processes.",
41
+ "default": true
42
+ }
43
+ },
44
+ "required": ["gene_list"]
45
+ }
46
+ }
47
+ ]
@@ -0,0 +1,74 @@
1
+ [
2
+ {
3
+ "name": "OpenTargets_get_disease_ids_by_name",
4
+ "description": "Given a disease or phenotype name, find all cross-referenced external IDs (e.g., OMIM, MONDO, MeSH, ICD10, UMLS, MedDRA, NCIt, Orphanet) using Open Targets GraphQL API.",
5
+ "label": [
6
+ "Disease",
7
+ "Phenotype",
8
+ "External ID",
9
+ "Cross-reference",
10
+ "OpenTarget",
11
+ "GraphQL"
12
+ ],
13
+ "parameter": {
14
+ "type": "object",
15
+ "properties": {
16
+ "name": {
17
+ "type": "string",
18
+ "description": "The name of the disease or phenotype (e.g. 'rheumatoid arthritis').",
19
+ "required": true
20
+ }
21
+ }
22
+ },
23
+ "query_schema": "query getDiseaseDbXRefsByName($name: String!) {\n search(queryString: $name, entityNames: [\"disease\"], page: { index: 0, size: 1 }) {\n hits {\n id\n name\n object {\n ... on Disease {\n id\n name\n dbXRefs\n }\n }\n }\n }\n}",
24
+ "type": "OpenTarget"
25
+ },
26
+ {
27
+ "name": "OpenTargets_get_disease_ids_by_efoId",
28
+ "description": "Given an EFO ID, retrieve all cross-referenced external disease IDs including MONDO, OMIM, MeSH, MedDRA, NCIt, ICD10, Orphanet, UMLS.",
29
+ "label": [
30
+ "Disease",
31
+ "EFO",
32
+ "ID Mapping",
33
+ "Cross-reference",
34
+ "OpenTarget",
35
+ "GraphQL"
36
+ ],
37
+ "parameter": {
38
+ "type": "object",
39
+ "properties": {
40
+ "efoId": {
41
+ "type": "string",
42
+ "description": "The EFO ID of the disease or phenotype.",
43
+ "required": true
44
+ }
45
+ }
46
+ },
47
+ "query_schema": "query getDiseaseDbXRefs($efoId: String!) {\n disease(efoId: $efoId) {\n id\n name\n dbXRefs\n }\n}",
48
+ "type": "OpenTarget"
49
+ },
50
+ {
51
+ "name": "OpenTargets_map_any_disease_id_to_all_other_ids",
52
+ "description": "Given any known disease or phenotype ID (EFO, OMIM, MONDO, UMLS, ICD10, MedDRA, etc.), return all known cross-referenced IDs including the EFO ID.",
53
+ "label": [
54
+ "Disease",
55
+ "Phenotype",
56
+ "Cross-reference",
57
+ "ID Mapping",
58
+ "OpenTarget",
59
+ "GraphQL"
60
+ ],
61
+ "parameter": {
62
+ "type": "object",
63
+ "properties": {
64
+ "inputId": {
65
+ "type": "string",
66
+ "description": "Any known disease ID (e.g. OMIM:604302, UMLS:C0003873, ICD10:M05, EFO_0000685, etc.)",
67
+ "required": true
68
+ }
69
+ }
70
+ },
71
+ "query_schema": "query mapAnyDiseaseIdToDbXRefs($inputId: String!) {\n mapIds(queryTerms: [$inputId], entityNames: [\"disease\"]) {\n mappings {\n term\n hits {\n id\n name\n object {\n ... on Disease {\n id\n name\n dbXRefs\n }\n }\n }\n }\n }\n}",
72
+ "type": "OpenTarget"
73
+ }
74
+ ]
@@ -0,0 +1,113 @@
1
+ [
2
+ {
3
+ "name": "mcp_client_example",
4
+ "description": "Example MCP client to connect to an existing MCP server. Supports all MCP operations including tools, resources, and prompts.",
5
+ "type": "MCPClientTool",
6
+ "server_url": "http://localhost:8000",
7
+ "transport": "http",
8
+ "parameter": {
9
+ "type": "object",
10
+ "properties": {
11
+ "operation": {
12
+ "type": "string",
13
+ "enum": ["list_tools", "call_tool", "list_resources", "read_resource", "list_prompts", "get_prompt"],
14
+ "description": "The MCP operation to perform"
15
+ },
16
+ "tool_name": {
17
+ "type": "string",
18
+ "description": "Name of the tool to call (required for call_tool operation)"
19
+ },
20
+ "tool_arguments": {
21
+ "type": "object",
22
+ "description": "Arguments to pass to the tool (for call_tool operation)"
23
+ },
24
+ "uri": {
25
+ "type": "string",
26
+ "description": "Resource URI (required for read_resource operation)"
27
+ },
28
+ "prompt_name": {
29
+ "type": "string",
30
+ "description": "Name of the prompt to get (required for get_prompt operation)"
31
+ },
32
+ "prompt_arguments": {
33
+ "type": "object",
34
+ "description": "Arguments to pass to the prompt (for get_prompt operation)"
35
+ }
36
+ },
37
+ "required": ["operation"]
38
+ }
39
+ },
40
+ {
41
+ "name": "mcp_mock_calculator",
42
+ "description": "A simple calculator tool for testing",
43
+ "type": "MCPProxyTool",
44
+ "server_url": "http://localhost:8000",
45
+ "transport": "http",
46
+ "target_tool_name": "mock_calculator",
47
+ "parameter": {
48
+ "type": "object",
49
+ "properties": {
50
+ "operation": {
51
+ "type": "string",
52
+ "enum": [
53
+ "add",
54
+ "subtract",
55
+ "multiply",
56
+ "divide"
57
+ ],
58
+ "description": "The mathematical operation to perform"
59
+ },
60
+ "a": {
61
+ "type": "number",
62
+ "description": "First number"
63
+ },
64
+ "b": {
65
+ "type": "number",
66
+ "description": "Second number"
67
+ }
68
+ },
69
+ "required": [
70
+ "operation",
71
+ "a",
72
+ "b"
73
+ ]
74
+ }
75
+ },
76
+ {
77
+ "name": "mcp_mock_greeter",
78
+ "description": "A simple greeting tool",
79
+ "type": "MCPProxyTool",
80
+ "server_url": "http://localhost:8000",
81
+ "transport": "http",
82
+ "target_tool_name": "mock_greeter",
83
+ "parameter": {
84
+ "type": "object",
85
+ "properties": {
86
+ "name": {
87
+ "type": "string",
88
+ "description": "Name to greet"
89
+ },
90
+ "language": {
91
+ "type": "string",
92
+ "enum": [
93
+ "en",
94
+ "es",
95
+ "fr"
96
+ ],
97
+ "description": "Language for greeting",
98
+ "default": "en"
99
+ }
100
+ },
101
+ "required": [
102
+ "name"
103
+ ]
104
+ }
105
+ },
106
+ {
107
+ "name": "mcp_auto_loader_server1",
108
+ "description": "Automatically discover and load all tools from MCP Server 1. Can register discovered tools as individual ToolUniverse tools or provide tool configurations.",
109
+ "type": "MCPAutoLoaderTool",
110
+ "server_url": "http://localhost:8000",
111
+ "tool_prefix": "mcp_s1_"
112
+ }
113
+ ]
@@ -0,0 +1,28 @@
1
+ {
2
+ "mcpautoloadertool_defaults": {
3
+ "transport": "http",
4
+ "auto_register": true,
5
+ "tool_prefix": "mcp_",
6
+ "selected_tools": null,
7
+ "timeout": 30,
8
+ "parameter": {
9
+ "type": "object",
10
+ "properties": {
11
+ "operation": {
12
+ "type": "string",
13
+ "enum": ["discover", "generate_configs", "call_tool"],
14
+ "description": "The operation to perform: discover tools, generate configs, or call a tool directly"
15
+ },
16
+ "tool_name": {
17
+ "type": "string",
18
+ "description": "Name of the MCP tool to call (required for call_tool operation)"
19
+ },
20
+ "tool_arguments": {
21
+ "type": "object",
22
+ "description": "Arguments to pass to the MCP tool (for call_tool operation)"
23
+ }
24
+ },
25
+ "required": ["operation"]
26
+ }
27
+ }
28
+ }