tooluniverse 1.0.10__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.

Files changed (150) hide show
  1. tooluniverse/__init__.py +57 -1
  2. tooluniverse/blast_tool.py +132 -0
  3. tooluniverse/boltz_tool.py +2 -2
  4. tooluniverse/cbioportal_tool.py +42 -0
  5. tooluniverse/clinvar_tool.py +268 -74
  6. tooluniverse/compose_scripts/tool_discover.py +1941 -443
  7. tooluniverse/data/agentic_tools.json +0 -370
  8. tooluniverse/data/alphafold_tools.json +6 -6
  9. tooluniverse/data/blast_tools.json +112 -0
  10. tooluniverse/data/cbioportal_tools.json +87 -0
  11. tooluniverse/data/clinvar_tools.json +235 -0
  12. tooluniverse/data/compose_tools.json +0 -89
  13. tooluniverse/data/dbsnp_tools.json +275 -0
  14. tooluniverse/data/emdb_tools.json +61 -0
  15. tooluniverse/data/ensembl_tools.json +259 -0
  16. tooluniverse/data/file_download_tools.json +275 -0
  17. tooluniverse/data/geo_tools.json +200 -48
  18. tooluniverse/data/gnomad_tools.json +109 -0
  19. tooluniverse/data/gtopdb_tools.json +68 -0
  20. tooluniverse/data/gwas_tools.json +32 -0
  21. tooluniverse/data/interpro_tools.json +199 -0
  22. tooluniverse/data/jaspar_tools.json +70 -0
  23. tooluniverse/data/kegg_tools.json +356 -0
  24. tooluniverse/data/mpd_tools.json +87 -0
  25. tooluniverse/data/ols_tools.json +314 -0
  26. tooluniverse/data/package_discovery_tools.json +64 -0
  27. tooluniverse/data/packages/categorized_tools.txt +0 -1
  28. tooluniverse/data/packages/machine_learning_tools.json +0 -47
  29. tooluniverse/data/paleobiology_tools.json +91 -0
  30. tooluniverse/data/pride_tools.json +62 -0
  31. tooluniverse/data/pypi_package_inspector_tools.json +158 -0
  32. tooluniverse/data/python_executor_tools.json +341 -0
  33. tooluniverse/data/regulomedb_tools.json +50 -0
  34. tooluniverse/data/remap_tools.json +89 -0
  35. tooluniverse/data/screen_tools.json +89 -0
  36. tooluniverse/data/tool_discovery_agents.json +428 -0
  37. tooluniverse/data/tool_discovery_agents.json.backup +1343 -0
  38. tooluniverse/data/uniprot_tools.json +77 -0
  39. tooluniverse/data/web_search_tools.json +250 -0
  40. tooluniverse/data/worms_tools.json +55 -0
  41. tooluniverse/dbsnp_tool.py +196 -58
  42. tooluniverse/default_config.py +35 -2
  43. tooluniverse/emdb_tool.py +30 -0
  44. tooluniverse/ensembl_tool.py +140 -47
  45. tooluniverse/execute_function.py +74 -14
  46. tooluniverse/file_download_tool.py +269 -0
  47. tooluniverse/geo_tool.py +81 -28
  48. tooluniverse/gnomad_tool.py +100 -52
  49. tooluniverse/gtopdb_tool.py +41 -0
  50. tooluniverse/interpro_tool.py +72 -0
  51. tooluniverse/jaspar_tool.py +30 -0
  52. tooluniverse/kegg_tool.py +230 -0
  53. tooluniverse/mpd_tool.py +42 -0
  54. tooluniverse/ncbi_eutils_tool.py +96 -0
  55. tooluniverse/ols_tool.py +435 -0
  56. tooluniverse/package_discovery_tool.py +217 -0
  57. tooluniverse/paleobiology_tool.py +30 -0
  58. tooluniverse/pride_tool.py +30 -0
  59. tooluniverse/pypi_package_inspector_tool.py +593 -0
  60. tooluniverse/python_executor_tool.py +711 -0
  61. tooluniverse/regulomedb_tool.py +30 -0
  62. tooluniverse/remap_tool.py +44 -0
  63. tooluniverse/remote/depmap_24q2/depmap_24q2_mcp_tool.py +1 -1
  64. tooluniverse/screen_tool.py +44 -0
  65. tooluniverse/smcp_server.py +3 -3
  66. tooluniverse/tool_finder_embedding.py +3 -1
  67. tooluniverse/tool_finder_keyword.py +3 -1
  68. tooluniverse/tool_finder_llm.py +6 -2
  69. tooluniverse/tools/{UCSC_get_genes_by_region.py → BLAST_nucleotide_search.py} +22 -26
  70. tooluniverse/tools/BLAST_protein_search.py +63 -0
  71. tooluniverse/tools/ClinVar_search_variants.py +26 -15
  72. tooluniverse/tools/CodeQualityAnalyzer.py +3 -3
  73. tooluniverse/tools/EMDB_get_structure.py +46 -0
  74. tooluniverse/tools/GtoPdb_get_targets.py +52 -0
  75. tooluniverse/tools/InterPro_get_domain_details.py +46 -0
  76. tooluniverse/tools/InterPro_get_protein_domains.py +49 -0
  77. tooluniverse/tools/InterPro_search_domains.py +52 -0
  78. tooluniverse/tools/JASPAR_get_transcription_factors.py +52 -0
  79. tooluniverse/tools/MPD_get_phenotype_data.py +59 -0
  80. tooluniverse/tools/PRIDE_search_proteomics.py +52 -0
  81. tooluniverse/tools/PackageAnalyzer.py +55 -0
  82. tooluniverse/tools/Paleobiology_get_fossils.py +52 -0
  83. tooluniverse/tools/PyPIPackageInspector.py +59 -0
  84. tooluniverse/tools/ReMap_get_transcription_factor_binding.py +59 -0
  85. tooluniverse/tools/ReferenceInfoAnalyzer.py +55 -0
  86. tooluniverse/tools/RegulomeDB_query_variant.py +46 -0
  87. tooluniverse/tools/SCREEN_get_regulatory_elements.py +59 -0
  88. tooluniverse/tools/{ArgumentDescriptionOptimizer.py → TestResultsAnalyzer.py} +13 -13
  89. tooluniverse/tools/ToolDiscover.py +11 -11
  90. tooluniverse/tools/UniProt_id_mapping.py +63 -0
  91. tooluniverse/tools/UniProt_search.py +63 -0
  92. tooluniverse/tools/UnifiedToolGenerator.py +59 -0
  93. tooluniverse/tools/WoRMS_search_species.py +49 -0
  94. tooluniverse/tools/XMLToolOptimizer.py +55 -0
  95. tooluniverse/tools/__init__.py +119 -29
  96. tooluniverse/tools/alphafold_get_annotations.py +3 -3
  97. tooluniverse/tools/alphafold_get_prediction.py +3 -3
  98. tooluniverse/tools/alphafold_get_summary.py +3 -3
  99. tooluniverse/tools/cBioPortal_get_cancer_studies.py +46 -0
  100. tooluniverse/tools/cBioPortal_get_mutations.py +52 -0
  101. tooluniverse/tools/{gnomAD_query_variant.py → clinvar_get_clinical_significance.py} +8 -11
  102. tooluniverse/tools/clinvar_get_variant_details.py +49 -0
  103. tooluniverse/tools/dbSNP_get_variant_by_rsid.py +7 -7
  104. tooluniverse/tools/dbsnp_get_frequencies.py +46 -0
  105. tooluniverse/tools/dbsnp_search_by_gene.py +52 -0
  106. tooluniverse/tools/download_binary_file.py +66 -0
  107. tooluniverse/tools/download_file.py +71 -0
  108. tooluniverse/tools/download_text_content.py +55 -0
  109. tooluniverse/tools/dynamic_package_discovery.py +59 -0
  110. tooluniverse/tools/ensembl_get_sequence.py +52 -0
  111. tooluniverse/tools/{Ensembl_lookup_gene_by_symbol.py → ensembl_get_variants.py} +11 -11
  112. tooluniverse/tools/ensembl_lookup_gene.py +46 -0
  113. tooluniverse/tools/geo_get_dataset_info.py +46 -0
  114. tooluniverse/tools/geo_get_sample_info.py +46 -0
  115. tooluniverse/tools/geo_search_datasets.py +67 -0
  116. tooluniverse/tools/gnomad_get_gene_constraints.py +49 -0
  117. tooluniverse/tools/kegg_find_genes.py +52 -0
  118. tooluniverse/tools/kegg_get_gene_info.py +46 -0
  119. tooluniverse/tools/kegg_get_pathway_info.py +46 -0
  120. tooluniverse/tools/kegg_list_organisms.py +44 -0
  121. tooluniverse/tools/kegg_search_pathway.py +46 -0
  122. tooluniverse/tools/ols_find_similar_terms.py +63 -0
  123. tooluniverse/tools/{get_hyperopt_info.py → ols_get_ontology_info.py} +13 -10
  124. tooluniverse/tools/ols_get_term_ancestors.py +67 -0
  125. tooluniverse/tools/ols_get_term_children.py +67 -0
  126. tooluniverse/tools/{TestCaseGenerator.py → ols_get_term_info.py} +12 -9
  127. tooluniverse/tools/{CodeOptimizer.py → ols_search_ontologies.py} +22 -14
  128. tooluniverse/tools/ols_search_terms.py +71 -0
  129. tooluniverse/tools/python_code_executor.py +79 -0
  130. tooluniverse/tools/python_script_runner.py +79 -0
  131. tooluniverse/tools/web_api_documentation_search.py +63 -0
  132. tooluniverse/tools/web_search.py +71 -0
  133. tooluniverse/uniprot_tool.py +219 -16
  134. tooluniverse/url_tool.py +18 -0
  135. tooluniverse/utils.py +2 -2
  136. tooluniverse/web_search_tool.py +229 -0
  137. tooluniverse/worms_tool.py +64 -0
  138. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/METADATA +3 -2
  139. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/RECORD +143 -54
  140. tooluniverse/data/genomics_tools.json +0 -174
  141. tooluniverse/tools/ToolDescriptionOptimizer.py +0 -67
  142. tooluniverse/tools/ToolImplementationGenerator.py +0 -67
  143. tooluniverse/tools/ToolOptimizer.py +0 -59
  144. tooluniverse/tools/ToolSpecificationGenerator.py +0 -67
  145. tooluniverse/tools/ToolSpecificationOptimizer.py +0 -63
  146. tooluniverse/ucsc_tool.py +0 -60
  147. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/WHEEL +0 -0
  148. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/entry_points.txt +0 -0
  149. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/licenses/LICENSE +0 -0
  150. {tooluniverse-1.0.10.dist-info → tooluniverse-1.0.11.dist-info}/top_level.txt +0 -0
@@ -1,49 +1,39 @@
1
1
  [
2
2
  {
3
- "type": "GEORESTTool",
4
- "name": "GEO_search_expression_data",
5
- "description": "Search gene expression data from the GEO database. GEO is a public repository that archives and freely distributes microarray, next-generation sequencing, and other forms of high-throughput functional genomics data.",
3
+ "type": "GEOSearchDatasets",
4
+ "name": "geo_search_datasets",
5
+ "description": "Search GEO datasets by query terms, organism, study type, or platform. Returns dataset IDs and basic information.",
6
6
  "parameter": {
7
7
  "type": "object",
8
8
  "properties": {
9
9
  "query": {
10
10
  "type": "string",
11
- "description": "Search query (e.g., 'cancer', 'diabetes', 'microarray')",
12
- "minLength": 1
11
+ "description": "Search query terms (e.g., 'cancer', 'diabetes', 'microarray')"
13
12
  },
14
13
  "organism": {
15
14
  "type": "string",
16
15
  "description": "Organism name (e.g., 'Homo sapiens', 'Mus musculus')",
17
- "default": "Homo sapiens"
16
+ "default": ""
18
17
  },
19
18
  "study_type": {
20
19
  "type": "string",
21
- "description": "Type of study (e.g., 'expression', 'methylation', 'genome')",
22
- "enum": ["expression", "methylation", "genome", "sequence", "other"]
20
+ "description": "Type of study (e.g., 'Expression profiling by array', 'Expression profiling by high throughput sequencing')",
21
+ "default": ""
23
22
  },
24
23
  "platform": {
25
24
  "type": "string",
26
- "description": "Platform used (e.g., 'GPL96', 'GPL570')"
27
- },
28
- "date_range": {
29
- "type": "string",
30
- "description": "Date range in format 'YYYY:YYYY' (e.g., '2020:2023')"
25
+ "description": "Platform used (e.g., 'GPL570', 'GPL96')",
26
+ "default": ""
31
27
  },
32
28
  "limit": {
33
29
  "type": "integer",
34
- "description": "Maximum number of results to return (default: 50)",
30
+ "description": "Maximum number of results to return",
31
+ "default": 50,
35
32
  "minimum": 1,
36
- "maximum": 500,
37
- "default": 50
38
- },
39
- "sort": {
40
- "type": "string",
41
- "description": "Sort order ('relevance', 'date', 'title')",
42
- "enum": ["relevance", "date", "title"],
43
- "default": "relevance"
33
+ "maximum": 500
44
34
  }
45
35
  },
46
- "required": ["query"]
36
+ "required": []
47
37
  },
48
38
  "fields": {
49
39
  "endpoint": "/esearch.fcgi",
@@ -51,36 +41,198 @@
51
41
  },
52
42
  "return_schema": {
53
43
  "type": "object",
44
+ "description": "GEO dataset search results",
54
45
  "properties": {
55
- "success": {"type": "boolean"},
56
- "count": {"type": "integer"},
57
- "studies": {
58
- "type": "array",
59
- "items": {
60
- "type": "object",
61
- "properties": {
62
- "id": {"type": "string"},
63
- "title": {"type": "string"},
64
- "summary": {"type": "string"},
65
- "organism": {"type": "string"},
66
- "platform": {"type": "string"},
67
- "samples": {"type": "integer"},
68
- "series_type": {"type": "string"},
69
- "publication_date": {"type": "string"},
70
- "submission_date": {"type": "string"},
71
- "contact": {"type": "string"},
72
- "citation": {"type": "string"}
46
+ "esearchresult": {
47
+ "type": "object",
48
+ "properties": {
49
+ "count": {
50
+ "type": "string",
51
+ "description": "Number of datasets found"
52
+ },
53
+ "idlist": {
54
+ "type": "array",
55
+ "items": {
56
+ "type": "string"
57
+ },
58
+ "description": "List of GEO dataset IDs"
59
+ },
60
+ "querytranslation": {
61
+ "type": "string",
62
+ "description": "Translated search query"
73
63
  }
74
64
  }
75
- },
76
- "query_translation": {"type": "string"},
77
- "error": {"type": "string"}
65
+ }
66
+ }
67
+ },
68
+ "test_examples": [
69
+ {
70
+ "query": "cancer",
71
+ "organism": "Homo sapiens",
72
+ "limit": 10
73
+ },
74
+ {
75
+ "query": "diabetes",
76
+ "study_type": "Expression profiling by array",
77
+ "limit": 5
78
+ }
79
+ ],
80
+ "label": [
81
+ "GEO",
82
+ "Dataset",
83
+ "Search"
84
+ ],
85
+ "metadata": {
86
+ "tags": ["expression", "microarray", "search"],
87
+ "difficulty_level": "easy",
88
+ "estimated_execution_time": "< 3 seconds"
89
+ }
90
+ },
91
+ {
92
+ "type": "GEOGetDatasetInfo",
93
+ "name": "geo_get_dataset_info",
94
+ "description": "Get detailed information about a specific GEO dataset including title, summary, and metadata.",
95
+ "parameter": {
96
+ "type": "object",
97
+ "properties": {
98
+ "dataset_id": {
99
+ "type": "string",
100
+ "description": "GEO dataset ID (e.g., 'GDS1234', 'GSE12345')"
101
+ }
102
+ },
103
+ "required": ["dataset_id"]
104
+ },
105
+ "fields": {
106
+ "endpoint": "/esummary.fcgi",
107
+ "return_format": "JSON"
108
+ },
109
+ "return_schema": {
110
+ "type": "object",
111
+ "description": "GEO dataset information",
112
+ "properties": {
113
+ "result": {
114
+ "type": "object",
115
+ "description": "Dataset information from GEO",
116
+ "properties": {
117
+ "uid": {
118
+ "type": "string",
119
+ "description": "Dataset UID"
120
+ },
121
+ "title": {
122
+ "type": "string",
123
+ "description": "Dataset title"
124
+ },
125
+ "summary": {
126
+ "type": "string",
127
+ "description": "Dataset summary"
128
+ },
129
+ "organism": {
130
+ "type": "string",
131
+ "description": "Organism"
132
+ },
133
+ "platform": {
134
+ "type": "string",
135
+ "description": "Platform used"
136
+ },
137
+ "samples": {
138
+ "type": "string",
139
+ "description": "Number of samples"
140
+ }
141
+ }
142
+ }
143
+ }
144
+ },
145
+ "test_examples": [
146
+ {
147
+ "dataset_id": "GDS1234"
148
+ },
149
+ {
150
+ "dataset_id": "GSE12345"
151
+ }
152
+ ],
153
+ "label": [
154
+ "GEO",
155
+ "Dataset",
156
+ "Information"
157
+ ],
158
+ "metadata": {
159
+ "tags": ["dataset", "metadata", "expression"],
160
+ "difficulty_level": "easy",
161
+ "estimated_execution_time": "< 3 seconds"
162
+ }
163
+ },
164
+ {
165
+ "type": "GEOGetSampleInfo",
166
+ "name": "geo_get_sample_info",
167
+ "description": "Get sample information for a GEO dataset including sample characteristics and experimental conditions.",
168
+ "parameter": {
169
+ "type": "object",
170
+ "properties": {
171
+ "dataset_id": {
172
+ "type": "string",
173
+ "description": "GEO dataset ID (e.g., 'GDS1234', 'GSE12345')"
174
+ }
175
+ },
176
+ "required": ["dataset_id"]
177
+ },
178
+ "fields": {
179
+ "endpoint": "/esummary.fcgi",
180
+ "return_format": "JSON"
181
+ },
182
+ "return_schema": {
183
+ "type": "object",
184
+ "description": "GEO sample information",
185
+ "properties": {
186
+ "result": {
187
+ "type": "object",
188
+ "description": "Sample information from GEO",
189
+ "properties": {
190
+ "uid": {
191
+ "type": "string",
192
+ "description": "Dataset UID"
193
+ },
194
+ "samples": {
195
+ "type": "array",
196
+ "description": "Array of sample information",
197
+ "items": {
198
+ "type": "object",
199
+ "properties": {
200
+ "sample_id": {
201
+ "type": "string",
202
+ "description": "Sample identifier"
203
+ },
204
+ "characteristics": {
205
+ "type": "string",
206
+ "description": "Sample characteristics"
207
+ },
208
+ "treatment": {
209
+ "type": "string",
210
+ "description": "Treatment conditions"
211
+ }
212
+ }
213
+ }
214
+ }
215
+ }
216
+ }
78
217
  }
79
218
  },
80
- "implementation": {
81
- "language": "python",
82
- "dependencies": ["requests"],
83
- "source_file": "geo_tool.py"
219
+ "test_examples": [
220
+ {
221
+ "dataset_id": "GDS1234"
222
+ },
223
+ {
224
+ "dataset_id": "GSE12345"
225
+ }
226
+ ],
227
+ "label": [
228
+ "GEO",
229
+ "Sample",
230
+ "Information"
231
+ ],
232
+ "metadata": {
233
+ "tags": ["sample", "characteristics", "expression"],
234
+ "difficulty_level": "easy",
235
+ "estimated_execution_time": "< 3 seconds"
84
236
  }
85
237
  }
86
238
  ]
@@ -0,0 +1,109 @@
1
+ [
2
+ {
3
+ "type": "gnomADGetGeneConstraints",
4
+ "name": "gnomad_get_gene_constraints",
5
+ "description": "Get gene constraint metrics from gnomAD. Returns pLI, LOEUF, and other constraint scores for genes.",
6
+ "parameter": {
7
+ "type": "object",
8
+ "properties": {
9
+ "gene_symbol": {
10
+ "type": "string",
11
+ "description": "Gene symbol (e.g., 'BRCA1', 'TP53')"
12
+ }
13
+ },
14
+ "required": ["gene_symbol"]
15
+ },
16
+ "fields": {
17
+ "endpoint": "https://gnomad.broadinstitute.org/api",
18
+ "return_format": "JSON",
19
+ "query_schema": "query GeneConstraints($geneSymbol: String!) { gene(gene_symbol: $geneSymbol, reference_genome: GRCh38) { symbol gene_id exac_constraint { exp_lof obs_lof pLI exp_mis obs_mis exp_syn obs_syn } gnomad_constraint { exp_lof obs_lof oe_lof pLI exp_mis obs_mis oe_mis exp_syn obs_syn oe_syn } } }"
20
+ },
21
+ "return_schema": {
22
+ "type": "object",
23
+ "description": "gnomAD gene constraint data",
24
+ "properties": {
25
+ "status": {
26
+ "type": "string",
27
+ "description": "Status of the request"
28
+ },
29
+ "data": {
30
+ "type": "object",
31
+ "description": "GraphQL response data",
32
+ "properties": {
33
+ "data": {
34
+ "type": "object",
35
+ "properties": {
36
+ "gene": {
37
+ "type": "object",
38
+ "properties": {
39
+ "symbol": {
40
+ "type": "string",
41
+ "description": "Gene symbol"
42
+ },
43
+ "gene_id": {
44
+ "type": "string",
45
+ "description": "Ensembl gene ID"
46
+ },
47
+ "exac_constraint": {
48
+ "type": "object",
49
+ "description": "ExAC constraint metrics",
50
+ "properties": {
51
+ "exp_lof": {
52
+ "type": "number",
53
+ "description": "Expected number of loss-of-function variants"
54
+ },
55
+ "obs_lof": {
56
+ "type": "number",
57
+ "description": "Observed number of loss-of-function variants"
58
+ },
59
+ "pLI": {
60
+ "type": "number",
61
+ "description": "Probability of being loss-of-function intolerant"
62
+ }
63
+ }
64
+ },
65
+ "gnomad_constraint": {
66
+ "type": "object",
67
+ "description": "gnomAD constraint metrics",
68
+ "properties": {
69
+ "oe_lof": {
70
+ "type": "number",
71
+ "description": "Observed/Expected ratio for loss-of-function variants"
72
+ },
73
+ "pLI": {
74
+ "type": "number",
75
+ "description": "Probability of being loss-of-function intolerant"
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ }
83
+ }
84
+ },
85
+ "gene_symbol": {
86
+ "type": "string",
87
+ "description": "Input gene symbol"
88
+ }
89
+ }
90
+ },
91
+ "test_examples": [
92
+ {
93
+ "description": "Get constraint metrics for BRCA1 gene",
94
+ "input": {
95
+ "gene_symbol": "BRCA1"
96
+ },
97
+ "expected_output": {
98
+ "status": "success",
99
+ "data": "Gene constraint data with pLI and LOEUF scores"
100
+ }
101
+ }
102
+ ],
103
+ "metadata": {
104
+ "tags": ["constraint", "pLI", "LOEUF", "gnomAD"],
105
+ "difficulty_level": "intermediate",
106
+ "estimated_execution_time": "< 3 seconds"
107
+ }
108
+ }
109
+ ]
@@ -0,0 +1,68 @@
1
+ [
2
+ {
3
+ "type": "GtoPdbRESTTool",
4
+ "name": "GtoPdb_get_targets",
5
+ "description": "Get pharmacological targets from Guide to Pharmacology database",
6
+ "parameter": {
7
+ "type": "object",
8
+ "properties": {
9
+ "target_type": {"type": "string", "default": "protein", "description": "Target type"},
10
+ "limit": {"type": "integer", "default": 20, "description": "Number of results"}
11
+ }
12
+ },
13
+ "fields": {
14
+ "endpoint": "https://www.guidetopharmacology.org/services/targets",
15
+ "return_format": "JSON"
16
+ },
17
+ "return_schema": {
18
+ "type": "array",
19
+ "items": {
20
+ "type": "object",
21
+ "properties": {
22
+ "targetId": {"type": "integer"},
23
+ "name": {"type": "string"},
24
+ "targetType": {"type": "string"},
25
+ "species": {"type": "string"},
26
+ "uniprotId": {"type": "string"},
27
+ "ensemblGeneId": {"type": "string"},
28
+ "hgncId": {"type": "string"},
29
+ "description": {"type": "string"},
30
+ "family": {"type": "string"},
31
+ "subfamily": {"type": "string"},
32
+ "subunit": {"type": "string"},
33
+ "tissue": {"type": "array"},
34
+ "cellLine": {"type": "array"},
35
+ "diseases": {"type": "array"},
36
+ "drugs": {
37
+ "type": "array",
38
+ "items": {
39
+ "type": "object",
40
+ "properties": {
41
+ "drugId": {"type": "integer"},
42
+ "name": {"type": "string"},
43
+ "action": {"type": "string"},
44
+ "mechanism": {"type": "string"}
45
+ }
46
+ }
47
+ },
48
+ "ligands": {
49
+ "type": "array",
50
+ "items": {
51
+ "type": "object",
52
+ "properties": {
53
+ "ligandId": {"type": "integer"},
54
+ "name": {"type": "string"},
55
+ "type": {"type": "string"},
56
+ "affinity": {"type": "string"}
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ },
63
+ "test_examples": [
64
+ {"target_type": "protein", "limit": 5},
65
+ {"target_type": "receptor", "limit": 10}
66
+ ]
67
+ }
68
+ ]
@@ -1839,5 +1839,37 @@
1839
1839
  }
1840
1840
  }
1841
1841
  }
1842
+ },
1843
+ {
1844
+ "type": "GWASGeneSearch",
1845
+ "name": "GWAS_search_associations_by_gene",
1846
+ "description": "Search GWAS Catalog associations by gene name (returns strongest risk allele and p-value fields).",
1847
+ "parameter": {
1848
+ "type": "object",
1849
+ "properties": {
1850
+ "gene_name": {"type": "string", "description": "Gene symbol (e.g., BRCA1)."},
1851
+ "size": {"type": "integer", "description": "Max associations to return.", "default": 5}
1852
+ },
1853
+ "required": ["gene_name"]
1854
+ },
1855
+ "return_schema": {
1856
+ "type": "object",
1857
+ "properties": {
1858
+ "gene_name": {"type": "string"},
1859
+ "association_count": {"type": "integer"},
1860
+ "associations": {
1861
+ "type": "array",
1862
+ "items": {
1863
+ "type": "object",
1864
+ "properties": {
1865
+ "study": {"type": "string"},
1866
+ "strongestRiskAllele": {"type": "string"},
1867
+ "pvalue": {"type": "number"}
1868
+ }
1869
+ }
1870
+ },
1871
+ "total_found": {"type": "integer"}
1872
+ }
1873
+ }
1842
1874
  }
1843
1875
  ]