Aller au contenu principal

Référence de fonctionnement Connector

Recherchez les noms exacts de l'opération, les champs requis, les par défaut et les exemples d'appels. Pour choisir une source de données, commencez par le catalogue de bases de données. Expandez la famille Connector que vous avez l'intention d'appeler; La disponibilité et les références doivent être configurées séparément.

Où les appels par exemple s'exécutent

L'objet host est fourni par l'environnement d'exécution de l'agent Open-Science. Le JavaScript ci-dessous est un fragment d'appel côté agent, pas un programme standalone Node.js et pas une méthode sur le client public Tâche SDK. Demandez à l'agent de charger les instructions pertinentes de Connector et d'utiliser l'opération correspondante. Un framework peut exposer un pont Python au lieu de ce formulaire JavaScript.

Activez d'abord le Connector dans Paramètres → Connecteurs, configurez n'importe quel les pouvoirs requis et accordez l'accès au Specialist sélectionné, le cas échéant. L'appel suit toujours la politique de permission de la conversation. Les intégrations publiques Node.js peuvent gérer les paramètres Connector avec le Tâche SDK, mais ne peuvent pas obtenir ce host en important ce client.

Lire un résultat avant d'enchaîner les appels

Exemple Pass renvoyé PubMed IDs à une recherche de métadonnées

Par exemple, demandez : Utiliser PubMed pour rechercher les directives de rapport PRISMA; retourner le nombre total de correspondances et cinq PMIDs. L'opération search_articles renvoie un total et une page d'identifiants. Nourrir ceux qui ont renvoyé PMIDs à get_article_metadata pour obtenir des titres, des auteurs et des liens DOI. Une page vide, un résultat tronqué et une erreur d'authentification nécessitent une manipulation différente.

Renseignements retournésUtilisez-le pour
Nombre total de correspondances et lignes retournéesDistinguer une petite page à partir du jeu de résultats complet
truncated, records_truncated ou des drapeaux d'exhaustivité propres à la familleDécidez de pager, de restreindre la requête ou de récupérer le reste
not_found, missing, not_processedIdentifier les intrants non résolus et ne réessayer que les éléments appropriés
DOI, adhésion, URL source et publication/constructionConserver l'identité et la source nécessaires pour les requêtes ultérieures
État du texte intégral ou note de licenceDécider si le texte a été récupéré et peut être réutilisé

Les noms de champs de retour diffèrent selon l'opération. Les descriptions et les schémas téléchargeables ci-dessous précisent chaque contrat; la table n'est pas une réponse universelle JSON. Utilisez la liste de la famille de droite pour sauter, puis élargir les paramètres de cette famille. La recherche d'un nom d'opération ouvre également son groupe contenant.

Entrées d'exploitation

Expandez un Connector à la fois. Les champs obligatoires sont marqués requis; les limites/défauts indiqués ici proviennent du schéma d'application. Consultez le Registre téléchargeable complet pour les schémas JSON imbriqués, les descriptions complètes des retours et les exemples d'appels côté agent. Ne passez pas un id générique lorsqu'un outil s'attend à accessions, cids, rs_id ou à un autre champ spécifique à l'espace de noms.

Chimie

Afficher les opérations et les paramètres

pubchem_search_compounds

Résoudre un identificateur chimique (nom, SMILES, InChICey ou CID) aux CID de PubChem, en option avec les propriétés calculées du noyau pour les hits supérieurs.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
namespacechaîne de caractèresfacultatif; par défaut: "name"; enum: ["name", "smiles", "inchikey", "cid"]
max_cidsentierfacultatif; par défaut : 25; minimum: 1; maximum: 100
with_propertiesbooléenfacultatif; par défaut : true
const result = await host.mcp("chemistry", "pubchem_search_compounds", {"query": "aspirin", "max_cids": 25})

pubchem_get_compounds

Complet des enregistrements de propriété pour un lot de CID PubChem, avec des listes de synonymes plafonnés en option.

ChampTypeBesoins et contraintes
cidstableau des entiersrequis; minItems: 1; maxItems: 50
include_synonymsbooléenfacultatif; par défaut : false
max_synonymsentierfacultatif; par défaut : 30
const result = await host.mcp("chemistry", "pubchem_get_compounds", {"cids": [2244, 2519], "include_synonyms": false})

Recherche de similarité 2D Tanimoto sur l'ensemble de PubChem pour une requête SMILES (chemin fastsimilarity_2d synchrone, pas de sondage d'emploi).

ChampTypeBesoins et contraintes
smileschaîne de caractèresrequis
thresholdentierfacultatif; par défaut : 90; minimum: 1; maximum: 100
max_recordsentierfacultatif; par défaut : 50; minimum: 1; maximum: 200
with_propertiesbooléenfacultatif; par défaut : false
const result = await host.mcp("chemistry", "pubchem_similarity_search", {"smiles": "CC(=O)OC1=CC=CC=C1C(=O)O", "threshold": 90})

pubchem_get_bioassay_summary

Résumé de l'activité d'essai biologique d'un composé de PubChem, qui l'a testé, par rapport à quelles cibles, avec quel résultat et quelle puissance.

ChampTypeBesoins et contraintes
cidentierrequis
active_onlybooléenfacultatif; par défaut : false
max_rowsentierfacultatif; par défaut : 100; minimum: 1; maximum: 1000
const result = await host.mcp("chemistry", "pubchem_get_bioassay_summary", {"cid": 2244, "active_only": true})

pubchem_get_safety

Classification de sécurité SGH pour un composé PubChem (PUG-View 'GHS Classification' , agrégées entre les sources de déclaration.

ChampTypeBesoins et contraintes
cidentierrequis
const result = await host.mcp("chemistry", "pubchem_get_safety", {"cid": 702})

Recherche en texte intégral sur les entités de ChEBI (noms, synonymes, formules, InChIKeys).

ChampTypeBesoins et contraintes
termchaîne de caractèresrequis
max_resultsentierfacultatif; par défaut : 20; minimum: 1; maximum: 100
pageentierfacultatif; par défaut : 1; minimum: 1
const result = await host.mcp("chemistry", "chebi_search", {"term": "caffeine", "max_results": 20})

chebi_get_entity

Registre complet de l'entité ChEBI : noms, structure, données chimiques, rôles et références croisées.

ChampTypeBesoins et contraintes
chebi_idchaîne de caractèresrequis
max_synonymsentierfacultatif; par défaut : 30
max_xrefsentierfacultatif; par défaut : 50
const result = await host.mcp("chemistry", "chebi_get_entity", {"chebi_id": "CHEBI:27732"})

chebi_get_ontology

Les relations d'ontologie d'une entité ChEBI — ce qu'elle est (en cours: est un / a un rôle / conjugué acide...) et quels points AT elle (en venant: enfants / dérivés).

ChampTypeBesoins et contraintes
chebi_idchaîne de caractèresrequis
relation_typechaîne de caractèresfacultatif
max_relationsentierfacultatif; par défaut : 100
const result = await host.mcp("chemistry", "chebi_get_ontology", {"chebi_id": "CHEBI:27732", "relation_type": "has role"})

rhea_search_reactions

Rechercher Rhea maitre réactions par texte d'équation, participant ChEBI id, ou numéro EC (query type auto-détected).

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
limitentierfacultatif; par défaut : 50; minimum: 1; maximum: 500
const result = await host.mcp("chemistry", "rhea_search_reactions", {"query": "caffeine", "limit": 50})

rhea_get_reaction

Record complet pour une réaction Rhea: équation, participants avec les ids ChEBI et stœchiométrie, liens EC, direction famille et littérature.

ChampTypeBesoins et contraintes
rhea_idchaîne de caractèresrequis
const result = await host.mcp("chemistry", "rhea_get_reaction", {"rhea_id": "10280"})

bindingdb_ligands_by_target

affinités de liaison mesurées (Ki/Kd/IC50/EC50) de tous les ligands BD contraignants par rapport à une cible protéique, par adhésion UniProt.

ChampTypeBesoins et contraintes
uniprotchaîne de caractèresrequis
affinity_cutoff_nmNumérofacultatif; par défaut : 10000
max_rowsentierfacultatif; par défaut : 100; minimum: 1; maximum: 1000
const result = await host.mcp("chemistry", "bindingdb_ligands_by_target", {"uniprot": "P00533", "affinity_cutoff_nm": 100})

bindingdb_targets_by_compound

Des cibles protéiques avec des affinités mesurées pour des composés 2D-similaires à une requête SMILES — "Qu'est-ce que cette molécule (ou ses analogues proches) se lie ?".

ChampTypeBesoins et contraintes
smileschaîne de caractèresrequis
similarityNumérofacultatif; par défaut : 0.85; minimum: 0.5; maximum: 1
max_rowsentierfacultatif; par défaut : 100; minimum: 1; maximum: 1000
const result = await host.mcp("chemistry", "bindingdb_targets_by_compound", {"smiles": "CC(=O)OC1=CC=CC=C1C(=O)O", "similarity": 0.85})

Graphique de littérature

Afficher les opérations et les paramètres

openalex_search_works

Rechercher des oeuvres savantes OpenAlex (toutes disciplines, ~250M notices) avec des filtres année/type/AO/venu. Args: requête (texte libre sur title+abstract+fulltext); optionnel si un filtre est défini), year_from, year_to (années incluses), work_type (article/review/preprint/book-chapter/dataset/dissertation), open_access_only, lieu (S-id, openalex.org URL, ISSN, ou un nom clair résolu à la première source touchée — surface dans venue_resolved; passer un ID exact pour sauter la résolution), trier (pertinence par défaut / cited_by_count / publication_date), max_records (par défaut 50, plafond dur 500; pages de 200), include_abstracts (reconstruite à partir de l'index inversé, mais SEULEMENT pour les licences ouvertes vérifiées — cc-by/cc-by-sa/cc0/domaine public; d'autres obtiennent abstract=null + abstract_policy note + abstract_license; additionne en vrac). Retourne {query, filtres, trier, api_total, n_records_returned, records_truncated, records}; chaque enregistrement est la forme de travail maigre (openalex_id, doi, pmid, title, publication_year/date, type, language, is_retracted, auteurs[...], source{...}, biblio, cited_by_count, fwci, referenced_works_count, open_access{...}, best_oa_pdf_url, primary_topic, mots-clés).

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
year_fromentierfacultatif
year_toentierfacultatif
work_typechaîne de caractèresfacultatif
open_access_onlybooléenfacultatif
venuechaîne de caractèresfacultatif
sortchaîne de caractèresfacultatif; par défaut: "relevante"; enum: ["repertinence", "cited_by_count", "publication_date"]
max_recordsentierfacultatif; par défaut : 50
include_abstractsbooléenfacultatif; par défaut : false
const result = await host.mcp("literature", "openalex_search_works", {"query": "CRISPR base editing", "year_from": 2020, "open_access_only": true, "sort": "cited_by_count", "max_records": 25})

openalex_get_work

Obtenez un travail OpenAlex en entier — métadonnées, résumé (reconstruits à partir de l'index inversé, sous licence comme dans openalex_search_works), emplacements OA, referenced_works (W-ids sortants — hydratez avec openalex_references) et counts_by_year. Args : work_id (W-id, openalex.org URL, nus DOI ou URL doi.org). Les recherches DOI se résolvent via le filtre demandeur; lorsque plusieurs œuvres partagent un DOI le plus cité est sélectionné et doi_claimants + doi_resolution_note inclus. Il n'est pas trouvé pour les ID/DOI inconnus.

ChampTypeBesoins et contraintes
work_idchaîne de caractèresrequis
const result = await host.mcp("literature", "openalex_get_work", {"work_id": "W2741809807"})

openalex_citations

Liste des œuvres qui CITE une oeuvre donnée (citations entrantes) via OpenAlex's citation graph. Args: work_id (W-id/URL/DOI — DOI coûte une demande de résolution supplémentaire), tri (cited_by_count par défaut / publication_date / pertinence), max_records (50, plafond 500), include_abstracts. Retourne {work_id, api_total (le vrai nombre de citations), n_records_returned, records_truncated, records} (les relevés de travail)

ChampTypeBesoins et contraintes
work_idchaîne de caractèresrequis
sortchaîne de caractèresfacultatif; par défaut: "cited_by_count"; enum: ["cited_by_count", "publication_date", "pertinence"]
max_recordsentierfacultatif; par défaut : 50
include_abstractsbooléenfacultatif; par défaut : false
const result = await host.mcp("literature", "openalex_citations", {"work_id": "W2741809807", "sort": "cited_by_count", "max_records": 50})

openalex_references

Énumérez les travaux d'une œuvre donnée CITES (références sortantes), hydratée à métadonnées complètes dans l'ordre des listes de références. Args: work_id (W-id/URL/DOI), max_records (par défaut 100, plafond 500; hydratation par lot de 50/requête). Retourne {work_id, n_references, n_records_returned, records_truncated, references_not_hydrated (IDs OpenAlex n'a pas d'enregistrement pour — jamais supprimé silencieusement), reference_ids (ALL exiting W-ids), records}.

ChampTypeBesoins et contraintes
work_idchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 100
const result = await host.mcp("literature", "openalex_references", {"work_id": "W2741809807", "max_records": 100})

openalex_search_authors

Rechercher les profils d'auteurs OpenAlex par nom. Args : requête (affiche le nom de l'appareil + les alternatives ; s'attendre à des homonymes — vérifier les affiliations/topiques/ORCID), max_records (par défaut 25, plafond 500). Retourne {query, api_total, n_records_returned, records_truncated, records}; chaque enregistrement {author_id, nom, orcide, works_count, cited_by_count, h_index, i10_index, affiliations[{institution, années}], last_known_institutions, top_topics}. Utilisez author_id avec openalex_get_author.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 25
const result = await host.mcp("literature", "openalex_search_authors", {"query": "Jennifer Doudna", "max_records": 25})

openalex_get_author

Obtenez un profil d'auteur d'OpenAlex plus leurs œuvres les plus citées. Args : author_id (A-id, openalex.org URL ou ORCID; CAVEAT: Le pointeur ORCID OpenAlex's peut être résolu en un duplicata clairsemé — préférant l'id A de openalex_search_authors), works_sample (par défaut 10, max 200; 0 saute la requête supplémentaire). Retourne l'enregistrement de l'auteur plus counts_by_year, top_works_total (nombre total d'oeuvres réelles) et top_works (enregistrements de travaux leans par citations).

ChampTypeBesoins et contraintes
author_idchaîne de caractèresrequis
works_sampleentierfacultatif; par défaut : 10
const result = await host.mcp("literature", "openalex_get_author", {"author_id": "A5023888391", "works_sample": 10})

openalex_venue_info

Rechercher des revues/répertoires ('sources') dans OpenAlex — statut OA, liste DOAJ, APC, paramètres de citation. Args: lieu (exact S-id, openalex.org URL, ou ISSN pour un seul enregistrement; autre chose est une recherche de nom), max_records (par défaut 10, plafond 500; recherche de nom seulement). Retours : exact -> un enregistrement source + counts_by_year; Recherche de nom -> {query, api_total, n_records_returned, records_truncated, records}. Enregistrement source: {source_id, display_name, type, issn_l, issn, host_organization, country_code, homepage_url, is_oa, is_in_doaj, is_core, apc_usd, works_count, cited_by_count, h_index, two_year_mean_citedness, premier/last_publication_year, top_topics}.

ChampTypeBesoins et contraintes
venuechaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 10
const result = await host.mcp("literature", "openalex_venue_info", {"venue": "Nature", "max_records": 10})

Rechercher les préimpressions arXiv (physique, mathématiques, CS, statistiques, q-bio, ...) via l'Atom officiel API. Args: requête (chaîne de requêtes arXiv); les termes simples recherchent tous les champs, préfixes de champ ti:/au:/abs: and booleans AND/OU/ANDNOT work; facultatif si la catégorie ou une plage de dates est définie), catégorie (code ArXiv ET-ed in, p.ex. q-bio.GN, cs.LG, stat.ML), date_from / date_to (date de soumission AAAA-MM-JJ, inclusivement), début (compensation de la recherche par téléappel en 0; les rythmes API ~3s entre les requêtes — page poliment), max_results (par défaut 25, max 100 par appel), sort_by (pertinence par défaut / soumisDate / lastMise à jourDate), sort_order (décroissant par défaut / ascendant). Retourne {search_query (la requête exacte envoyée), api_total (nombre total de correspondances d'arXiv', start_index, n_records_returned, records_truncated, sort_by, sort_order, records}; chaque enregistrement {arxiv_id, version, id_versioned, titre, résumé, auteurs, publié, mis à jour, primary_category, catégories, doi, journal_ref, commentaire, abs_url, pdf_url}. doi/journal_ref n'apparaissent qu'après la publication de la revue. Les requêtes déformées soulèvent une erreur (le flux d'erreur d'arXiv's HTTP-200 est détecté, jamais retourné comme données).

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
categorychaîne de caractèresfacultatif
date_fromchaîne de caractèresfacultatif
date_tochaîne de caractèresfacultatif
startentierfacultatif; par défaut : 0
max_resultsentierfacultatif; par défaut : 25
sort_bychaîne de caractèresfacultatif; par défaut: "relevante"; enum: ["repertinence", "soumisDate", "dernièremise à jourDate"]
sort_orderchaîne de caractèresfacultatif; par défaut: "descending"; enum: ["descending", "ascending"]
const result = await host.mcp("literature", "arxiv_search", {"query": "ti:transformer", "category": "cs.LG", "max_results": 10})

arxiv_get_papers

Métadonnées papier arXiv (incl. abstracts) par ID — une demande rapide pour des papiers jusqu'à 100. Args: arxiv_ids (jusqu'à 100 IDs sous n'importe quelle forme commune — 2103.14030, version 2103.14030v2, ancien style q-bio/0601001, arXiv:-préfixé, ou URL abs/pdf; les ID non-versions se résolvent à la dernière version). Retourne {n_requested, n_found, duplicatas (intrants qui ont résolu sur un papier déjà retourné), not_found (identifiants malformés ET inconnus — arXiv saute silencieusement les inconnus et rejette les lots entiers sur les malformés; cet outil ne fait aucun), records} — les enregistrements dans l'ordre demandé, de la même forme que les enregistrements arxiv_search. Les documents retirés retournent toujours les métadonnées (cochez les commentaires pour les notes de retrait).

ChampTypeBesoins et contraintes
arxiv_idstableau de la chaînerequis
const result = await host.mcp("literature", "arxiv_get_papers", {"arxiv_ids": ["2103.14030", "1706.03762v5"]})

crossref_get_work

Récupérer les métadonnées déposées par l'éditeur pour un Crossref DOI. Une URL nue DOI, doi: prefix ou doi.org est acceptée. Aucune clé API n'est requise. Si le DOI appartient à une autre agence d'enregistrement, utilisez le service correspondant; a Crossref 404 ne prouve pas que le DOI est invalide. Vérifiez le retour de DOI, titre et source_url.

ChampTypeBesoins et contraintes
doichaîne de caractèresrequis; Longueur min: 1; Longueur max: 2048
const result = await host.mcp("literature", "crossref_get_work", {"doi": "10.1038/nature12968"})

crossref_get_updates

Lire la correction déposée, la rétractation et d'autres relations de mise à jour. updated_by indique les avis de mise à jour de ce travail; update_to pointe pour fonctionner mis à jour par ce DOI. Préserver la direction de la relation et les étiquettes des sources. Les tableaux vides n'établissent pas la fiabilité ni ne prouvent qu'il n'y a pas de rétractation.

ChampTypeBesoins et contraintes
doichaîne de caractèresrequis; Longueur min: 1; Longueur max: 2048
const result = await host.mcp("literature", "crossref_get_updates", {"doi": "10.1038/nature12968"})

datacite_search_records

Recherche publique DataCite dataset/software DOI métadonnées. Demande d'approvisionnement, related_doi ou les deux; requête utilise la syntaxe de requête DataCite. Conserver les mêmes filtres et page_size lorsque vous suivez next_page. L'extraction du nombre de pages est limitée aux premiers enregistrements 10,000 : rétrécissez la requête si nécessaire. Vérifiez related_identifiers, droits et URL d'atterrissage; Les métadonnées ne garantissent pas le téléchargement de données ni la permission de réutilisation.

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif; Longueur min: 1; Longueur max: 2000
related_doichaîne de caractèresfacultatif; Longueur min: 1; Longueur max: 2048
resource_typechaîne de caractèresfacultatif; par défaut: "dataset"; enum: ["dataset", "software"]
page_sizeentierfacultatif; par défaut : 20; minimum: 1; maximum: 100
pageentierfacultatif; par défaut : 1; minimum: 1; maximum: 10000
const result = await host.mcp("literature", "datacite_search_records", {"query": "climate", "resource_type": "dataset", "page_size": 5})

datacite_get_record

Récupérer un enregistrement public DataCite DOI, y compris les titres, les créateurs, le type de ressource, les droits, les identifiants connexes et la version disponible. Accepte une URL nue de DOI, doi: prefix ou doi.org. Vérifiez l'identifiant et la direction de la relation avant d'utiliser un ensemble de données ou un logiciel lié.

ChampTypeBesoins et contraintes
doichaîne de caractèresrequis; Longueur min: 1; Longueur max: 2048
const result = await host.mcp("literature", "datacite_get_record", {"doi": "10.14454/qdd3-ps68"})

PubMed

Afficher les opérations et les paramètres

search_articles

Recherche PubMed (biomédical & littérature sur les sciences de la vie par l'intermédiaire de la recherche en ligne de l'ICNE) pour les articles correspondant à une requête. Renvoie le nombre total de correspondances plus une page de PMIDs. Supporte les balises de champ PubMed ([Titre], [Auteur], [Journal], [Modalités MeSH], ...), les opérateurs booléens, le filtrage de date et le tri. PubMed n'indexe pas la physique / CS / maths / papiers de chimie pure.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
max_resultsentierfacultatif; par défaut : 20
retstartentierfacultatif; par défaut : 0
sortchaîne de caractèresfacultatif; enum: ["repertinence", "pub_date", "author", "journal_name", "title"]
date_fromchaîne de caractèresfacultatif
date_tochaîne de caractèresfacultatif
datetypechaîne de caractèresfacultatif; par défaut: "pdat"; enum: ["pdat", "edat", "mdat"]
const result = await host.mcp("pubmed", "search_articles", {"query": "CRISPR gene editing", "max_results": 10})

get_article_metadata

Récupérer des métadonnées détaillées d'articles de PubMed par PMID (bulk, via efetch): identifiants (pmid/pmc/doi), titre, résumé, journal, auteurs avec affiliations, date de publication, termes MeSH, types d'articles, langue et citation. Pour chaque utilisation, citer PubMed et inclure l'article retourné DOI (identificateurs.doi) comme liens.

ChampTypeBesoins et contraintes
pmids['Ficelle', 'array']requis
const result = await host.mcp("pubmed", "get_article_metadata", {"pmids": ["35486828", "33264437"]})

Trouvez le contenu PubMed associé pour une ou plusieurs sources PMIDs via NCBI elink. pubmed_pubmed (par défaut) renvoie des articles similaires classés par similitude de titres/abstractions/MeSH (citations de NOT); pubmed_pmc retourne les liens PMC en texte intégral; pubmed_gene/pubmed_protein/pubmed_nucleotide renvoie les enregistrements de séquence/genre liés.

ChampTypeBesoins et contraintes
pmids['Ficelle', 'array']requis
link_typechaîne de caractèresfacultatif; par défaut: "pubmed_pubmed"; enum: ["pubmed_pubmed", "pubmed_pmc", "pubmed_nucleotide", "pubmed_protein", "pubmed_gene"]
max_resultsentierfacultatif
const result = await host.mcp("pubmed", "find_related_articles", {"pmids": ["35486828"], "link_type": "pubmed_pubmed"})

lookup_article_by_citation

Résoudre les citations bibliographiques de PMIDs par l'intermédiaire de l'ecitmatch de la BCNI. Chaque citation fournit une partie de {journal, année, volume, first_page, auteur, key}; fournir des champs 2-3+ pour une correspondance fiable. Utilisez lorsque vous avez une liste de références et avez besoin de PMIDs.

ChampTypeBesoins et contraintes
citationstableau d'objetrequis
const result = await host.mcp("pubmed", "lookup_article_by_citation", {"citations": [{"journal": "Science", "year": 1987, "volume": "235", "first_page": "182", "author": "Palmenberg AC"}]})

convert_article_ids

Convertir entre PMID, PMCID et DOI via le convertisseur d'ID NCI/PMC. ids d'entrée homogènes par appel (set id_type à correspondre). Généralement utilisé pour vérifier si un PMID a un PMCID (c.-à-d. texte complet dans PMC) avant d'appeler get_full_text_article.

ChampTypeBesoins et contraintes
ids['Ficelle', 'array']requis
id_typechaîne de caractèresfacultatif; par défaut: "pmid"; enum: ["pmid", "pmcid", "doi"]
const result = await host.mcp("pubmed", "convert_article_ids", {"ids": ["PMC9046468"], "id_type": "pmcid"})

get_full_text_article

Récupérer le texte complet en libre accès depuis PubMed Central via Europe PMC par PMC id ("PMC12345" ou " 12345"). Retourne le texte structuré de la section plus la licence; lorsque le texte complet n'est pas disponible, la raison est indiquée explicitement (fulltext_status). Seuls les articles sous-subset OA ont récupéré le texte intégral. Sur chaque utilisation, citer PubMed et inclure l'article retourné DOI comme liens.

ChampTypeBesoins et contraintes
pmc_ids['Ficelle', 'array']requis
const result = await host.mcp("pubmed", "get_full_text_article", {"pmc_ids": ["PMC9046468"]})

Signaler le droit d'auteur et le statut de licence par PMID en combinant PubMed CopyrightInformation, le convertisseur d'ID PMC (PMID -> PMCID/DOI) et les autorisations de PMC <> block (type de licence, URL de licence ALI, déclaration de copyright/année). Utiliser pour vérifier les droits de réutilisation en libre accès avant de reproduire du contenu.

ChampTypeBesoins et contraintes
pmids['Ficelle', 'array']requis
const result = await host.mcp("pubmed", "get_copyright_status", {"pmids": ["35891187", "34375400"]})

Genes & Ontologies

Afficher les opérations et les paramètres

query_genes

Résoudre les identificateurs/symboles de gènes via mygene.info (chiffré, jusqu'à 1000 termes/demande). Utilisez ceci pour cartographier les symboles de gènes pour les ID de gènes d'Ensembl, les ID d'Entrez, les noms et tout autre champ mygene.info — ou l'inverse (cochez scopes dans l'espace de noms de vos termes d'entrée, par exemple. "entrezgene", "ensembl.gene", "symbol,alias"). Args : termes (termes de requête, p.ex. ["TP53","BRCA1"]; les termes contenant des virgules ne sont pas pris en charge); scopes (espaces de noms d'identificateurs séparés par des virgules pour correspondre aux termes); les champs (champs de mygene séparés par des commes à retourner, ou "all"); espèce (nom usuel "human"/"souris" ou NCBI a fait l'objet d'un taxi). Retourne {n_input, n_records, not_found, records}. Un terme correspondant à plusieurs gènes donne plusieurs enregistrements (chaque gène porte son query). Les enregistrements sont commandés de façon déterministe (ordre d'entrée, puis _id).

ChampTypeBesoins et contraintes
termstableau de la chaînerequis
scopeschaîne de caractèresfacultatif
fieldschaîne de caractèresfacultatif; par défaut: "symbol,name,taxid,entrezgene,ensembl.gene"
specieschaîne de caractèresfacultatif
const result = await host.mcp("genes", "query_genes", {"terms": ["TP53", "BRCA1"], "scopes": "symbol,alias", "fields": "symbol,name,entrezgene,ensembl.gene", "species": "human"})

list_ontologies

Liste des ontologies du Service de recherche en ontologie de l'EBI (OLS4). Avec ontology_ids (par exemple ["efo","cl","chebi","go","mondo"]): récupérer des enregistrements de métadonnées structurées pour ces ontologies seulement; des ID inconnus sont signalés dans not_found. Sans : le catalogue complet OLS4 (~250 ontologies, paginées entièrement et vérifiées en nombre). Retourne : {enregistrements :[{ontology_id, titre, version, état, num_terms, ...}], not_found:[...]} pour une liste d'ID, ou des enregistrements {:[...], total_elements, complet} pour le catalogue complet.

ChampTypeBesoins et contraintes
ontology_idstableau de la chaînefacultatif
const result = await host.mcp("genes", "list_ontologies", {"ontology_ids": ["efo", "go", "mondo"]})

search_ontology_terms

Rechercher les termes de l'ontologie par étiquette/synonyme dans une ou plusieurs ontologies OLS4. Utilisations typiques : trouver un ID EFO pour un nom de maladie (ontologies=["efo"]), des termes Cell Ontology pour un type de cellule (["cl"]), des termes ChEBI pour un produit chimique (["chebi"]), des termes GO par nom (["go"]) ou rechercher toutes les ontologies en même temps. Args : requête (étiquette de terme, synonyme ou identifiant); les études de cas (identifications en minuscules à limiter; Aucun ne fouille toutes les ontologies); exact (coup de corde entière); include_obsolete (faux par défaut); max_results (classé selon la pertinence de l'OLS). Retourne {query, total_found, n_returned, tronqué, termes:[{curie, iri, label, short_form, ontology, description, type, is_defining_ontology}]}.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
ontologiestableau de la chaînefacultatif
exactbooléenfacultatif; par défaut : false
include_obsoletebooléenfacultatif; par défaut : false
max_resultsentierfacultatif; par défaut : 20
const result = await host.mcp("genes", "search_ontology_terms", {"query": "asthma", "ontologies": ["efo"], "max_results": 20})

get_ontology_term

Obtenez un terme d'ontologie's détails, ou son ensemble complet de termes connexes. Avec relation=None : enregistrement à terme complet (étiquette, synonymes, description, drapeau obsolète, parents directs). Avec une relation: l'ensemble COMPLETE, entièrement paginé de termes connexes — par exemple: relation="hiérarchiqueEnfants" pour les enfants directs, y compris: part_of etc., "descendants"/"hiérarchiquesDescendants" pour l'ensemble du sous-arbre, "ancestors"/"hiérarchiqueAncestors", "parents", "children". La récupération est vérifiée en nombre par rapport au total des API'. Arguments: ontologie (case inférieure, p.ex. "efo","go","cl","chebi"); term_id (CURIE "EFO:0000305"/"GO:0006281" ou IRI complet); relation (aucun ou l'un des éléments énumérés); include_parents (comprend les réfs parents directs lorsque la relation n'est pas nulle). Retourne: relation=Aucune {curie, iri, étiquette, ontology, short_form, synonymes, description, is_obsolete, has_children, parents}; Sinon {root, relation, total_elements, term_count, termes:[...]}.

ChampTypeBesoins et contraintes
ontologychaîne de caractèresrequis
term_idchaîne de caractèresrequis
relationchaîne de caractèresfacultatif; Enum: ["parents", "children", "ancesters", "descendants", "hiérarchiqueParents", "hiérarchiqueEnfants", "hiérarchiqueAncestors", "hiérarchiqueDescendants"]
include_parentsbooléenfacultatif; par défaut : false
const result = await host.mcp("genes", "get_ontology_term", {"ontology": "go", "term_id": "GO:0006281", "relation": "children"})

get_go_annotations

Récupérer les annotations GO d'un produit génique UniProt de QuickGO (complet, vérifié en nombre). Args: uniprot_accession (par exemple "P04637", préfixe facultatif); l'aspect (comit pour tous les aspects, ou l'un des aspects de biological_process/molecular_function/cellular_component); des preuves (aucune/toute, un préréglage "experimental_manual"=des preuves expérimentales attribuées manuellement, "automatic_iea"=électronique/IEA, ou un code ECO explicite comme "ECO:0000314"; les codes de preuve GO à trois lettres comme IDA/IEA ne sont pas acceptés — QuickGO ignore silencieusement goEvidence, le filtre doit utiliser les codes ECO); taxon_id (fiscal optionnel BCNI, par exemple 9606); include_term_names (hydratez chaque enregistrement avec le nom/l'aspect/l'obsolète du terme GO par une recherche d'ontologie en série); max_records (cap sur les enregistrements); l'ensemble complet est toujours récupéré et résumé; truncated affiche le capuchon). Retourne {gene_product, total_annotations, n_records, complet, tronqué, distinct_go_ids (à travers TOUTES les annotations), records:[{go_id, go_aspect, qualificatif, go_evidence, eco_id, référence, assigned_by, date, ...}]}.

ChampTypeBesoins et contraintes
uniprot_accessionchaîne de caractèresrequis
aspectchaîne de caractèresfacultatif; enum: ["biological_process", "molecular_function", "cellular_component"]
evidencechaîne de caractèresfacultatif
taxon_identierfacultatif
include_term_namesbooléenfacultatif; par défaut : false
max_recordsentierfacultatif; par défaut : 200
const result = await host.mcp("genes", "get_go_annotations", {"uniprot_accession": "P04637", "aspect": "molecular_function", "evidence": "experimental_manual"})

get_uniprot_entries

Téléchargez les notices UniProtKB pour une liste d'adhésions (requêtes O.R. groupées, pas par adhésion). Trois modes : fields donné → récupération tabulaire token-lean de ces champs UniProt (par exemple : ["accession","id","protein_name","gene_names","organism_name","longueur","séquence"]); format est ignoré. format="fasta" → séquences FASTA par adhésion. format="txt" → texte complet de fichier plat UniProt par adhésion (annotation complète; peuvent être très grandes — préfèrent fields). Arguments: adhésions (par exemple ["P04637","P38398"]); format ("fasta"/"txt", ignoré lorsque fields est donné); champs (noms de champs UniProt REST en option pour le mode tabulaire). Retourne : fields mode { accessions, fields, n_records, records:[{<column>:value}]}; fasta/txt mode {adhésions, format, n_found, manquant, enregistrements:{adhésion:text}} — missing listes accessions UniProt n'a retourné aucun document pour.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
formatchaîne de caractèresfacultatif; enum: ["fasta", "txt"]
fieldstableau de la chaînefacultatif
const result = await host.mcp("genes", "get_uniprot_entries", {"accessions": ["P04637", "P38398"], "fields": ["accession", "id", "protein_name", "gene_names", "organism_name", "length"]})

map_reactome_pathways

Les symboles de gènes Map ou les adhésions UniProt aux voies de réactome (processus d'analyse du service). Args: identifiants (symboles de gènes si id_type="symbol", adhésions UniProt si "uniprot"; pas de duplicata); id_type ("symbol"/"uniprot"); espèces (par défaut "Homo sapiens"); ressource (AnalyseService molécule-ressources vue "TOTAL" par défaut; "UNIPROT" restreint les cartes des niveaux de protéines; include_disease (par défaut de service Vrai); compact (Vrai → parcours de bas niveau par identifiant seulement {stId,nom,espèces} + version de sortie de réactome; Faux → résultat déterministe complet : ensemble de voies complètes par identifiant avec des statistiques d'entité/réaction (valeurs p, FDR, trouvé/total) et résumé de lots incl. identifiers_not_found). Retourne: compact {tool, reactome_version, id_type, species, n_input, genes:{identificateur:{found, n_lowlevel_pathways, pathways}}}; complète ajoute les statistiques par voie et batch_summary.

ChampTypeBesoins et contraintes
identifierstableau de la chaînerequis
id_typechaîne de caractèresrequis; enum: ["symbol", "uniprot"]
specieschaîne de caractèresfacultatif; par défaut: "Homo sapiens"
resourcechaîne de caractèresfacultatif; par défaut : "TOTAL"
include_diseasebooléenfacultatif; par défaut : true
compactbooléenfacultatif; par défaut : true
const result = await host.mcp("genes", "map_reactome_pathways", {"identifiers": ["TP53", "EGFR", "BRCA1"], "id_type": "symbol"})

Génomes

Afficher les opérations et les paramètres

ensembl_lookup

Rechercher un gène/transcript/protéine Ensembl par ID stable ou un gène par symbole; renvoie l'enregistrement d'annotation de base (emplacement, biotype, transcription canonique, description). Args: requête (Ensembl stable ID ENSG.../ENST.../ENSP..., version acceptée; ou un symbole/alias de gène comme BRAF — vrais ID stables [ENS + code d'espèce optionnel + lettre de caractéristique + >=6-chiffre, ou LRG_N] route vers le paramètre ID; Tout le reste, y compris. symboles commençant par "ENS" comme ENSA, au point d'arrivée du symbole); espèce (nom de l'espèce Assembler pour les recherche de symboles, homo_sapiens par défaut; ignorés pour les identifiants stables); élargir (inclure l'arbre de caractéristiques enfant — un gène's transcriptions/exons/traduction; par défaut désactivé). Retourne {found, requête, espèce, record}; record est nul quand rien ne correspond, sinon le dict de recherche en amont — pour un gène {id, display_name, description, biotype, object_type, seq_region_name, start, end, srand, assembly_name, canonical_transcript, version, ...} avec des coordonnées inclusives 1.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
specieschaîne de caractèresfacultatif; par défaut : "homo_sapiens"
expandbooléenfacultatif; par défaut : false
const result = await host.mcp("genomes", "ensembl_lookup", {"query": "BRAF"})

ensembl_xrefs

Références croisées externes d'un ID stable d'Ensembl — le pont entre les ID gènes/transcripts d'Ensembl et HGNC, BCNI (EntrezGene), UniProt, OMIM, RefSeq, Expression Atlas et autres. Args: stable_id (ENSG.../ENST..., version acceptée); external_db (fichier en amont de la base de données, par exemple) HGNC, EntrezGene, Uniprot_gn, MIM_GENE, RefSeq_mRNA; omit pour tous). Retourne {stable_id, external_db, n_xrefs, xrefs} — la liste COMPLETE (jamais tronquée), triée par (dbname, primary_id); chaque ligne {dbname, db_display_name, primary_id, display_id, description, synonymes, info_type}. Les ID inconnus retournent n_xrefs:0.

ChampTypeBesoins et contraintes
stable_idchaîne de caractèresrequis
external_dbchaîne de caractèresfacultatif
const result = await host.mcp("genomes", "ensembl_xrefs", {"stable_id": "ENSG00000157764", "external_db": "HGNC"})

ensembl_vep_variant

Prévoir les conséquences de la variante avec Ensembl VEP — premier résumé le plus sévère de la liste des conséquences (souvent énormes) par transcrit. Passer EITHER variant_id OU region+allele. Args: variant_id (dbSNP rsID rs7412, COSMIC COSV..., ou ID HGMD); région (GRCh38 1-basé chrom inclusive:start-end, p.ex. 7:140753336-140753336; Début de SNV ===fin; insertion start=end+1; suffixe de brin explicite :1/:-1 accepté; allèle (allèle variable sur le volet vers l'avant pour l'itinéraire régional, par exemple T ou - à supprimer); espèces (par défaut homo_sapiens); max_consequences (cap sur les lignes par transcript retournées, 25 par défaut; nombre total dans n_transcript_conséquences, les lignes conservées sont les plus sévères HIGH>MODERATE>LOW>MODIFIER; transcript_consequences_truncated affiche le capuchon). Retourne {query, n_results, results:[{input, assembly_name, seq_region_name, start, end, strand, allele_string, most_severe_consequence, genes:[{gene_id, gene_symbol, worst_impact, n_transcripts}], n_transcript_conséquences, transcript_consequences_truncated, transcript_consequences:[...], n_regulatory_feature_conséquences, n_motif_feature_conséquences, colocated_variants:[...]}]}. Les RsID inconnus soulèvent avec le message en amont.

ChampTypeBesoins et contraintes
variant_idchaîne de caractèresfacultatif
regionchaîne de caractèresfacultatif
allelechaîne de caractèresfacultatif
specieschaîne de caractèresfacultatif; par défaut : "homo_sapiens"
max_consequencesentierfacultatif; par défaut : 25
const result = await host.mcp("genomes", "ensembl_vep_variant", {"variant_id": "rs7412", "max_consequences": 25})

ensembl_homology

Orthologues ou paralogues d'un gène d'Ensembl Compara (lignes condensées — pas d'alignements/séquences). Args : gene_symbol (résolvé à un ID stable dans species en premier ; passer exactement un de gene_symbol/gene_id); gene_id (ENSG...); homology_type (orthologues par défaut/paralogues/projections); target_species (limité à une espèce); target_taxon (sous-arbre du taxon de la NCBI, p.ex. Primates de 9443; combinable avec target_species, OU sémantique); espèces (espèces sources, homo_sapiens par défaut); max_homologies (par défaut du plafond de ligne 200; n_total porte le nombre complet, homologies_truncated affiche le capuchon). Retourne {gene_id, gene_symbol, species, homology_type, target_species, target_taxon, n_total, homologies_truncated, homologies}; lignes triées par (espèces, id) type {, espèce, id, protein_id, taxonomy_level, method_link_type}. Quirk: la route /homologie/symbole s'arrête — cet outil résout toujours les symboles lui-même et les requêtes par ID stable.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
homology_typechaîne de caractèresfacultatif; par défaut: "orthologues"; enum: ["orthologues", "paralogues", "projections"]
target_specieschaîne de caractèresfacultatif
target_taxonentierfacultatif
specieschaîne de caractèresfacultatif; par défaut : "homo_sapiens"
max_homologiesentierfacultatif; par défaut : 200
const result = await host.mcp("genomes", "ensembl_homology", {"gene_symbol": "BRAF", "target_species": "mus_musculus"})

ensembl_sequence

Retirez la séquence d'Ensembl — par ID stable (genre/transcript/protéine) ou par région génomique. Passez la région EITHER stable_id OU. Args: stable_id (ENSG.../ENST.../ENSP..., version acceptée); région (1-basé chrom:start..end ou chrom:start-end, GRCh38 pour l'humain, max 10Mb); espèces (pour l'itinéraire régional, homo_sapiens par défaut; ignorés pour les identifiants stables); seq_type (voie d'identification: par défaut génomique/cdna/cds/protéine — protéine uniquement pour ENST/ENSP; ignorée pour les régions qui reviennent toujours à la génomique); max_bytes (par défaut, 400000 de la fonction de garde de charge — les séquences plus grandes ont omis seq; longueur/sha256/métadonnées toujours retournées; re-appeler avec max_bytes plus grand pour le texte intégral). Retourne {found, requête, seq_type, id, description, molécule, longueur, sha256, seq} — longueur de l'unité implicite par molécule (bases pour l'ADN, résidus pour les protéines); après remplacé par seq_omitted lorsqu'il est plafonné; found:false avec des champs nuls pour des ID stables inconnus; les régions mal formées/surdimensionnées soulèvent le message en amont.

ChampTypeBesoins et contraintes
stable_idchaîne de caractèresfacultatif
regionchaîne de caractèresfacultatif
specieschaîne de caractèresfacultatif; par défaut : "homo_sapiens"
seq_typechaîne de caractèresfacultatif; par défaut: "genomic"; enum: ["genomic", "cdna", "cds", "protéine"]
max_bytesentierfacultatif; par défaut : 400000
const result = await host.mcp("genomes", "ensembl_sequence", {"stable_id": "ENSP00000288602", "seq_type": "protein"})

ensembl_overlap_region

Liste Les caractéristiques d'Ensembl chevauchent une région génomique — gènes, transcriptions, caractéristiques réglementaires (enhancers/promoteurs), répétitions, variantes, bandes de caryotypes. Args: région (1-basé chrom inclusive:start-end GRCh38, p.ex. 7:140719327-140925199; les rejets en amont s'étendent sur la bande > 5Mb — fractionnement plus large); caractéristique (genre par défaut/transcript/exon/cds/regulatory/motif/repeat/variation/structural_variation/band/simple/misc); espèces (par défaut homo_sapiens); max_features (par défaut du plafond de ligne 500; n_total porte le nombre complet de chevauchements, features_truncated affiche le capuchon). Retourner {region, especes, feature, n_total, features_truncated, features} trié par (départ,id). La forme de la ligne varie — gènes {id, external_name, biotype, description, début, fin, brin, canonical_transcript, ...}; règlement {id, description, début, fin, extended_start/end, ...}. Les régions vides retournent n_total:0.

ChampTypeBesoins et contraintes
regionchaîne de caractèresrequis
featurechaîne de caractèresfacultatif; par défaut: "gene"; enum: ["gene", "transcript", "exon", "cds", "regulatory", "motif", "repeat", "variation", "structural_variation", "band", "simple", "misc"]
specieschaîne de caractèresfacultatif; par défaut : "homo_sapiens"
max_featuresentierfacultatif; par défaut : 500
const result = await host.mcp("genomes", "ensembl_overlap_region", {"region": "7:140719327-140925199", "feature": "gene"})

ucsc_list_tracks

List data tracks disponibles dans un UCSC Genome Browser (leaf tracks seulement — les requêtes), en option filtré. Arguments: génome (hg38 par défaut/hg19/mm39/danRer11/... - les assemblages 220; filter_text (sous-chaîne insensible au cas par rapport au nom/à l'étiquette courte/longue, p.ex. phyloP, TFBS, ClinVar; omit pour lister tout — hg38 a ~24k feuilles de pistes, vous voulez presque toujours un filtre); max_tracks (par défaut du plafond de ligne 200; n_total porte le nombre complet de correspondances, tracks_truncated affiche le capuchon). Retourne {genome, filter_text, n_total, tracks_truncated, tracks} triées par nom de piste; chaque ligne {track, short_label, long_label, type, groupe, parent}. Utilisez track avec ucsc_track_data. Quirk: premier appel par génome télécharge la liste complète ~17MB et la cache pour le processus.

ChampTypeBesoins et contraintes
genomechaîne de caractèresfacultatif; par défaut : "hg38"
filter_textchaîne de caractèresfacultatif
max_tracksentierfacultatif; par défaut : 200
const result = await host.mcp("genomes", "ucsc_list_tracks", {"genome": "hg38", "filter_text": "phyloP", "max_tracks": 50})

ucsc_track_data

Récupère les lignes brutes de n'importe quelle piste du Navigateur Génome UCSC dans une région — l'écoutille d'échappement générique derrière ucsc_conservation / ucsc_tfbs_clusters (pistes de gènes, ClinVar, catalogue GWAS, îles CpG, répétitions, ...). Args: piste (nom de ucsc_list_tracks, p.ex. gene, cpgIslandExt, clinvarMain); chrom (chr-préfixed, chr7/chrX — UCSC exige le préfixe); démarrage (à moitié ouvert en 0); un démarrage basé sur Ensembl 1 est start-1 ici); fin (exclusive); génome (par défaut hg38); max_rows (API maxItemsOutput, par défaut 1000; tronqué reflète le API's propriétaire maxItemsLimit flag). Retourne {genome, track, chrom, start, end, track_type, items_returned, tronqué, rows} — lignes en amont ({chrom, chromStart, chromEnd, nom, score, ...} de type BED; wiggle {start, fin, value}). Des traces inconnues s'élèvent. Quirk : pour certaines pistes énormes, les caps API sortent lui-même et pointent à dataDownloadUrl — fait écho lorsque présent.

ChampTypeBesoins et contraintes
trackchaîne de caractèresrequis
chromchaîne de caractèresrequis
startentierrequis
endentierrequis
genomechaîne de caractèresfacultatif; par défaut : "hg38"
max_rowsentierfacultatif; par défaut : 1000
const result = await host.mcp("genomes", "ucsc_track_data", {"track": "cpgIslandExt", "chrom": "chr7", "start": 140700000, "end": 140800000, "genome": "hg38"})

ucsc_conservation

Sommaire de conservation évolutionnaire pour une région à partir des pistes phyloP / phastCons de l'UCSC (scores de base sur des alignements multi-espèces). Arguments: chrom (préfixés en chr); démarrage (à moitié ouvert en 0); fin (exclusive; calibrée à 100000 bp — fractionnement plus large); génome (par défaut hg38); piste (par défaut phyloP100way; positif=conservé, négatif=évolution rapide; les solutions de rechange hg38 phastCons100way, phyloP30way, phastCons30way, phyloP447way, phyloP470way; hg19 phyloP100wayAll/phastCons100way); include_values (également renvoyer par base {start,end,value} les lignes captées à max_values, values_truncated datent du capuchon; false par défaut = résumé seulement); max_values (par défaut de la limite de base 2000). Retourner {genome, track, chrom, start, end, span_bp, n_bases_covered, coverage_fraction, moyenne, min, max} (+valeurs, values_truncated sur demande). Statistiques pondérées par la portée de base de chaque row's, attachées à la fenêtre; bases découvertes inférieures à coverage_fraction, pas à zéro. Les pistes non-score augmentent; une liste de lignes en amont-tronquées soulève également.

ChampTypeBesoins et contraintes
chromchaîne de caractèresrequis
startentierrequis
endentierrequis
genomechaîne de caractèresfacultatif; par défaut : "hg38"
trackchaîne de caractèresfacultatif; par défaut : "phyloP100way"
include_valuesbooléenfacultatif; par défaut : false
max_valuesentierfacultatif; par défaut : 2000
const result = await host.mcp("genomes", "ucsc_conservation", {"chrom": "chr7", "start": 140753330, "end": 140753380, "track": "phyloP100way"})

ucsc_tfbs_clusters

Les grappes de sites de liaison des facteurs de transcription ENCODE chevauchent une région (les grappes de pointe de type ChIP-seq sur des centaines de types cellulaires) — où les FT se lient. Arguments: chrom (préfixés en chr); démarrage (à moitié ouvert en 0); fin (exclusive); génome (hg38 piste par défaut encRegTfbsClustered ENCODE 3, ou hg19 wgEncodeRegTfbsClusteredV3; d'autres assemblées se lèvent); max_rows (API maxItemsOutput par défaut 1000; tronqué reflète maxItemsLimit). Retourne {genome, track, chrom, start, end, items_returned, tronqué, n_factors, facteurs, clusters} — groupes triés par (chromStart, nom) {nom (symbole FT par exemple CTCF), chrom, chromStart, chromEnd, score (0-1000), sourceCount (support d'expériences)}; les facteurs sont la liste distincte des FT. Score>=~600 et haute sourceCount ~ fixation robuste.

ChampTypeBesoins et contraintes
chromchaîne de caractèresrequis
startentierrequis
endentierrequis
genomechaîne de caractèresfacultatif; par défaut : "hg38"
max_rowsentierfacultatif; par défaut : 1000
const result = await host.mcp("genomes", "ucsc_tfbs_clusters", {"chrom": "chr7", "start": 140699000, "end": 140760000, "genome": "hg38"})

ucsc_chrom_sizes

Noms et dimensions des chromosomes et des contigs d'un assemblage UCSC — pour valider les coordonnées et les régions itératrices. Arguments: génome (par défaut hg38); filter_text (sous-chaîne insensible à la casse sur le nom, p.ex. chr1; omit pour tous — hg38 a des séquences 711, principalement alt/random/non-placed; les chromosomes primaires trient d'abord); max_chroms (par défaut du plafond de ligne 100; n_total porte le nombre complet de post-filtre, chroms_truncated affiche le capuchon). Retourne {genome, filter_text, chrom_count (ensemble large à partir de API), n_total, chroms_truncated, chromosomes:[{name, size_bp}]} triées par taille descendante.

ChampTypeBesoins et contraintes
genomechaîne de caractèresfacultatif; par défaut : "hg38"
filter_textchaîne de caractèresfacultatif
max_chromsentierfacultatif; par défaut : 100
const result = await host.mcp("genomes", "ucsc_chrom_sizes", {"genome": "hg38", "filter_text": "chr1", "max_chroms": 25})

Variantes

Afficher les opérations et les paramètres

get_variant

Recherchez une variante courte de gnomAD par ID et retournez ses fréquences de population. variant_id est chrom-pos-ref-alt sur la compilation de référence de l'ensemble de données's (GRCh38 pour r3/r4, GRCh37 pour r2.1/ExAC), par exemple. 19-44908822-C-T (APOE rs7412); Utilisez search_variants pour résoudre un rsID en premier.

ChampTypeBesoins et contraintes
variant_idchaîne de caractèresrequis
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_r4"; enum: ["gnomad_r4", "gnomad_r4_non_ukb", "gnomad_r3", "gnomad_r3_controls_and_biobanks", "gnomad_r3_non_cancer", "gnomad_r3_non_neuro", "gnomad_r3_non_topmed", "gnomad_r3_non_v2", "gnomad_r2_1", "gnomad_r2_1_controls", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_topmed", "exac"]
const result = await host.mcp("variants", "get_variant", {"variant_id": "19-44908822-C-T", "dataset": "gnomad_r4"})

search_variants

Recherche de gnomAD pour les ID de variante correspondant à une chaîne de requête (un rsID comme rs7412, un ID de variante, ou un préfixe). Utilisez ceci pour résoudre les IDs rs vers chrom-pos-ref-alt IDs pour get_variant.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_r4"; enum: ["gnomad_r4", "gnomad_r4_non_ukb", "gnomad_r3", "gnomad_r3_controls_and_biobanks", "gnomad_r3_non_cancer", "gnomad_r3_non_neuro", "gnomad_r3_non_topmed", "gnomad_r3_non_v2", "gnomad_r2_1", "gnomad_r2_1_controls", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_topmed", "exac"]
const result = await host.mcp("variants", "search_variants", {"query": "rs7412", "dataset": "gnomad_r4"})

gene_variants

Liste ALL gnomAD variants courts dans un gène (liste complète — peut être des milliers de lignes pour les grands gènes). Passer exactement un de gene_symbol (symbole HGNC, p.ex. APOE) ou gene_id (ID génétique de l'assemblage, p.ex. ENSG00000130203).

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_r4"; enum: ["gnomad_r4", "gnomad_r4_non_ukb", "gnomad_r3", "gnomad_r3_controls_and_biobanks", "gnomad_r3_non_cancer", "gnomad_r3_non_neuro", "gnomad_r3_non_topmed", "gnomad_r3_non_v2", "gnomad_r2_1", "gnomad_r2_1_controls", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_topmed", "exac"]
const result = await host.mcp("variants", "gene_variants", {"gene_symbol": "APOE", "dataset": "gnomad_r4"})

gene_constraint

métrique de la contrainte du gène gnomAD : pLI, nombres observés/prévus de LoF-missense-synonymes avec rapports oe + limites d'IC 90%, et par classe z-scores. Utilisation pour juger une intolérance de gène's à la perte de fonction (pLI >= 0.9 ou oe_lof_upper (LOEUF) < 0.6 ~ LoF-intolérant). Passez exactement un de gene_symbol (par exemple TP53) ou gene_id.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
const result = await host.mcp("variants", "gene_constraint", {"gene_symbol": "TP53"})

region_variants

Liste ALL gnomAD variants courts dans une région génomique (max 1 Mb — diviser les régions plus grandes en fenêtres consécutives). chrom est un nom de chromosome sans préfixe chr (1-22, X, Y); start/stop sont basés sur 1 inclusivement et stop - start doit être <= 1,000,000. L'ensemble de données détermine la construction de référence des coordonnées (GRCh38 pour r3/r4).

ChampTypeBesoins et contraintes
chromchaîne de caractèresrequis
startentierrequis
stopentierrequis
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_r4"; enum: ["gnomad_r4", "gnomad_r4_non_ukb", "gnomad_r3", "gnomad_r3_controls_and_biobanks", "gnomad_r3_non_cancer", "gnomad_r3_non_neuro", "gnomad_r3_non_topmed", "gnomad_r3_non_v2", "gnomad_r2_1", "gnomad_r2_1_controls", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_topmed", "exac"]
const result = await host.mcp("variants", "region_variants", {"chrom": "1", "start": 55039475, "stop": 55064852, "dataset": "gnomad_r4"})

liftover_variant

Carter une variante ID entre les constructions de référence (GRCh37 <-> GRCh38) utilisant la table de levage gnomAD's. variant_id est chrom-pos-ref-alt sur source_build. L'itinéraire est directionnel : un ID GRCh38 passé avec source_build=GRCh37 renvoie zéro résultat, pas une erreur.

ChampTypeBesoins et contraintes
variant_idchaîne de caractèresrequis
source_buildchaîne de caractèresfacultatif; par défaut: "GRCh37"; enum: ["GRCh37", "GRCh38"]
const result = await host.mcp("variants", "liftover_variant", {"variant_id": "1-55516888-G-GA", "source_build": "GRCh37"})

clinvar_variants

List ClinVar variants dans un gène comme miroir par le gnomAD, avec la signification clinique, le statut d'examen et les étoiles d'or. Les pins de sortie gnomAD's ClinVar snapshot via clinvar_release_date. Passez exactement un de gene_symbol (par exemple BRCA1) ou gene_id.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
const result = await host.mcp("variants", "clinvar_variants", {"gene_symbol": "BRCA1"})

structural_variants

Lister les variantes structurales du gnomAD (suppressions, duplications, insertions, inversions, CNV...) qui chevauchent un gène. Passez exactement un de gene_symbol (par exemple TP53) ou gene_id. dataset est une broche SV — gnomad_sv_r4 (par défaut GRCh38) ou gnomad_sv_r2_1 (GRCh37); Les identifiants SV sont spécifiques aux versions.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_sv_r4"; enum: ["gnomad_sv_r4", "gnomad_sv_r2_1"]
const result = await host.mcp("variants", "structural_variants", {"gene_symbol": "TP53", "dataset": "gnomad_sv_r4"})

get_structural_variant

Recherchez une variante structurelle de gnomAD par son identifiant SV spécifique à la libération (p. ex. DEL_CHR17_599B1512 dans gnomad_sv_r4). Les ID ne portent PAS les versions — dataset (gnomad_sv_r4 par défaut, ou gnomad_sv_r2_1) doit correspondre à la version de l'ID.

ChampTypeBesoins et contraintes
sv_idchaîne de caractèresrequis
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_sv_r4"; enum: ["gnomad_sv_r4", "gnomad_sv_r2_1"]
const result = await host.mcp("variants", "get_structural_variant", {"sv_id": "DEL_CHR17_A5250EA9", "dataset": "gnomad_sv_r4"})

mitochondrial_variants

Énumérer les variantes mitochondriales de gnomAD avec des comptes hétéroplasmiques (ac_het, ac_hom, max_heteroplasmy) pour un gène mitochondrial OU pour une fenêtre de coordonnées chrM. Passez un gène (gene_symbol comme MT-TL1, ou gene_id) OU une région (region_start + region_stop), pas les deux.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresfacultatif
gene_idchaîne de caractèresfacultatif
region_startentierfacultatif
region_stopentierfacultatif
datasetchaîne de caractèresfacultatif; par défaut: "gnomad_r4"; enum: ["gnomad_r4", "gnomad_r4_non_ukb", "gnomad_r3", "gnomad_r3_controls_and_biobanks", "gnomad_r3_non_cancer", "gnomad_r3_non_neuro", "gnomad_r3_non_topmed", "gnomad_r3_non_v2", "gnomad_r2_1", "gnomad_r2_1_controls", "gnomad_r2_1_non_cancer", "gnomad_r2_1_non_neuro", "gnomad_r2_1_non_topmed", "exac"]
const result = await host.mcp("variants", "mitochondrial_variants", {"gene_symbol": "MT-TL1", "dataset": "gnomad_r4"})

Rechercher directement ClinVar (en direct NCI, pas snapshot de gnomAD's) et retourner les enregistrements de variation correspondant avec la signification clinique, le statut de l'examen et les étoiles d'or. Nécessite un courriel de contact (Paramètres → Pouvoirs → Accès à la littérature → Contact email) par politique d'utilisation des services électroniques de la BCNI. Args: requête (une requête ClinVar Entrez — texte libre comme "TP53 R175H" ou une chaîne HGVS fonctionne, et les termes fielded composent avec AND/OR/NOT, p.ex. BRCA1[gene], pathogène[CLIN_SIG], syndrome de "Lynch"[dis], single_nucleotide_variant[Type de variation]; un rsID fonctionne également mais clinvar_variant_by_rsid renvoie des enregistrements plus complets), max_records (chapeau de page 1-200, par défaut 50). La correspondance TOTAL est toujours signalée; lorsque > total max_records la liste est un préfixe plafonné (ClinVar pertinence / ordre de précision) et tronqué est vrai. Les utilities E de la NCBI retournent par intermittence HTTP 500 sous charge — réessayez une fois quelques secondes plus tard si cette surface est en place.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 50
const result = await host.mcp("variants", "clinvar_search", {"query": "BRCA1 pathogenic[CLIN_SIG]", "max_records": 50})

clinvar_get_records

Récupérer des enregistrements ClinVar complets pour un lot d'adhésions VCV/RCV ou des ID de variation nue. Nécessite un courriel de contact (Paramètres → Pouvoirs → Accès à la littérature → Contact email) par politique d'utilisation des services électroniques de la BCNI. Args: adhésions (jusqu'à 50 identificateurs, formulaires mixtes acceptés — VCV000045122 (version VCV000045122.3 ok; résolu localement, gratuitement), RCV000019428 (chaque RCV coûte une recherche supplémentaire), ou un ID nu de variation ClinVar (45122). Les ID rs sont rejetés — utiliser clinvar_variant_by_rsid. Un VRC (une paire de variables-conditions) résout son enregistrement de variation VCV parent. N'abandonne jamais silencieusement une entrée.

ChampTypeBesoins et contraintes
accessions['Ficelle', 'array']requis
const result = await host.mcp("variants", "clinvar_get_records", {"accessions": ["VCV000045122", "RCV000019428", "45123"]})

clinvar_variant_by_rsid

Tous les enregistrements de variation ClinVar qui font référence à un rsID dbSNP, avec des classifications complètes (un rsID peut cartographier plusieurs VCV — un par allèle alternatif, par exemple. rs121913529 couvre KRAS G12D/G12V/G12A). Nécessite un courriel de contact (Paramètres → Pouvoirs → Accès à la littérature → Contact email) par politique d'utilisation des services électroniques de la BCNI. Args: rsid (dbSNP référence SNP ID, p.ex. rs7412; cas insensible, doit correspondre à rs<digits>), max_records (cap 1-200, par défaut 50). le total porte toujours le nombre de matchs réels et les drapeaux tronqués une liste plafonnée; total == 0 signifie que ClinVar n'a pas d'enregistrement pour le rsID.

ChampTypeBesoins et contraintes
rsidchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 50
const result = await host.mcp("variants", "clinvar_variant_by_rsid", {"rsid": "rs121913529", "max_records": 50})

dbsnp_get_rsids

Canonique dbSNP RefSNP enregistre un lot de rsID : placements GRCh38+GRCh37, allèles, contexte génétique, fréquences des allèles par étude et références croisées ClinVar. Nécessite un courriel de contact (Paramètres → Pouvoirs → Accès à la littérature → Contact email) par politique d'utilisation des services électroniques de la BCNI; sans un, l'outil retourne {error: 'contact_email_required', message}. Args: rsids (jusqu'à 20 rs<digets>, insensible à la casse) — chaque demande de services de variation NCI à un rythme donné, si gros lots prennent ~1 s par rsID. Retourne {n_requested, records, not_found (numéros ders dbSNP does't know), not_processed (desrsID ont sauté lorsque le budget de l'horloge murale s'est épuisé — re-request just them)}. Chaque enregistrement: {rsid, status, create_date, last_update_date, last_update_build_id, n_citations, citations_pmids (entaché à 20; citations_truncated affiche le capuchon), variant_type, mane_select_ids, emplacements, allèles}. statut est 'live', 'merged' (l'enregistrement porte à la place merged_into — re-demander ces rsIDs) ou 'no_data' (retiré/non pris en charge). Les emplacements donnent des coordonnées chromosomiques basées sur 1 avec des réf/alts par assemblage (GRCh38 d'abord, is_primary true). Chaque entrée alt-allèle: {allele, ref, spdi (0-based interbase), hgvs, fréquences: [{study, study_version, allele_count, total_count, af}] (ALFA, 1000Genomes, TOPMED, gnomAD...), clinvar: [{rcv_accession, clinical_significances, review_status, last_evaluated_date, disease_names}], gènes: [{symbol, gene_id, nom, orientation, conséquences (termes SO), mane_select: [{transcript_hgvs, protein_spdi}]}]}.

ChampTypeBesoins et contraintes
rsidstableau de la chaînerequis
const result = await host.mcp("variants", "dbsnp_get_rsids", {"rsids": ["rs7412", "rs429358"]})

dbsnp_search_by_region

List dbSNP rsIDs in a genomic window (esearch db=snp positional index — NCBI Variation Services n'a pas de paramètre régional). Nécessite un courriel de contact (Paramètres → Pouvoirs → Accès à la littérature → Contact email) par politique d'utilisation des services électroniques de la BCNI; sans un, l'outil retourne {error: 'contact_email_required', message}. Args: chrom (1-22, X, Y ou MT; 'chr' préfixe toléré), démarrage (1 inclus), arrêt (inclus; calibrée à 1 Mb — diviser les grandes régions en fenêtres consécutives; les régions denses détiennent plusieurs milliers de rsID par kb, ainsi garder les fenêtres petites ou élever max_rsids), assemblage (qui index positionnel — 'GRCh38' par défaut -> [CPOS], ou 'GRCh37' -> [CPOS_GRCH37]; les coordonnées doivent être sur l'ensemble choisi), max_rsids (liste du capuchon 1-1000, 200 par défaut). Retourne {chrom, start, stop, Assemblage, terme (la requête exacte d'Entrez utilisée), total (le compte propre de API'), n_returned, tronqué, rsids}. tronqué est vrai lorsque > total n_returned — la liste est alors un préfixe dans l'ordre par défaut d'Entrez (décroissant le numéro rs), jamais une troncation silencieuse. Nourrissez des rsIDs (<= 20 à la fois) à dbsnp_get_rsids pour les enregistrements complets.

ChampTypeBesoins et contraintes
chromchaîne de caractèresrequis
startentierrequis
stopentierrequis
assemblychaîne de caractèresfacultatif; par défaut: "GRCh38"; enum: ["GRCh38", "GRCh37"]
max_rsidsentierfacultatif; par défaut : 200
const result = await host.mcp("variants", "dbsnp_search_by_region", {"chrom": "19", "start": 44905000, "stop": 44910000, "assembly": "GRCh38"})

Essais cliniques

Afficher les opérations et les paramètres

search_trials

Recherche PRIMAIRE sur ClinicalTrials.gov. Filtrer par condition, intervention, promoteur, emplacement, statut (p. ex. ["RECRUITING"]), phase (["PHASE1".."PHASE4"]) et study_type. condition/intervention/parrain/localisation accepter la syntaxe de requête Essie (boolean AND/OR/NOT, "quoted phrases", groupement, synonymes automatiques). Page avec page_token; définissez count_total pour le nombre total de correspondances. advanced_query fusionne une expression brute d'Essie dans filter.advanced.

ChampTypeBesoins et contraintes
conditionchaîne de caractèresfacultatif
interventionchaîne de caractèresfacultatif
sponsorchaîne de caractèresfacultatif
locationchaîne de caractèresfacultatif
statustableau de la chaînefacultatif
phasetableau de la chaînefacultatif
study_typechaîne de caractèresfacultatif; Enum: ["INTERVENTIONAL", "OBSERVATIONAL", "EXPANDED_ACCESS"]
advanced_querychaîne de caractèresfacultatif
page_sizeentierfacultatif; par défaut : 10; minimum: 1; maximum: 1000
page_tokenchaîne de caractèresfacultatif
count_totalbooléenfacultatif; par défaut : false
const result = await host.mcp("clinical-trials", "search_trials", {"condition": "lung cancer", "status": ["RECRUITING"], "phase": ["PHASE3"], "count_total": true, "page_size": 10})

get_trial_details

Obtenez des détails complets pour un essai par NCT id (format "NCT" + chiffres 8; un nombre nu est préfixé, insensible à la casse). Retourne les critères d'admissibilité complets, la conception de l'étude, les critères primaires, secondaires et autres, tous les emplacements, le promoteur et les collaborateurs, les dates, l'inscription et un lien de résultats.

ChampTypeBesoins et contraintes
nct_idchaîne de caractèresrequis
const result = await host.mcp("clinical-trials", "get_trial_details", {"nct_id": "NCT03661411"})

search_by_sponsor

Trouver des essais parrainés par une entreprise ou une organisation (comparaison de nom partiel, p. ex. "Pfizer" correspond à "Pfizer Inc"). Facultativement étroit par état, phase et statut. Définissez count_total pour le nombre total d'essais par le promoteur. Page avec page_token.

ChampTypeBesoins et contraintes
sponsor_namechaîne de caractèresrequis
conditionchaîne de caractèresfacultatif
phasetableau de la chaînefacultatif
statustableau de la chaînefacultatif
page_sizeentierfacultatif; par défaut : 10; minimum: 1; maximum: 1000
page_tokenchaîne de caractèresfacultatif
count_totalbooléenfacultatif; par défaut : false
const result = await host.mcp("clinical-trials", "search_by_sponsor", {"sponsor_name": "Pfizer", "phase": ["PHASE3"], "count_total": true})

search_investigators

Trouver les chercheurs principaux et les sites de recherche par état, institution, emplacement ou investigator_name. les filtres de l'établissement sur le site et ont priorité sur l'emplacement; investigator_name recherche GlobalOfficialName et ResponsablePartyInvestigatorFullName. Retourne les contacts du site (noms, rôles, affiliations, installations, villes) avec leurs ids NCT d'essai. page_size capte le nombre d'essais scannés.

ChampTypeBesoins et contraintes
conditionchaîne de caractèresfacultatif
institutionchaîne de caractèresfacultatif
locationchaîne de caractèresfacultatif
investigator_namechaîne de caractèresfacultatif
statustableau de la chaînefacultatif
page_sizeentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("clinical-trials", "search_investigators", {"condition": "Alzheimer", "institution": "Mayo Clinic", "page_size": 20})

analyze_endpoints

Analyser les mesures des résultats primaires/secondaires/autres (points de fin). Fournir UNIQUEMENT nct_id (mode à essai unique) OU condition (mode global pour tous les essais); si les deux sont donnés, nct_id a priorité. Le mode agrégé peut être réduit par phase et start_date_after (AAA-MM-JJ) et scanne jusqu'à des essais page_size. Renvoie les listes de paramètres ainsi que les noms de mesures les plus courants dans les essais analysés.

ChampTypeBesoins et contraintes
nct_idchaîne de caractèresfacultatif
conditionchaîne de caractèresfacultatif
phasetableau de la chaînefacultatif
start_date_afterchaîne de caractèresfacultatif
page_sizeentierfacultatif; par défaut : 50; minimum: 1; maximum: 1000
const result = await host.mcp("clinical-trials", "analyze_endpoints", {"nct_id": "NCT03661411"})

search_by_eligibility

Appariement patient-procès. DÉFAUTS DE RECRUTIR les essais à moins que le statut ne soit établi. min_age/max_age sont les PATIENT' âgés (" 65 Years", " 6 Months") et correspondent aux essais dont la fenêtre d'âge admet le patient; le sexe correspond à des essais acceptant ce sexe ou tous les comers; eligibility_keywords recherche le texte des critères d'inclusion/d'exclusion (par exemple "HbA1c > 8", "BRCA mutation", "ECOG 0-1"). Au moins une condition, eligibility_keywords, min_age, max_age ou sexe est requise. Page avec page_token.

ChampTypeBesoins et contraintes
conditionchaîne de caractèresfacultatif
eligibility_keywordschaîne de caractèresfacultatif
min_agechaîne de caractèresfacultatif
max_agechaîne de caractèresfacultatif
sexchaîne de caractèresfacultatif; Enum: ["ALL", "MALE", "FEMALE"]
statustableau de la chaînefacultatif
page_sizeentierfacultatif; par défaut : 10; minimum: 1; maximum: 1000
page_tokenchaîne de caractèresfacultatif
const result = await host.mcp("clinical-trials", "search_by_eligibility", {"condition": "diabetes", "min_age": "65 Years", "sex": "FEMALE"})

Génomique clinique

Afficher les opérations et les paramètres

clingen_gene_validity

ClinGen curations de validité de la maladie génique (comment la preuve est forte que la variation d'un gène provoque une maladie: Définitif/Strong/Moderate/Limited/Disputed/Refuted/No Connown Disease Relation). Omit le gène pour lister toutes les curations 3,600+.

ChampTypeBesoins et contraintes
genechaîne de caractèresfacultatif
const result = await host.mcp("clinical-genomics", "clingen_gene_validity", {"gene": "BRCA2"})

clingen_dosage_sensitivity

ClinGen dosage curations: haplo-insuffisance et triplosensitivité assertions pour les gènes (et éventuellement les régions génomiques ISCA/CNV). Un symbole génétique ou un identifiant de région ISCA filtre exactement; omit pour la table complète.

ChampTypeBesoins et contraintes
genechaîne de caractèresfacultatif
include_regionsbooléenfacultatif; par défaut : false
const result = await host.mcp("clinical-genomics", "clingen_dosage_sensitivity", {"gene": "TP53"})

clingen_actionability

ClinGen clinGen actionability curations: pour les troubles associés à un gène, si l'intervention précoce chez les porteurs pré-symptomatiques est actionnable (couples intervention/résultat avec gravité, probabilité, efficacité, scores de la composante nature d'intervention et score total). Le filtre Gene correspond à n'importe quel membre des sujets multi-genre.

ChampTypeBesoins et contraintes
genechaîne de caractèresfacultatif
contextchaîne de caractèresfacultatif; par défaut: "botth"; enum: ["adulte", "pédiatric", "both"]
const result = await host.mcp("clinical-genomics", "clingen_actionability", {"gene": "BRCA1", "context": "adult"})

clingen_variant_classifications

ClinGen Repository Evidence Repository (ERepo) classifications de la pathogénicité des variantes du panel d'experts (interprétations du VCEP selon les critères ACMG). Fournir EXACTEMENT UN gène (symbole HGNC), caid (allèle canonique ClinGen id, p.ex. CA114360), ou hgvs (par exemple NM_000277.2:c.1222C>T). Extraction complète (matchLimit=none).

ChampTypeBesoins et contraintes
genechaîne de caractèresfacultatif
caidchaîne de caractèresfacultatif
hgvschaîne de caractèresfacultatif
const result = await host.mcp("clinical-genomics", "clingen_variant_classifications", {"gene": "BRCA1"})

civic_search_genes

Trouvez les enregistrements de gènes CIViC par le symbole exact d'Entrez (p. ex. "BRAF") . Entièrement paginé, vérifié au compte. Utilisez l'identifiant du gène CIViC retourné avec civic_gene_variants.

ChampTypeBesoins et contraintes
entrez_symbolchaîne de caractèresrequis
const result = await host.mcp("clinical-genomics", "civic_search_genes", {"entrez_symbol": "BRAF"})

civic_gene_variants

Toutes les variantes d'un gène CIViC (par le gène id de CIViC), entièrement paginées, sont complètes même pour les gènes contenant des centaines de variantes. Trié par variante id.

ChampTypeBesoins et contraintes
gene_identierrequis
const result = await host.mcp("clinical-genomics", "civic_gene_variants", {"gene_id": 5})

civic_get_variant

Une variante de CIViC par son id de variante de CIViC (aliases, types de variantes, liaison entre caractéristiques et gènes, coordonnées pour les variantes de gènes). Retourne found=false si absent.

ChampTypeBesoins et contraintes
variant_identierrequis
const result = await host.mcp("clinical-genomics", "civic_get_variant", {"variant_id": 12})

civic_search_variants

Recherche de variantes de CIViC par sous-chaîne de noms (par exemple : "V600"), éventuellement inclu dans un id de gène CIViC. Entièrement paginés; trié par variante id.

ChampTypeBesoins et contraintes
namechaîne de caractèresrequis
gene_identierfacultatif
const result = await host.mcp("clinical-genomics", "civic_search_variants", {"name": "V600", "gene_id": 5})

civic_get_evidence_item

Un élément de preuve du CIVIC par id : la signification clinique d'un profil moléculaire dans un contexte de maladie/thérapie (niveau de preuve A-E, type, direction, signification, cote, maladie, thérapies, source). Retourne found=false si absent.

ChampTypeBesoins et contraintes
evidence_identierrequis
const result = await host.mcp("clinical-genomics", "civic_get_evidence_item", {"evidence_id": 1409})

civic_search_evidence

Rechercher les éléments de preuve de la CIViC par toute combinaison de filtres; entièrement paginé, vérifié en nombre, trié par des preuves ascendantes id. Les filtres enum prennent les valeurs enum de CIVic GraphQL (evidence_level "A".."E"; evidence_type PRÉDICTIF ,PROGNOSTIC ,DIAGNOSTIC ,PRÉDISPOSING ,ONCOGENIC ,FUNCTIONNEL ; evidence_direction SUPPORTS DOES_NOT_SUPPORT; statut ACCEPTÉ , SUBMITÉ , REJETÉ ,ALL). Fournir au moins un filtre — aucun filtre ne marche sur l'ensemble du corpus de 10k+.

ChampTypeBesoins et contraintes
disease_namechaîne de caractèresfacultatif
therapy_namechaîne de caractèresfacultatif
evidence_levelchaîne de caractèresfacultatif
evidence_typechaîne de caractèresfacultatif
evidence_directionchaîne de caractèresfacultatif
significancechaîne de caractèresfacultatif
variant_originchaîne de caractèresfacultatif
evidence_ratingentierfacultatif
statuschaîne de caractèresfacultatif
molecular_profile_namechaîne de caractèresfacultatif
molecular_profile_identierfacultatif
variant_identierfacultatif
disease_identierfacultatif
therapy_identierfacultatif
phenotype_identierfacultatif
source_identierfacultatif
assertion_identierfacultatif
const result = await host.mcp("clinical-genomics", "civic_search_evidence", {"disease_name": "melanoma", "evidence_level": "A"})

civic_get_assertion

Une affirmation du CIVIC par id : une allégation sommaire curée par des experts (niveau de l'AMP/ASCO/CAP, codes ACMG/ClinGen, drapeaux d'essai de la FDA) qui regroupe les preuves d'un profil moléculaire dans un contexte de maladie/thérapie. Retourne found=false si absent.

ChampTypeBesoins et contraintes
assertion_identierrequis
const result = await host.mcp("clinical-genomics", "civic_get_assertion", {"assertion_id": 7})

civic_search_assertions

Rechercher les assertions de CIViC par toute combinaison de filtres; entièrement paginé, vérifié en nombre, trié par id d'affirmation ascendante. assertion_type PRÉDICTIF ,PROGNOSTIC ,DIAGNOSTIC ,PRÉDISPOSING ,ONCOGENIC ; assertion_direction SUPPORTS DOES_NOT_SUPPORT; amp_level p.ex. TRE_I_LEVEL_A; statut ACCEPTÉS SUBMETTÉS RÉJETÉS À TOUS. Aucun filtre ne marche sur tout le corpus.

ChampTypeBesoins et contraintes
disease_namechaîne de caractèresfacultatif
therapy_namechaîne de caractèresfacultatif
assertion_typechaîne de caractèresfacultatif
assertion_directionchaîne de caractèresfacultatif
significancechaîne de caractèresfacultatif
amp_levelchaîne de caractèresfacultatif
statuschaîne de caractèresfacultatif
molecular_profile_namechaîne de caractèresfacultatif
molecular_profile_identierfacultatif
variant_identierfacultatif
variant_namechaîne de caractèresfacultatif
disease_identierfacultatif
therapy_identierfacultatif
phenotype_identierfacultatif
evidence_identierfacultatif
summarychaîne de caractèresfacultatif
const result = await host.mcp("clinical-genomics", "civic_search_assertions", {"disease_name": "melanoma"})

civic_get_molecular_profile

Un profil moléculaire du CIViC par id (combinaison variable à laquelle s'attachent les preuves/affirmations), y compris : les variantes de nom, de score et de composant parsés. Retourne found=false si absent.

ChampTypeBesoins et contraintes
mp_identierrequis
const result = await host.mcp("clinical-genomics", "civic_get_molecular_profile", {"mp_id": 12})

civic_search_molecular_profiles

Recherche de profils moléculaires CIViC par sous-chaîne de noms (p. ex. "BRAF V600E"). Entièrement paginés; trié par id.

ChampTypeBesoins et contraintes
namechaîne de caractèresrequis
const result = await host.mcp("clinical-genomics", "civic_search_molecular_profiles", {"name": "BRAF V600E"})

civic_search_diseases

Recherche dans les dossiers de maladies de la CIViC par sous-chaîne de noms (p. ex. "melanoma"). Retourne DOIDs + noms d'affichage; entièrement paginés; trié par id.

ChampTypeBesoins et contraintes
namechaîne de caractèresrequis
const result = await host.mcp("clinical-genomics", "civic_search_diseases", {"name": "melanoma"})

civic_search_therapies

Recherche dans les dossiers de thérapie par CIViC par sous-chaîne nominative (p. ex. "vemurafenib"). Retourne les ids NCIt + noms; entièrement paginés; trié par id.

ChampTypeBesoins et contraintes
namechaîne de caractèresrequis
const result = await host.mcp("clinical-genomics", "civic_search_therapies", {"name": "vemurafenib"})

open_targets_graphql

Exécutez une requête arbitraire de GraphQL contre la plateforme Open Targets API (cibles, maladies, médicaments, scores d'association cible-maladie, preuves, tractabilité, sécurité, médicaments connus). Les requêtes d'introspection fonctionnent pour la découverte du schéma. Note connueDrugs a été rebaptisé drogueAndClinicalCandidats en amont.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
variablesobjetfacultatif
const result = await host.mcp("clinical-genomics", "open_targets_graphql", {"query": "query($id: String!){ target(ensemblId: $id){ approvedSymbol associatedDiseases{ count } } }", "variables": {"id": "ENSG00000157764"}})

open_targets_disease_drugs

Médicaments connus/d'investigation pour une maladie (plate-forme ouverte de cibles) — enveloppe Maladie.drogueEtClinicalCandidats. efo_id est un id de l'ontologie de la maladie (EFO/MONDO/etc., p.ex. "MONDO_0004992").

ChampTypeBesoins et contraintes
efo_idchaîne de caractèresrequis
sizeentierfacultatif; par défaut : 25
const result = await host.mcp("clinical-genomics", "open_targets_disease_drugs", {"efo_id": "MONDO_0004992", "size": 25})

open_targets_disease_targets

Les cibles associées les plus élevées pour une maladie, classées par Open Targets score d'association global — wraps Disease.associatedTargets. efo_id est un id d'ontologie de la maladie (EFO/MONDO/etc.).

ChampTypeBesoins et contraintes
efo_idchaîne de caractèresrequis
sizeentierfacultatif; par défaut : 25
const result = await host.mcp("clinical-genomics", "open_targets_disease_targets", {"efo_id": "MONDO_0004992", "size": 25})

open_targets_drug

Détails du médicament par ChEMBL id (Open Targets Platform) – nom, type, stade clinique maximal et mécanismes d'action (cible + type d'action). chembl_id p.ex. "CHEMBL1201583".

ChampTypeBesoins et contraintes
chembl_idchaîne de caractèresrequis
const result = await host.mcp("clinical-genomics", "open_targets_drug", {"chembl_id": "CHEMBL1201583"})

Structures & Interactions

Afficher les opérations et les paramètres

emdb_get_entries

Récupérer des enregistrements de métadonnées structurées pour les entrées de cartes 3D de cryo-EM EMDB. Accepte les adhésions comme 'EMD-1234', 'emd-1234' ou ' 1234'. Chaque enregistrement porte le titre, la méthode de détermination de la structure (singleParticle / hélical / tomographie / sous-tomogrammeA moyenne / électroniqueCrystallographie), la résolution dans Angstrom (null pour les entrées sans résolution rapportée, p.ex. tomogrammes bruts) et la méthode de résolution, les dates de dépôt/délivrance, les noms d'échantillons et de macromolécules/supramolécules, les ID de modèles PDB (liste vide lorsqu'aucun modèle n'est monté), la citation principale (journal, année, premier auteur, DOI, PMID), les dimensions de la carte et la taille du voxel, et l'état. Les entrées obsolètes rapportent les adhésions is_obsolete=true plus superseded_by. Les accessions inconnues reviennent sous le nom de {"emdb_id", "error": "not_found"} — ne jamais tomber silencieusement. Métadonnées seulement; les volumes de cartes ne sont jamais téléchargés.

ChampTypeBesoins et contraintes
emdb_idstableau de la chaînerequis
const result = await host.mcp("structures", "emdb_get_entries", {"emdb_ids": ["EMD-11638", "emd-3061", "1234"]})

emdb_search_entries

Rechercher EMDB avec une requête de type Solr; récupération complète en page des lignes compactes. Exemples de requêtes: 'title:"apoferritin" AND resolution:[0 to 1.5]', 'structure_determination_method:"singleParticle"', 'current_status:"REL" ET release_date:[2024-01-01T00:00:00Z À *]'. Args : requête (chaîne de requêtes Solr); max_rows (cap de ligne, par défaut 1000). Retourne num_found_released (le nombre d'entrées des API' propres de la voie facet — ground truth), rows_retrieved, rows_by_status (REL vs OBS — la route de recherche retourne aussi les entrées obsolètes mais elles ne sont PAS comptées comme publiées), released_complete (véritable iff chaque match libéré a été récupéré; false signifie max_rows tronqué le balayage ou les nombres en désaccord), et enregistre : lignes compactes par entrée (emdb_id, titre, résolution, structure_determination_method, current_status, release_date, fitted_pdbs) triées par adhésion EMD.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
max_rowsentierfacultatif; par défaut : 1000
const result = await host.mcp("structures", "emdb_search_entries", {"query": "title:\"apoferritin\" AND resolution:[0 TO 1.5]", "max_rows": 500})

emdb_get_entry_section

Saisissez une section de métadonnées détaillée pour les entrées de la BDEM. Sections: 'publications' — citation principale avec liste d'auteurs ordonnée complète, citations auxiliaires, références externes (PMID/DOI/ISSN/CSD); 'map' — fichier, format, type de données, dimensions, espacement voxel, origine, ordre d'axe, cellule, statistiques voxel, niveaux de contour, symétrie; 'sample' — les enregistrements par macromolécule (type, poids moléculaire, copies, numéro CE, organisme source + NCBI en circulation, séquences croisées) et les enregistrements par supramoléculecule; 'imagerie' — microscope, tension, source d'électrons, détecteur, dose, modes d'imagerie, champ de déconcentration, grossissement, Cs, cryogène, conditions grille/buffer/vitrification (un enregistrement par session de microscopie — les entrées peuvent porter plusieurs). Args: emdb_ids (liste d'adhésion, n'importe lequel des EMD-1234/emd-1234/1234); (une des publications/carte/échantillon/imagerie). Des accessions inconnues sont signalées avec "error": "not_found". Utilisez emdb_get_entries d'abord lorsque vous avez seulement besoin de l'enregistrement principal.

ChampTypeBesoins et contraintes
emdb_idstableau de la chaînerequis
sectionchaîne de caractèresrequis; enum: ["publications", "map", "sample", "imaging"]
const result = await host.mcp("structures", "emdb_get_entry_section", {"emdb_ids": ["EMD-11638"], "section": "imaging"})

emdb_get_validation

Renseignez-vous sur les paramètres de validation numérique et d'analyse pour les entrées EMDB. Par entrée (à partir de la route d'analyse/EMDB): Q-score, inclusion d'atomes, niveaux de contour recommandés/prédictés/rawmap, volumes modélisés/masques, rapport modél-map, mesures de surface — où le pipeline de validation les a calculés. available_blocks liste chaque bloc du service de validation retourné; Les charges utiles limitées (tomogrammes, entrées sans modèle ou historiques) donnent des valeurs nulles explicites. Entrées sans rapport d'analyse de validation has_validation_analysis=false — jamais laissé tomber silencieusement.

ChampTypeBesoins et contraintes
emdb_idstableau de la chaînerequis
const result = await host.mcp("structures", "emdb_get_validation", {"emdb_ids": ["EMD-11638", "EMD-3061"]})

complexportal_get_complexes

Renseignez-vous sur les dossiers du Portail complexe par adhésion au CPX. Chaque enregistrement: complexe AC, noms recommandés/systématiques + synonymes, espèces et taxides, liste des participants avec stœchiométrie (copies min/max), rôle biologique et type d'interactivité, preuve du code ECO, annotations GO, et références croisées — la description curée manuellement d'un complexe macromoléculaire stable. Les dossiers reviennent dans l'ordre des entrées; Les accessions inconnues sont listées dans not_found plutôt que silencieusement abandonnées. Pour l'interaction binaire preuve (qui lie qui dans quelle expérience) utilise plutôt les outils intacts_*.

ChampTypeBesoins et contraintes
complex_acstableau de la chaînerequis
const result = await host.mcp("structures", "complexportal_get_complexes", {"complex_acs": ["CPX-2158", "CPX-2419"]})

complexportal_search_by_participant

Portail complexe de recherche pour les complexes contenant une molécule. accession est une adhésion de participant — UniProt (par exemple: 'P04637'), ChEBI ou RNAcentral. Avec participants_only=true (par défaut), la recherche est qualifiée de champ (pxref:< accession>) de sorte que seuls les complexes qui contiennent réellement la molécule comme participant curé sont retournés; avec faux, l'adhésion nue est également jumelée comme texte libre (descriptions, noms), qui sur-rapporte mais peut attraper des mentions. Toutes les pages de résultats sont récupérées et le nombre de lignes est vérifié par rapport au total déclaré par le service (total_reported == total_retrieved, ou l'appel échoue fort). Les hits sont des enregistrements compacts (complex_ac, nom, espèce, interagissants) triés par adhésion complexe; récupérer tous les détails avec complexportal_get_complexes.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
participants_onlybooléenfacultatif; par défaut : true
const result = await host.mcp("structures", "complexportal_search_by_participant", {"accession": "P69905", "participants_only": true})

intact_fetch_interactions

Récupérer TOUTES les interactions binaires IntAct correspondant à une requête, MI-score filtré. query est une adhésion UniProt (par exemple 'P04637'), symbole de gène, texte libre, ou toute requête IntAct Solr. Retrieval est un balayage paginé complet vérifié par rapport au total déclaré par le serveur (n_records == total_elements, ou l'appel FAILS LOUDLY — la troncation silencieuse est impossible). min_mi_score/max_mi_score côté serveur du score de confiance IntAct MI (0.45 est un plancher de confiance moyenne commun); Filtres interactor_species par nom d'espèce ou par taxi (p. ex. ["Homo sapiens"] ou [" 9606"]). Les enregistrements sont minces et structurés: paire d'interacteurs (AC IntAct, identifiants de base de données, noms de molécules, espèces/taxides), type d'interaction, méthode de détection (+MI id), rôles expérimentaux, organisme hôte, score MI, PubMed id, premier auteur, base de données source — trié par score DESCENDING MI. Listes de sortie au plus des enregistrements max_records_returned (records_truncated=true lorsque le balayage vérifié était plus grand; n_records rapporte toujours le vrai total). Grandes requêtes (par exemple: Les interactions CFTR ~10k) prennent un certain temps — étroite avec min_mi_score ou des espèces lorsque c'est possible.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
min_mi_scoreNumérofacultatif; par défaut : 0
max_mi_scoreNumérofacultatif; par défaut : 1
interactor_speciestableau de la chaînefacultatif
max_records_returnedentierfacultatif; par défaut : 500
const result = await host.mcp("structures", "intact_fetch_interactions", {"query": "P04637", "min_mi_score": 0.45, "interactor_species": ["Homo sapiens"], "max_records_returned": 200})

intact_get_interactor

Résoudre une molécule à ses enregistrements interactifs IntAct. query est une adhésion UniProt, un symbole de gène ou un interactif IntAct AC (p. ex. 'EBI-7090529') . Retourne TOUS les enregistrements d'interactions correspondants avec un n_matches explicite — une adhésion UniProt peut se résoudre à la protéine canonique plus les interactions chaîne/isoforme, et cet outil n'en choisit jamais silencieusement. Chaque enregistrement : interactor_ac, preferred_identifier, nom, espèce, taxid, interactor_type, et le interaction_count vu par IntAct (utile pour tailler un balayage intact_fetch_interactions).

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
const result = await host.mcp("structures", "intact_get_interactor", {"query": "P04637"})

intact_get_interaction_details

Détails complets pour l'interaction ONE IntAct AC (p. ex. 'EBI-15635490') . Retourne le type d'interaction, l'organisme hôte, la méthode de détection, la publication, les références croisées, les annotations, les paramètres cinétiques/affinités et les confidences, ainsi que les enregistrements par participant (identificateur, espèce, rôle biologique et expérimental, méthodes de détection des participants) à moins que include_participants=false. Obtenez des AC d'interaction à partir des enregistrements intact_fetch_interactions (le champ interaction_ac). ACs inconnus retournent { interaction_ac, erreur: 'not_found' }.

ChampTypeBesoins et contraintes
interaction_acchaîne de caractèresrequis
include_participantsbooléenfacultatif; par défaut : true
const result = await host.mcp("structures", "intact_get_interaction_details", {"interaction_ac": "EBI-15635490", "include_participants": true})

intact_build_network

Construire un réseau d'interaction de profondeur-1 IntAct autour des protéines de graines. seed_accessions sont des adhésions UniProt. Étape 1 : balayage d'interaction MI-score-filtré complet et vérifié par comptage par graine. Étape 2: les partenaires de chaque bord de graine et les graines forment le jeu de nœuds. Étape 3: les bords partenaires ne sont découvrables qu'en interrogeant les partenaires eux-mêmes, de sorte que jusqu'à max_interactors_expanded partenaires sont interrogés (la plupart connectées d'abord, les liens par identifiant) et les bords avec les deux paramètres à l'intérieur du nœud sont conservés. Le bloc d'expansion indique exactement quels partenaires n'ont pas été ou n'ont pas été élargis (l'expansion.complete=false signifie qu'il peut y avoir plus de bords partenaires-partenaires). Sortie: noeuds, bords (avec score MI, méthode de détection, PubMed id), statistiques de balayage par grain. Garder quelques graines et min_mi_score >= 0.45 – chaque expansion est un balayage paginé complet.

ChampTypeBesoins et contraintes
seed_accessionstableau de la chaînerequis
min_mi_scoreNumérofacultatif; par défaut : 0.45
max_interactors_expandedentierfacultatif; par défaut : 25
interactor_speciestableau de la chaînefacultatif
const result = await host.mcp("structures", "intact_build_network", {"seed_accessions": ["P04637", "Q00987"], "min_mi_score": 0.45, "max_interactors_expanded": 25})

pdb_search_structures

Rechercher les entrées de l'APB RCSB par filtres d'attributs; paged, plafonné + signalé. Tous les filtres ET ensemble; au moins un est nécessaire. text est une requête de pertinence texte complet ('p53 domaine de liaison ADN'); organism est un nom de lignée source-organisme exact ('Homo sapiens' — correspond à n'importe quel niveau de lignée, donc 'Eukaryota' fonctionne aussi); taxonomy_id une BCNI a fait l'objet d'un taxi (9606); uniprot_accession trouve des entrées dont les entités polymère s'inscrivent dans cette UniProt ('P04637' -> chaque structure p53; experimental_method est le vocabulaire PDB ('X-RAY DIFFRACTION', 'ELECTRON MICROSCOPY', 'SOLUTION NMR', ... — erreur de valeurs inconnues et insensibles à la situation avec la liste complète; max_resolution_angstrom conserve les entrées à la résolution ou en dessous; ligand_comp_id nécessite un composant non polymère lié par la chim-comp id ('ZN', 'ATP', 'HEM'). include_computed_models=true ajoute des modèles de structure calculés (p. ex. AlphaFold) aux résultats expérimentaux par défaut seulement. Retourne total_count (le total de correspondance des API's — ground truth), n_retrieved, tronqué (true iff total_count > _retraité; max_rows, 1..1000, récupération de caps), et enregistrements [{pdb_id, score}] dans l'ordre de pertinence. Identificateurs uniquement — chaîne à pdb_get_structures pour les métadonnées.

ChampTypeBesoins et contraintes
textchaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
taxonomy_identierfacultatif
uniprot_accessionchaîne de caractèresfacultatif
experimental_methodchaîne de caractèresfacultatif
max_resolution_angstromNumérofacultatif
ligand_comp_idchaîne de caractèresfacultatif
include_computed_modelsbooléenfacultatif; par défaut : false
max_rowsentierfacultatif; par défaut : 100
const result = await host.mcp("structures", "pdb_search_structures", {"uniprot_accession": "P04637", "experimental_method": "X-RAY DIFFRACTION", "max_rows": 50})

pdb_get_structures

Récupère les résumés d'entrée de niveau pour les entrées PDB (batch, max 25 ids). Accepte en tout cas les id PDB de caractère 4 (' 1tup' == ' 1TUP'; les duplicata sont doublonnés). Chaque enregistrement: titre, méthodes expérimentales, résolution en Angstrom (null pour les méthodes sans un, par exemple. RMN), méthode de détermination (expérimentale vs calculale), dates et statut de dépôt/libération/révision, poids moléculaire (kDa), nombre d'entités et de assemblage (protéines/ADN/polymère ARN + nonpolymère), ligand lié ids chim-comp, listes d'entités polymère/non polymère (inputs for pdb_get_entities / pdb_get_ligands), et citation principale (titre, journal, année, auteurs, PubMed id, DOI). Les ids inconnus reviennent sous la forme de {"pdb_id", "error": "not_found"} — ne jamais tomber silencieusement. Métadonnées seulement; les fichiers de coordination ne sont jamais téléchargés.

ChampTypeBesoins et contraintes
pdb_idstableau de la chaînerequis
const result = await host.mcp("structures", "pdb_get_structures", {"pdb_ids": ["1TUP", "1tup", "6XYZ"]})

pdb_get_entities

Détails de l'entité polymère pour une entrée PDB, y compris Les cartes UniProt. Avec entity_ids=null chaque entité polymère de l'entrée est récupérée, captée à 25 avec tronqué=true et n_polymère_entities signalant le nombre vrai d'entry's (de grands assemblages comme les ribosomes portent 50+ — obtenez la liste complète d'id de pdb_get_structures' polymer_entity_ids et page avec des sous-ensembles explicites comme [" 26", " 27"]); avec un sous-ensemble entity_ids explicite, le total d'entrée n'est pas récupéré, donc n_polymère_entities est nul; une liste explicite de entity_ids plus grande que les erreurs 25. Chaque enregistrement : description, type de polymère (protéine / ADN / ARN), longueur de séquence, nombre de mutations, copies déposées, ids en chaîne (asym + auteur), organismes sources avec taxides, accessions UniProt avec couverture de séquence par entité (SIFTS) et régions alignées UniProt (coordonnées d'entity-seq vs référence-seq). Les identifiants d'entités inconnues sont listés dans not_found; une erreur d'identification d'entrée inconnue. include_sequences=true ajoute la séquence canonique d'une lettre par entité; Si les séquences combinées dépassent max_bytes (par défaut 400000), elles sont omises et sequences_omitted explique pourquoi — les métadonnées survivent toujours.

ChampTypeBesoins et contraintes
pdb_idchaîne de caractèresrequis
entity_idstableau de la chaînefacultatif
include_sequencesbooléenfacultatif; par défaut : false
max_bytesentierfacultatif; par défaut : 400000
const result = await host.mcp("structures", "pdb_get_entities", {"pdb_id": "1TUP", "include_sequences": true})

pdb_get_ligands

Ligands coniques (composants non polymères) d'une seule entrée PDB, avec chimie. Déplace les entités non-polymères 's d'entrée et résout chaque composant chimique: par ligand — entity id, chem-comp id ('ZN', 'ATP'), description, nombre de copies déposées, ids de chaîne d'auteur, et un bloc chem_comp (nom, formule, poids de la formule, charge formelle, type de composant, InChICey, SMILES stéréo). Les eaux ne sont pas des entités non polymères dans le modèle de données de l'APB et n'apparaissent jamais. Entrées sans ligands retour ligands: []. n_nonpolymère_entities est le nombre vrai d'entry's; tronqué=true lorsqu'il dépasse max_ligands (clamé à 1..25, qui limite le budget de la demande) — jamais silencieusement abandonné. Entités/composantes les données API ne sont plus utilisées sont déclarées en ligne avec "error": "not_found" (résultats partiels, pas un appel avorté). Erreurs d'identification d'entrée inconnues.

ChampTypeBesoins et contraintes
pdb_idchaîne de caractèresrequis
max_ligandsentierfacultatif; par défaut : 25
const result = await host.mcp("structures", "pdb_get_ligands", {"pdb_id": "1TUP"})

alphafold_get_prediction

AlphaFold DB a prédit des métadonnées de structure pour une adhésion UniProt. Retourne les enregistrements has_model, n_models et par modèle. Une seule adhésion peut porter plusieurs modèles (canoniques + isoformes comme 'P04637-9', et les fournisseurs communautaires au-delà du pipeline monomère Google DeepMind — provider_id / tool_used les identifient). Chaque modèle : entry id, UniProt annotation (id, description, gène, organisme, taxid, revised flags), sequence coordinates and length, global pLDDT (global_plddt, 0-100) plus la fraction de résidus par bac de confiance pLDDT (very_low < 50, low 50-70, confiance 70-90, very_high > 90), model version info et date de création, et télécharger les URLs (coordonnées Cif/bcif/pdb, PAE JSON + image, per-residue pLDDT JSON, MSA, AlphaMissense CSV si disponible) — URLs seulement, payloads ne sont jamais téléchargés; Allez les chercher vous-même si nécessaire. Adhésions sans retour de prédiction has_model=false (pas une erreur); les identifiants mal formés retournent un champ error explicite. include_sequence=true ajoute la séquence du modèle (protéine une lettre).

ChampTypeBesoins et contraintes
uniprot_accessionchaîne de caractèresrequis
include_sequencebooléenfacultatif; par défaut : false
const result = await host.mcp("structures", "alphafold_get_prediction", {"uniprot_accession": "P04637"})

alphafold_check_coverage

Contrôle de couverture AlphaFold DB par lots (max. 40 adhésions UniProt uniques). Les entrées vierges et les duplicata sont dépouillées avant l'application du plafond du lot, et divulguées : n_requested == n_unique + n_blank_skipped + n_duplicate_skipped se réconcilie toujours. Un enregistrement compact par adhésion unique, en ordre d'entrée : has_model, n_models, et le modèle primaire (première liste) 's model_entity_id, latest_version, global_plddt et sequence_length. Adhésions sans rapport de prédiction has_model=false; Les malformés portent un champ error explicite — jamais laissé tomber silencieusement. Utilisez pour trier les protéines d'un ensemble qui ont des structures prédites utilisables avant de tirer des enregistrements complets avec alphafold_get_prediction.

ChampTypeBesoins et contraintes
uniprot_accessionstableau de la chaînerequis
const result = await host.mcp("structures", "alphafold_check_coverage", {"uniprot_accessions": ["P04637", "P38398", "Q9Y6K9"]})

CEMBL

Afficher les opérations et les paramètres

Rechercher les composés chimiques ChEMBL par nom (par défaut), ChEMBL id ou structure moléculaire. Par nom : sous-chaîne de synonymes insensibles à la casse (revient à une correspondance de nom préféré). Par chembl_id : recherche directe d'enregistrement. Par les sourires : Recherche de similarité Tanimoto lorsque similarity_threshold est défini, sinon une recherche de sous-structure (les marches de structure sont plafonnées et révèlent walk_truncated/upstream_total). Filtres max_phase optionnels par stade clinique. Passez au moins un nom, chembl_id, ou des sourires. Utilisez plutôt drug_search lors de la recherche par indication thérapeutique.

ChampTypeBesoins et contraintes
namechaîne de caractèresfacultatif
chembl_idchaîne de caractèresfacultatif
smileschaîne de caractèresfacultatif
similarity_thresholdentierfacultatif; minimum: 70; maximum: 100
max_phaseentierfacultatif; enum: [0, 1, 2, 3, 4]
limitentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("chembl", "compound_search", {"name": "aspirin", "limit": 5})

Rechercher les médicaments approuvés et les candidats cliniques par indication thérapeutique (terme de l'OEN, correspondance partielle). Joindre les lignes drug_indication à des molécules mères distinctes, puis aux enregistrements de molécules et aux avertissements de retrait/boîte noire. only_approved se limite à la phase 4. Les post-filtres optionnels molecule_chembl_id, drug_name (sous-chaîne de nom préféré) et max_phase (>=) rétrécissent l'ensemble joint. Utilisez compound_search pour les recherches de nom/id/structure.

ChampTypeBesoins et contraintes
indicationchaîne de caractèresrequis
drug_namechaîne de caractèresfacultatif
molecule_chembl_idchaîne de caractèresfacultatif
max_phaseentierfacultatif; enum: [0, 1, 2, 3, 4]
only_approvedbooléenfacultatif; par défaut : false
limitentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("chembl", "drug_search", {"indication": "hypertension", "only_approved": true, "limit": 10})

get_admet

Récupérer les propriétés moléculaires calculées par ChEMBL pour l'évaluation de la ressemblance médicamenteuse / ADMET d'une molécule (ALogP, poids moléculaire, PSA, HBA/HBD, liaisons rotatives, cycles aromatiques, atomes lourds, violations de la règle de 5, passage de la règle de 3, QED, formule moléculaire). Ils sont calculés à partir de la structure, et non de mesures expérimentales.

ChampTypeBesoins et contraintes
molecule_chembl_idchaîne de caractèresrequis
const result = await host.mcp("chembl", "get_admet", {"molecule_chembl_id": "CHEMBL25"})

get_bioactivity

Récupérer les mesures de bioactivité du ChEMBL (IC50, Ki, Kd, EC50, ...) pour les interactions entre les cibles composées. Filtre par molecule_chembl_id et/ou target_chembl_id, activity_type (standard_type), un plancher pChEMBL (min_pchembl), une gamme standard_value (min_value/max_value) et une unité (standard_units). Retourne une page commandée par activity_id avec un résumé le plus puissant.

ChampTypeBesoins et contraintes
molecule_chembl_idchaîne de caractèresfacultatif
target_chembl_idchaîne de caractèresfacultatif
activity_typechaîne de caractèresfacultatif; enum: ["IC50", "EC50", "Ki", "Kd", "AC50", "GI50", "ED50", "Potency"]
min_pchemblNumérofacultatif; minimum: 0; maximum: 14
min_valueNumérofacultatif
max_valueNumérofacultatif
unitchaîne de caractèresfacultatif; enum: ["nM", "uM", "mM", "pM", "M"]
limitentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("chembl", "get_bioactivity", {"molecule_chembl_id": "CHEMBL25", "activity_type": "IC50", "limit": 10})

get_mechanism

Récupérer les registres du mécanisme d'action de la LLEMCH pour les médicaments approuvés et les candidats cliniques. Filtrer par molecule_chembl_id, target_chembl_id et/ou action_type. Lorsqu'un id de molécule ne produit rien, se rétracte contre la molécule mère de sorte que les ids de forme saline se résolvent. Retourne une page commandée par mec_id avec un résumé de type action.

ChampTypeBesoins et contraintes
molecule_chembl_idchaîne de caractèresfacultatif
target_chembl_idchaîne de caractèresfacultatif
action_typechaîne de caractèresfacultatif; énième: ["INTHIBITEUR", "AGONISTE", "ANTAGONISME", "BLOCKER", "MODULATEUR", "OUVERTURE", "ACTIVATEUR", "MODULATEUR ALLOSTERIQUE POSITIF", "MODULATEUR ALLOSTÉRIC NÉGATIF", "AGONISTE PARTICULIER", "AGONISTE INVERSE"C'est pas vrai.
limitentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("chembl", "get_mechanism", {"molecule_chembl_id": "CHEMBL25"})

Rechercher les cibles biologiques de ChEMBL (protéines, complexes, familles, organismes). Filtrer par target_chembl_id, gene_symbol (composante exacte-synonyme), target_name (sous-chaîne de noms), organisme (sous-chaîne) et/ou target_type. Chaque résultat porte ses composants avec des adhésions UniProt, un gene_symbol et des listes de références croisées délimitées.

ChampTypeBesoins et contraintes
target_namechaîne de caractèresfacultatif
gene_symbolchaîne de caractèresfacultatif
target_chembl_idchaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
target_typechaîne de caractèresfacultatif; Enum: ["SINGLE PROTEIN", "PROTEIN COMPLEX", "PROTEIN FAMILY", "ORGANISM", "TISSUE", "CELL-LINE", "NUCLEIC-ACID", "SUBCELLULAR"]
limitentierfacultatif; par défaut : 20; minimum: 1; maximum: 1000
const result = await host.mcp("chembl", "target_search", {"gene_symbol": "EGFR", "organism": "Homo sapiens", "limit": 5})

bioRxiv

Afficher les opérations et les paramètres

get_categories

Énumérez toutes les catégories de sujets bioRxiv 27 et leurs limaces compatibles API (p. ex. "biologie du cancer" -> "cancer_biology"). Utilisez avant search_preprints pour découvrir les valeurs de catégorie valides.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("biorxiv", "get_categories", {})

search_preprints

Recherche bioRxiv/medRxiv préimpressions par date et (facultativement) catégorie. Utilisez exactement une méthode de recherche : date_from+date_to, recent_days (derniers jours N) ou recent_count (N le plus récent dans une fenêtre 90-jour); avec aucun, les derniers 60 jours. Il n'y a pas de recherche de mots-clés/texte. Le curseur pagine. Retourne DOI, le titre, les auteurs, la date, la catégorie, la version et un aperçu abstrait 200-char.

ChampTypeBesoins et contraintes
serverchaîne de caractèresfacultatif; par défaut: "biorxiv"; enum: ["biorxiv", "medrxiv"]
categorychaîne de caractèresfacultatif; énième: ["comportement animal et cognition", "biochimie", "bioingénierie", "bioinformatique", "biophysique", "biologie du cancer", "biologie cellulaire", "essais cliniques", "biologie du développement", "écologie", "épidémiologie", "biologie évolutive", "génétique", "génomique", "immunologie", "microbiologie", "biologie moléculaire", "neurosciences", "paléontologie", "pathologie", "pharmacologie et toxicologie", "physiologie", "biologie végétale", "communication scientifique et éducation", "biologie synthétique", "biologie des systèmes", "zoologie"C'est pas vrai.
date_fromchaîne de caractèresfacultatif
date_tochaîne de caractèresfacultatif
recent_daysentierfacultatif; minimum: 1
recent_countentierfacultatif; minimum: 1
limitentierfacultatif; par défaut : 10; minimum: 1; maximum: 100
cursorentierfacultatif; par défaut : 0; minimum: 0
const result = await host.mcp("biorxiv", "search_preprints", {"recent_days": 30, "category": "neuroscience", "limit": 20})

get_preprint

Obtenez des métadonnées complètes pour une préimpression par DOI (bare " 10.1101/..." ou une URL complète de https://doi.org/). Utilise la dernière version. Retourne le titre, les auteurs, l'auteur + institution correspondant, l'abstrait complet, la catégorie, la licence, la version, JATS XML, le financement, la revue publiée DOI (si liée), PDF et les URL Web, et le nombre de versions. Les préimpressions ne sont PAS examinées par les pairs.

ChampTypeBesoins et contraintes
doichaîne de caractèresfacultatif
serverchaîne de caractèresfacultatif; par défaut: "biorxiv"; enum: ["biorxiv", "medrxiv"]
const result = await host.mcp("biorxiv", "get_preprint", {"doi": "10.1101/339747"})

search_published_preprints

Trouvez les préimpressions publiées par la suite dans des revues évaluées par des pairs (préimpression -> des liens d'articles de journaux). Mêmes méthodes de recherche que search_preprints (date_from+date_to / recent_days / recent_count). include_details=false retourne un résumé compact. filtres de l'éditeur par préfixe de la revue DOI (par exemple "10.1038" pour la Nature) via la route bioRxiv-only /publister.

ChampTypeBesoins et contraintes
serverchaîne de caractèresfacultatif; par défaut: "biorxiv"; enum: ["biorxiv", "medrxiv"]
publisherchaîne de caractèresfacultatif
include_detailsbooléenfacultatif; par défaut : true
date_fromchaîne de caractèresfacultatif
date_tochaîne de caractèresfacultatif
recent_daysentierfacultatif; minimum: 1
recent_countentierfacultatif; minimum: 1
limitentierfacultatif; par défaut : 10; minimum: 1; maximum: 100
cursorentierfacultatif; par défaut : 0; minimum: 0
const result = await host.mcp("biorxiv", "search_published_preprints", {"publisher": "10.1038", "date_from": "2024-01-01", "date_to": "2024-01-05", "limit": 10})

search_by_funder

Trouver des préimpressions reconnaissant un bailleur de fonds, identifiés par ROR id (9-char, p.ex. " 021nxhr62" pour les NIH; une URL https://ror.org/ complète est également acceptée). Nécessite un date_from + date_to explicite; Les métadonnées de financement commencent 2025-04-10. Filtre de catégorie optionnel. Le curseur pagine. Même forme de résultat compacte que search_preprints.

ChampTypeBesoins et contraintes
funder_ror_idchaîne de caractèresfacultatif
date_fromchaîne de caractèresfacultatif
date_tochaîne de caractèresfacultatif
serverchaîne de caractèresfacultatif; par défaut: "biorxiv"; enum: ["biorxiv", "medrxiv"]
categorychaîne de caractèresfacultatif; énième: ["comportement animal et cognition", "biochimie", "bioingénierie", "bioinformatique", "biophysique", "biologie du cancer", "biologie cellulaire", "essais cliniques", "biologie du développement", "écologie", "épidémiologie", "biologie évolutive", "génétique", "génomique", "immunologie", "microbiologie", "biologie moléculaire", "neurosciences", "paléontologie", "pathologie", "pharmacologie et toxicologie", "physiologie", "biologie végétale", "communication scientifique et éducation", "biologie synthétique", "biologie des systèmes", "zoologie"C'est pas vrai.
limitentierfacultatif; par défaut : 10; minimum: 1; maximum: 100
cursorentierfacultatif; par défaut : 0; minimum: 0
const result = await host.mcp("biorxiv", "search_by_funder", {"funder_ror_id": "021nxhr62", "date_from": "2025-04-10", "date_to": "2025-05-10", "limit": 10})

get_content_statistics

les statistiques sur les présentations de bioRxiv pour toutes les années — nouveaux chiffres par rapport aux chiffres révisés par période, avec des totaux cumulatifs en cours. intervalle est "mensuelle" (par défaut) ou "anly".

ChampTypeBesoins et contraintes
intervalchaîne de caractèresfacultatif; par défaut: "mensuel"; enum: ["mensuel", "anly"]
const result = await host.mcp("biorxiv", "get_content_statistics", {"interval": "yearly"})

get_usage_statistics

Statistiques d'utilisation/engagement bioRxiv sur toute l'histoire — vues abstraites, vues en texte intégral et téléchargements PDF par période, avec des totaux cumulatifs en cours d'exécution. intervalle est "mensuelle" (par défaut) ou "anly".

ChampTypeBesoins et contraintes
intervalchaîne de caractèresfacultatif; par défaut: "mensuel"; enum: ["mensuel", "anly"]
const result = await host.mcp("biorxiv", "get_usage_statistics", {"interval": "yearly"})

Réglementation des médicaments

Afficher les opérations et les paramètres

search_drug_applications

Recherche de médicaments@applications FDA (NDA/ANDA/BLA) par toute combinaison de filtres à phrases exactes (marque, générique, active_ingredient, sponsor, marketing_status, dosage_form, route, pharm_class). générique et pharm_class requête le bloc openfda harmonisé (absent sur les anciennes applications, si silencieusement sauté là). Une recherche générale renvoie le premier max_records avec le vrai total et tronqué=true; à la page au-delà des enregistrements ~26,000, étroite avec submission_date_from/to.

ChampTypeBesoins et contraintes
brandchaîne de caractèresfacultatif
genericchaîne de caractèresfacultatif
active_ingredientchaîne de caractèresfacultatif
sponsorchaîne de caractèresfacultatif
marketing_statuschaîne de caractèresfacultatif; enum: ["Prescription", "Over-the-counter", "Discontinuer", "Aucune (approbation provisoire)"]
dosage_formchaîne de caractèresfacultatif
routechaîne de caractèresfacultatif
pharm_classchaîne de caractèresfacultatif
pharm_class_typechaîne de caractèresfacultatif; enum: ["epc", "moa", "cs", "pe"]
search_typechaîne de caractèresfacultatif; par défaut: " et "; enum: ["et", "ou"]
submission_date_fromchaîne de caractèresfacultatif
submission_date_tochaîne de caractèresfacultatif
raw_searchchaîne de caractèresfacultatif
max_recordsentierfacultatif; par défaut : 50
const result = await host.mcp("drug-regulatory", "search_drug_applications", {"generic": "ATORVASTATIN CALCIUM", "marketing_status": "Prescription", "max_records": 25})

get_drug_application

Remplir une demande de drogue@ADF par son numéro (p. ex. "NDA020702", "ANDA076543", "BLA125514"). Retourne le dossier complet — sponsor, produits (marque, ingrédients actifs + dosages, forme posologique, itinéraire, statut de commercialisation, code TE), l'historique complet des présentations et les champs ouverts harmonisés lorsque présents.

ChampTypeBesoins et contraintes
application_numberchaîne de caractèresrequis
const result = await host.mcp("drug-regulatory", "get_drug_application", {"application_number": "NDA020702"})

count_drug_applications

Aggregate Drugs@FDA compte sur un seul champ, éventuellement restreint par les mêmes filtres que search_drug_applications. count_field accepte les noms amicaux (sponsor_name, application_number, dosage_form, route, marketing_status, te_code, pharm_class_epc/moa/cs/pe) ou un chemin de champ brut openFDA (Append .exact vous-même pour les champs analysés).

ChampTypeBesoins et contraintes
count_fieldchaîne de caractèresrequis
brandchaîne de caractèresfacultatif
genericchaîne de caractèresfacultatif
active_ingredientchaîne de caractèresfacultatif
sponsorchaîne de caractèresfacultatif
marketing_statuschaîne de caractèresfacultatif
dosage_formchaîne de caractèresfacultatif
routechaîne de caractèresfacultatif
pharm_classchaîne de caractèresfacultatif
pharm_class_typechaîne de caractèresfacultatif; enum: ["epc", "moa", "cs", "pe"]
search_typechaîne de caractèresfacultatif; par défaut: " et "; enum: ["et", "ou"]
submission_date_fromchaîne de caractèresfacultatif
submission_date_tochaîne de caractèresfacultatif
raw_searchchaîne de caractèresfacultatif
max_bucketsentierfacultatif; par défaut : 100
const result = await host.mcp("drug-regulatory", "count_drug_applications", {"count_field": "marketing_status"})

get_drug_statistics

Statistiques sur les médicaments de niveau Corpus@FDA en un seul appel — demandes totales, répartition du statut marketing, formes et voies posologiques supérieures (avec nombres distincts) et principaux commanditaires par nombre de demandes.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("drug-regulatory", "get_drug_statistics", {})

list_pharmacologic_classes

Énumérer les classes pharmacologiques avec leurs nombres d'applications, comptées sur l'openfda harmonisée.pharm_class_<type> Bloc. Les chiffres ne reflètent que les applications portant ce bloc.

ChampTypeBesoins et contraintes
class_typechaîne de caractèresfacultatif; par défaut: "epc"; enum: ["epc", "moa", "cs", "pe"]
max_bucketsentierfacultatif; par défaut : 100
const result = await host.mcp("drug-regulatory", "list_pharmacologic_classes", {"class_type": "epc", "max_buckets": 50})

get_generic_equivalents

Trouver des équivalents génériques d'un médicament de marque : résoudre la marque à sa ou ses applications de référence, extraire le ou les ensembles de noms actifs-ingrédients exacts, puis retourner chaque application Drugs@FDA avec un produit dont l'ensemble actif-ingrédient correspond (y compris les codes TE et le statut de commercialisation).

ChampTypeBesoins et contraintes
brandchaîne de caractèresrequis
const result = await host.mcp("drug-regulatory", "get_generic_equivalents", {"brand": "Lipitor"})

search_drug_labels

Récupérer les étiquettes de produits pharmaceutiques (LSP) de la FDA par ingrédient, nom ou voie d'extraction ciblée. Les filtres (active_ingredient, generic_name, brand_name, route, product_type) ont touché le bloc d'étiquettes openfda; set exact pour interroger les variantes .exact non analysées. Passer des sections pour extraire les sections d'étiquettes ouvertes brutes FDA au lieu de l'enregistrement structuré par défaut. raw_search est mutuellement exclusif avec les filtres mappés.

ChampTypeBesoins et contraintes
active_ingredientchaîne de caractèresfacultatif
generic_namechaîne de caractèresfacultatif
brand_namechaîne de caractèresfacultatif
routechaîne de caractèresfacultatif
product_typechaîne de caractèresfacultatif; enum: ["HUMAN PRESCRIPTION DRUG", "HUMAN OTC DRUG"]
exactbooléenfacultatif; par défaut : false
raw_searchchaîne de caractèresfacultatif
sectionstableau de la chaînefacultatif
max_recordsentierfacultatif; par défaut : 25
const result = await host.mcp("drug-regulatory", "search_drug_labels", {"brand_name": "Tylenol", "max_records": 5})

Génétique humaine

Afficher les opérations et les paramètres

gwas_associations_for_variant

Les associations de catalogues GWAS ont fait état d'une variante (rID), la plus importante d'abord. Args: rs_id (dbSNP rsID par exemple rs7412 APOE ou rs699 AGT; doit être le catalog's courant rsID — les ID fusionnés/retirés peuvent renvoyer des lignes zéro plutôt qu'une erreur); max_records (par défaut du bouchon de sortie 500; les variantes trait-hub peuvent contenir des associations 1000+; les lignes sont triées par le serveur par l'ascension de la valeur p, de sorte qu'un résultat plafonné est le préfixe de signe supérieur). Retourne {rs_id, api_total, retourné, tronqué, associations}. api_total est le total du catalogue's; Drapeaux tronqués, une prise captée. Chaque ligne d'association: {association_id, p_value, pvalue_mantissa, pvalue_exponent, pvalue_description, or_value, beta, ci_lower, ci_upper, range, risk_frequency, snp_effect_alleles, rs_ids, emplacements, mapped_genes, efo_traits:[{efo_id, efo_trait}], bg_efo_traits, reported_trait, multi_snp_haplotype, snp_interaction, study_accession_id, pubmed_id, first_author}. or_value et bêta sont mutuellement exclusifs par rangée (binaire vs quantitative); p_valeur de 0.0 signifie p < ~1e-308 (utiliser mantissa/exposant).

ChampTypeBesoins et contraintes
rs_idchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "gwas_associations_for_variant", {"rs_id": "rs7412", "max_records": 100})

gwas_associations_for_gene

Les associations de catalogues GWAS dont les variantes sont MAPPED à un gène (catalog's Ensembl pipeline mapping, pas l'auteur-déclaré), les plus significatives d'abord. Args : gene_symbol (symbole HGNC, correspondance exacte, par exemple PCSK9, APOE; en amont sensible à la casse—passe le haut-cas canonique; les variantes intergéniques cartent les gènes flanquants, de sorte que les rangées peuvent s'asseoir en dehors du corps génique); max_records (cap par défaut 500; lignes serveur triées par valeur de p ascendante). Retourne {gene_symbol, api_total, retourné, tronqué, associations} avec la même forme de rangée que gwas_associations_for_variant. Un symbole inexistant renvoie api_total=0, pas une erreur.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "gwas_associations_for_gene", {"gene_symbol": "PCSK9", "max_records": 100})

gwas_associations_for_trait

Les associations de catalogues GWAS ont annoté un trait EFO, le plus important d'abord. Args : efo_id (formulaire court à terme en ontologie tel qu'utilisé par le catalogue, p.ex. MONDO_0005010, EFO_0004340, HP_0003124; le catalogue a migré plusieurs ids EFO historiques vers MONDO/HP — résoudre les ids actuels avec gwas_search_traits en premier; passer exactement un de efo_id/efo_trait); efo_trait (autre solution de rechange pour le LABEL de caractères exacts); max_records (cap par défaut 500; les lignes p-valeur ascendante). Retours {efo_id-efo_trait, api_total, retournés, tronqués, associations} avec la même forme de rangée que gwas_associations_for_variant. Un id/label inconnu renvoie api_total=0, pas une erreur.

ChampTypeBesoins et contraintes
efo_idchaîne de caractèresfacultatif
efo_traitchaîne de caractèresfacultatif
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "gwas_associations_for_trait", {"efo_id": "MONDO_0005010", "max_records": 100})

gwas_search_traits

Rechercher le catalogue GWAS EFO caractères annotations par sous-chaîne d'étiquettes — le point d'entrée pour résoudre un nom de maladie/phénotype aux ids d'ontologie que gwas_associations_for_trait / gwas_search_studies prennent. Args: requête (sous-chaîne insensible à la casse de l'étiquette de caractère, par exemple "coronaire" correspond au trouble coronarien de l'artère MONDO_0005010 etc.; le catalogue mélange les ids EFO, MONDO, HP et OBA — don't suppose un préfixe EFO_; max_records (cap par défaut 500). Retourne {query, api_total, retourné, tronqué, efo_traits}; chaque ligne {efo_id, efo_trait, uri} triées par étiquette. Count-vérifié par rapport au catalog's propre total quand il n'est pas plafonné.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "gwas_search_traits", {"query": "coronary", "max_records": 50})

gwas_search_studies

Recherche GWAS Catalogue études par caractère annotation ou publication. Args: efo_id (ontologie forme courte, p.ex. MONDO_0005010, résoudre via gwas_search_traits; les filtres combinent ET — généralement passent un); efo_trait (alternative à l'étiquette de caractère exacte); pubmed_id (PubMed ID de la publication de l'étude', p.ex. 38714703); max_records (cap par défaut 500). Retourne {filters, api_total, retourné, tronqué, études}; chaque ligne de l'étude {accession_id, disease_trait, efo_traits, bg_efo_traits, pubmed_id, initial_sample_size, replication_sample_size, discovery_ancestry, replication_ancestry, genotyping_technologies, plates-formes, cohorte, full_summary_stats_available, imputé, gxe, gxg}. Compte-vérifié par rapport au total du catalogue lorsqu'il n'est pas plafonné. Au moins un filtre est requis (le catalogue non filtré est ~90k études).

ChampTypeBesoins et contraintes
efo_idchaîne de caractèresfacultatif
efo_traitchaîne de caractèresfacultatif
pubmed_idchaîne de caractèresfacultatif
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "gwas_search_studies", {"efo_id": "MONDO_0005010", "max_records": 50})

gwas_get_study

Obtenez une étude du catalogue GWAS par son adhésion GCST. Args: accession_id (adhésion à l'étude, p.ex. GCST90841394; liste dans chaque ligne d'association comme study_accession_id et dans les résultats de recherche d'étude). Retourne {found, accession_id, study} où l'étude est de la même forme de rangée que gwas_search_studies (null quand l'adhésion est inconnue).

ChampTypeBesoins et contraintes
accession_idchaîne de caractèresrequis
const result = await host.mcp("human-genetics", "gwas_get_study", {"accession_id": "GCST90841394"})

gwas_get_variant

Obtenez un enregistrement de variante du catalogue GWAS (position, gènes cartographiés, conséquence) par rsID – plus léger que de tirer ses associations. Args: rs_id (dbSNP rsID par exemple La Commission a décidé de ne pas modifier le règlement (CEE) n° 1408/71 du Conseil. Retourne {found, rs_id, variante}; variante est {rs_id, fusionné, functional_class, most_severe_consequence, allèles (par exemple "C/T (avant)"), mapped_genes, emplacements:[{chromosome, position, région}], last_update_date} — position GRCh38 — ou nul lorsque le rsID n'est pas dans le catalogue. fusion = 1 signifie que le rsID a été fusionné dans un autre enregistrement en amont.

ChampTypeBesoins et contraintes
rs_idchaîne de caractèresrequis
const result = await host.mcp("human-genetics", "gwas_get_variant", {"rs_id": "rs7412"})

eqtl_list_datasets

Lister les ensembles de données du catalogue eQTL (un ensemble de données = une étude x type de tissu/cellule x méthode de quantification). Args : study_label (nom exact de l'étude, p.ex. GTEx, Alasoo_2018, BLUEPRINT); tissue_label (étiquette exacte de type tissulaire/cellule, p.ex. foie, macrophage, LCL — minuscule dans le catalogue); quant_method (expression du gène, exon, tx, txrev, microarray, coupe-feuilles, aptamer=protéine plasma; pour les eQTL classiques au niveau des gènes, utiliser ge; max_records (cap par défaut 1000; le catalogue complet non filtré est ~760 datasets). Retourne les filtres {, retourné, tronqué, ensembles de données} triés par dataset_id; chaque {dataset_id (QTD...), study_id (QTS...), study_label, sample_group, tissue_id, tissue_label, condition_label, quant_method, sample_size}. Le API ne publie pas de nombre total; tronqué=false prouve que la liste est complète.

ChampTypeBesoins et contraintes
study_labelchaîne de caractèresfacultatif
tissue_labelchaîne de caractèresfacultatif
quant_methodchaîne de caractèresfacultatif
max_recordsentierfacultatif; par défaut : 1000
const result = await host.mcp("human-genetics", "eqtl_list_datasets", {"study_label": "Alasoo_2018", "quant_method": "ge"})

eqtl_associations

Les lignes d'association moléculaire-QTL d'un ensemble de données du catalogue eQTL, filtrées par un gène, une variante ou une région. Args: dataset_id (adhésion QTD de eqtl_list_datasets, par exemple - QTD000266; gene_id (identifiant de gène d'Ensembl non-versionné, p.ex. ENSG00000130203 APOE; au moins un de gene_id/rsid/variant/pos est requis); rsid (dbSNP rsID); variante (eQTL Catalogue chaîne de la variante chr19_44908822_C_T, soulignement préfixé GRCh38); pos (chromosome de fenêtre génomique:start-end GRCh38 pas de préfixe chr, p.ex. 19:44900000-44920000); nlog10p_min (significance du plancher : seulement les lignes avec -log10(p) >= ceci, appliqué en amont); max_records (cap par défaut 1000 = une page). Retourne {dataset_id, filtres, retournés, tronqués, associations}; chaque ligne {molecular_trait_id, gene_id, variante, rsid, chromosome, position, ref, alt, type, bêta, se, pvalue, nlog10p, maf, ac, an, r2, median_tpm}. Les lignes couvrent uniquement la fenêtre cis de l'ensemble de données testé (±1 Mb de chaque gène); vide signifie "non testé / non présent". Aucun nombre total n'est publié: tronqué=false prouve l'épuisement, tronqué=true signifie que le bouchon a été touché.

ChampTypeBesoins et contraintes
dataset_idchaîne de caractèresrequis
gene_idchaîne de caractèresfacultatif
rsidchaîne de caractèresfacultatif
variantchaîne de caractèresfacultatif
poschaîne de caractèresfacultatif
nlog10p_minNumérofacultatif
max_recordsentierfacultatif; par défaut : 1000
const result = await host.mcp("human-genetics", "eqtl_associations", {"dataset_id": "QTD000266", "gene_id": "ENSG00000130203", "nlog10p_min": 2})

phewas_instances

Énumérez les portails publics PheWeb PheWAS que ce serveur peut interroger, avec un registre de création de génomes et de capacités. Retourne les rubriques {:{key:{label, base_url, genome_build, capacités, notes}}}. les capacités nomment les paramètres de chaque instance expose: variante (phewas_variant), gène (phewas_finngen_gene), phénotypes (phewas_list_phenotypes), autocomplet (phewas_search_phenotypes). NOTER la division de construction: les ID de variante du FinnGen R12 sont GRCh38; BioBank Japan (pheweb.jp) est GRCh37/hg19 — coordonnées de levage avant la saisie croisée.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("human-genetics", "phewas_instances", {})

phewas_variant

PheWAS pour une variante: ses statistiques d'association par rapport à chaque phénotype dans un portail PheWeb de biobanque, le plus significatif d'abord. Args: exemple (fingen FinnGen R12 GRCh38, ou bbj BioBank Japan GRCh37; les coords de variante DOIVENT être sur la compilation instance's); Variante (chrom-pos-ref-alt, séparateurs :/_ et préfixe chr toléré, par exemple 19-44908822-C-T APOE rs7412 GRCh38/finngen ou 1-55505647-G-T PCSK9 rs11591147 GRCh37/bbj); max_phenos (cap par défaut 200; FinnGen retourne ~2470 lignes; triées par la valeur p ascendante avant le plafonnement). Retourne {instance, genome_build, variante, variant_meta, total, retourné, tronqué, phénotypes}; variant_meta {chrom, pos, ref, alt, rsids, nearest_genes, gnomad (FinnGen seulement)}. Chaque ligne de phénotype {phénocode, phénostring, catégorie, pval, mlogp, beta, sebeta, af=maf, maf_case, maf_control, n_cases, n_controls, n_samples} (champs non publiés null; Les lignes BBJ ont af, les lignes FinnGen ont maf triplets + mlogp). Les variantes inconnues soulèvent une erreur non trouvée.

ChampTypeBesoins et contraintes
instancechaîne de caractèresrequis; enum: ["finngen", "bbj"]
variantchaîne de caractèresrequis
max_phenosentierfacultatif; par défaut : 200
const result = await host.mcp("human-genetics", "phewas_variant", {"instance": "finngen", "variant": "19-44908822-C-T", "max_phenos": 50})

phewas_finngen_gene

PheWAS de niveau génétique du FinnGen R12: pour chaque paramètre de la maladie, la variante la plus associée dans la région génique, la plus significative en premier. Arguments: gene_symbol (symbole HGNC par exemple PCSK9, APOE; des symboles inconnus soulèvent une erreur non trouvée); max_phenos (cap par défaut 200; FinnGen a les paramètres 2470, une ligne chacun; triées par la valeur p ascendante avant le plafonnement). Retourne {instance:"finngen", genome_build:"GRCh38", gene_symbol, total, retourné, tronqué, phénotypes}; chaque ligne est la forme de ligne phewas_variant plus la variante:{chrom, pos, ref, alt, varad, rsids} — la variante supérieure de ce paramètre dans cette région du gène 's (région != organisme génique; Les limites du gène PheWeb pads). La plupart des lignes sont des résultats nuls (pval1) — la variante BEST par point de référence est toujours signalée; filtrez par pval vous-même pour les coups significatifs.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresrequis
max_phenosentierfacultatif; par défaut : 200
const result = await host.mcp("human-genetics", "phewas_finngen_gene", {"gene_symbol": "PCSK9", "max_phenos": 50})

phewas_list_phenotypes

Catalogue complet du phénotype (critère de la maladie) d'une instance PheWeb, avec nombre de cas/témoins. Args: instance (actuellement seul Finngen expose ce paramètre); BBJ n'utilise pas phewas_search_phenotypes là-bas); max_records (cap par défaut 3000 > FinnGen's ~2470 endpoints, de sorte que la valeur par défaut retourne le catalogue complet). Retourne {installation, total, retourné, tronqué, phénotypes} trié par phénocode; chaque ligne {phénocode (par exemple: "T2D"), phénostring, catégorie, num_cases, num_controls, num_gw_significant (compte des loci significatifs à l'échelle du génome pour ce paramètre)}.

ChampTypeBesoins et contraintes
instancechaîne de caractèresfacultatif; par défaut: "finngen"; enum: ["finngen"]
max_recordsentierfacultatif; par défaut : 3000
const result = await host.mcp("human-genetics", "phewas_list_phenotypes", {"instance": "finngen", "max_records": 3000})

phewas_search_phenotypes

Recherche par nom d'une instance PheWeb's phénotypes (et entités) – le point d'entrée pour résoudre un nom de maladie à un phénocode. Args : requête (recherche de phénotype en texte libre, par exemple) "diabetes", "asthma"; correspond aux noms/codes de phénotype; certains cas correspondent également aux noms de gènes et aux ID rs); instance (par défaut de finngen ou bbj — les deux exposent autocomplet); max_records (cap par défaut 500; Les réponses autocomplètes sont des listes courtes, rarement plafonnées). Retourne {installation, requête, total, retourné, tronqué, matches}; chaque match {affichage, phénocode, url}. Utiliser le phénocode avec les lignes phewas_list_phenotypes ou le site web de l'instance; Les chaînes d'affichage BBJ intègrent le code entre parenthèses.

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
instancechaîne de caractèresfacultatif; par défaut: "finngen"; enum: ["finngen", "bbj"]
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("human-genetics", "phewas_search_phenotypes", {"query": "diabetes", "instance": "finngen"})

Expression

Afficher les opérations et les paramètres

gtex_tissue_sites

Lister tous les sites de tissus avec des métadonnées pour une version GTEx sur support (54 dans gtex_v8) : nombres d'échantillons, nombres eGene/sGene, codes de couleurs et ids d'ontologie UBERON.

ChampTypeBesoins et contraintes
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_tissue_sites", {"dataset_id": "gtex_v8"})

gtex_dataset_info

Lister toutes les sorties de données GTEx avec métadonnées : datasetId, version GENCODE, compilation de génomes, compilation de dbSNP et dénombrement d'échantillons/subject/tissues.

ChampTypeBesoins et contraintes
dataset_idchaîne de caractèresfacultatif
organization_namechaîne de caractèresfacultatif
const result = await host.mcp("expression", "gtex_dataset_info", {})

gtex_sample_info

Des métadonnées d'échantillon et de donneur pour une version GTEx pincée, filtrée en option par tissue_site_detail_id, data_type (par exemple : RNASEQ, WGS), ou subject_id. Paged et vérifié par comptage; Un appel non filtré correspond à des dizaines de milliers d'échantillons, donc filtrez ou définissez max_samples.

ChampTypeBesoins et contraintes
tissue_site_detail_idchaîne de caractèresfacultatif
data_typechaîne de caractèresfacultatif
subject_idchaîne de caractèresfacultatif
max_samplesentierfacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_sample_info", {"tissue_site_detail_id": "Liver", "data_type": "RNASEQ", "max_samples": 100})

gtex_resolve_genes

Résoudre les symboles du gène ou les ids d'Ensembl non-versionnés aux ids de GENCODE en version pour une libération par épingle, p.ex. GAPDH -> ENSG00000111640.14. Fournissez les ids à l'expression / outils eQTL.

ChampTypeBesoins et contraintes
genestableau de la chaînerequis
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_resolve_genes", {"genes": ["GAPDH", "BRCA2"]})

gtex_median_expression

Expression génique médiane (MTP) pour un ou plusieurs ids de GENCODE VERSIONNEL à travers les tissus (tissus d'omit pour tous). Paged et compte-vérifié sur les rangées (genre, tissu).

ChampTypeBesoins et contraintes
gencode_idstableau de la chaînerequis
tissue_site_detail_idstableau de la chaînefacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_median_expression", {"gencode_ids": ["ENSG00000111640.14"]})

gtex_expression_summary

Résumé de l'expression d'un gène dans TOUS les tissus classés par MPT médiane descendante. Accepte un symbole ou Ensembl id et le restitue automatiquement à un GENCODE id versionné d'abord.

ChampTypeBesoins et contraintes
genechaîne de caractèresrequis
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_expression_summary", {"gene": "GAPDH"})

gtex_gene_expression

Echantillon-niveau (non agrégé) expression TPM tableaux pour un VERSIOND GENCODE id, par tissu ( tissus d'omit pour tous). Renvoie le tableau TPM complet par échantillon et n_samples pour chaque tissu.

ChampTypeBesoins et contraintes
gencode_idchaîne de caractèresrequis
tissue_site_detail_idstableau de la chaînefacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_gene_expression", {"gencode_id": "ENSG00000111640.14", "tissue_site_detail_ids": ["Whole_Blood"]})

gtex_top_expressed_genes

Les gènes top-n par TPM médian dans un tissu, en utilisant le classement côté API. filter_mt_gene (par défaut true) fait tomber les gènes mitochondriaux du classement.

ChampTypeBesoins et contraintes
tissue_site_detail_idchaîne de caractèresrequis
nentierfacultatif; par défaut : 100
filter_mt_genebooléenfacultatif; par défaut : true
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_top_expressed_genes", {"tissue_site_detail_id": "Whole_Blood", "n": 20})

gtex_eqtl_genes

Tous les eGenes (gens avec ≥1 cis-eQTL significatif) pour un tissu. Page par page et compte vérifié à pied (p. ex. Pancreas gtex_v8 = 9,660). max_genes caps combien de lignes sont retournées.

ChampTypeBesoins et contraintes
tissue_site_detail_idchaîne de caractèresrequis
max_genesentierfacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_eqtl_genes", {"tissue_site_detail_id": "Pancreas", "max_genes": 100})

gtex_single_tissue_eqtls

Associations significatives cis-eQTL à un seul tissu pour un gène et/ou une variante (précalculée). Fournir gencode_id et/ou variant_id; tissue_site_detail_id rétrécit en option. Paged et compte-vérifié.

ChampTypeBesoins et contraintes
gencode_idchaîne de caractèresfacultatif
variant_idchaîne de caractèresfacultatif
tissue_site_detail_idchaîne de caractèresfacultatif
max_resultsentierfacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_single_tissue_eqtls", {"gencode_id": "ENSG00000111640.14"})

gtex_multi_tissue_eqtls

Méta-analyse multitâches cis-eQTL (METASOFT) pour une id GENCODE VERSIONNÉ. variant_id se rétrécit en option à une variante. Retourne les lignes par variable avec les valeurs m, NES, p-values et SE par tissu.

ChampTypeBesoins et contraintes
gencode_idchaîne de caractèresrequis
variant_idchaîne de caractèresfacultatif
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_multi_tissue_eqtls", {"gencode_id": "ENSG00000111640.14"})

gtex_calculate_eqtl

Calculer un eQTL à la mouche pour toute paire de variables génétiques dans un seul tissu, y compris les paires non significatives. Retourne les tableaux p-value, NES, t-statistic, MAF et par exemple génotype/expression.

ChampTypeBesoins et contraintes
gencode_idchaîne de caractèresrequis
variant_idchaîne de caractèresrequis
tissue_site_detail_idchaîne de caractèresrequis
dataset_idchaîne de caractèresfacultatif; par défaut : "gtex_v8"
const result = await host.mcp("expression", "gtex_calculate_eqtl", {"gencode_id": "ENSG00000111640.14", "variant_id": "chr12_6452899_G_A_b38", "tissue_site_detail_id": "Whole_Blood"})

Annotation des protéines

Afficher les opérations et les paramètres

get_domain_architecture

Architecture complète du domaine InterPro pour une ou plusieurs protéines UniProt (toutes les entrées correspondantes, signatures membres-DB, coordonnées fragmentaires), avec pagination vérifiée par rapport au nombre API.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
const result = await host.mcp("protein-annotation", "get_domain_architecture", {"accessions": ["P04637"]})

search_interpro_entries

Recherche de mots clés sur les entrées InterPro ou de la base de données des membres (Pfam, SMART, PROSITE, PANTHER, CDD), marche complète du curseur vérifié par le nombre API.

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
entry_typechaîne de caractèresfacultatif
source_dbchaîne de caractèresfacultatif; par défaut : "interpro"
go_termchaîne de caractèresfacultatif
const result = await host.mcp("protein-annotation", "search_interpro_entries", {"query": "kinase", "source_db": "pfam"})

get_interpro_entry

Compte rendu détaillé d'une entrée InterPro (IPRxxxxx) ou famille Pfam (PFxxxxx) – itinéraire choisi par préfixe d'adhésion.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("protein-annotation", "get_interpro_entry", {"accession": "IPR000719"})

search_pfam_clans

Recherche de mots clés sur les clans Pfam (ensembles InterPro, accessions CLxxxx).

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
const result = await host.mcp("protein-annotation", "search_pfam_clans", {"query": "kinase"})

get_pfam_clan

Détails du clan Pfam, y compris la liste complète des membres et familles triés.

ChampTypeBesoins et contraintes
clan_accessionchaîne de caractèresrequis
const result = await host.mcp("protein-annotation", "get_pfam_clan", {"clan_accession": "CL0016"})

get_pfam_family_proteins

Protéines membres d'une famille de Pfam (protéines complètes vérifiées en fonction du nombre ou du nombre seulement). Utilisez count_only pour de très grandes familles.

ChampTypeBesoins et contraintes
pfam_accessionchaîne de caractèresrequis
reviewed_onlybooléenfacultatif; par défaut : false
tax_identierfacultatif
count_onlybooléenfacultatif; par défaut : false
const result = await host.mcp("protein-annotation", "get_pfam_family_proteins", {"pfam_accession": "PF00069", "count_only": true})

get_pfam_family_proteomes

Protéomes contenant des membres d'une famille Pfam. count_only par défaut true — la pagination du curseur de protéome en amont est défectueuse pour les promenades profondes.

ChampTypeBesoins et contraintes
pfam_accessionchaîne de caractèresrequis
count_onlybooléenfacultatif; par défaut : true
const result = await host.mcp("protein-annotation", "get_pfam_family_proteomes", {"pfam_accession": "PF00069"})

get_protein_atlas_gene

Atlas des protéines humaines par gène (libérer 25.x): tissu/subcellulaire/pathologie/expression du sang/cerveau et information sur les anticorps. Accepte un ID de gène Ensembl ou un symbole de gène.

ChampTypeBesoins et contraintes
genechaîne de caractèresrequis
fullbooléenfacultatif; par défaut : false
const result = await host.mcp("protein-annotation", "get_protein_atlas_gene", {"gene": "TP53"})

search_protein_atlas

Recherche en vrac sélectionnée en colonne sur l'Atlas des protéines humaines (search_download).

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
columnschaîne de caractèresfacultatif; par défaut: "g,gs,eg,gd,up,chr,chrp,scl"
const result = await host.mcp("protein-annotation", "search_protein_atlas", {"query": "kinase"})

map_string_ids

Carte des symboles/aliases des gènes pour les identificateurs de protéines STRING (v12.0). Chaque symbole d'entrée est soit cartographié, soit répertorié dans non macpé — les deux partitions l'entrée.

ChampTypeBesoins et contraintes
symbolstableau de la chaînerequis
speciesentierfacultatif; par défaut : 9606
const result = await host.mcp("protein-annotation", "map_string_ids", {"symbols": ["TP53", "BRCA1", "EGFR"]})

get_string_network

Réseau d'interaction protéine-protéine STRING pour une liste de gènes (v12.0) à un seuil de confiance. Les symboles des cartes d'abord (non maquillé rapporté), puis récupère les nœuds, les bords, le résumé et la provenance.

ChampTypeBesoins et contraintes
symbolstableau de la chaînerequis
speciesentierfacultatif; par défaut : 9606
required_scoreentierfacultatif; par défaut : 700
const result = await host.mcp("protein-annotation", "get_string_network", {"symbols": ["TP53", "BRCA1", "EGFR"], "required_score": 700})

get_string_similarity_scores

La similarité entre les protéines de Smith-Waterman se situe dans un ensemble de gènes (STRING/homology). Sparse: les paires absentes des données STRING's ne sont pas listées (absence signifie pas de similarité enregistrée, pas zéro).

ChampTypeBesoins et contraintes
symbolstableau de la chaînerequis
speciesentierfacultatif; par défaut : 9606
const result = await host.mcp("protein-annotation", "get_string_similarity_scores", {"symbols": ["TP53", "MDM2", "MDM4"]})

get_string_best_similarity_hits

Meilleure homologie par protéine d'entrée chez une espèce cible (STRING /homology_best). target_species=null demande le meilleur résultat pour toutes les espèces.

ChampTypeBesoins et contraintes
symbolstableau de la chaînerequis
speciesentierfacultatif; par défaut : 9606
target_speciesentierfacultatif
const result = await host.mcp("protein-annotation", "get_string_best_similarity_hits", {"symbols": ["TP53"], "target_species": 10090})

Modèles de cancer

Afficher les opérations et les paramètres

cbioportal_list_studies

Lister les études sur le cancer de cBioPortal, éventuellement filtrées par un mot-clé en texte libre (nom/description/type de cancer) et/ou un id exact de type cancer; renvoie l'identifiant de l'étude, le nom, le type de cancer, le génome de référence, la citation et le nombre d'échantillons par type de données.

ChampTypeBesoins et contraintes
keywordchaîne de caractèresfacultatif
cancer_type_idchaîne de caractèresfacultatif
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("cancer-models", "cbioportal_list_studies", {"keyword": "glioma"})

cbioportal_get_study

Obtenez une étude cBioPortal sur le cancer par id : métadonnées, nombres d'échantillons par type de données, nombres d'échantillons/patients réels (d'après les collections de l'étude, pas le champ d'affichage) et ses profils moléculaires.

ChampTypeBesoins et contraintes
study_idchaîne de caractèresrequis
const result = await host.mcp("cancer-models", "cbioportal_get_study", {"study_id": "msk_impact_2017"})

cbioportal_mutations_in_gene

Toutes les mutations d'un gène (symbole HUGO) dans une étude cBioPortal, avec des agrégats de récurrence: mutations totales, nombre d'échantillons mutés, distributions de type mutation et de changement de protéines, et les changements protéiques les plus récurrents.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresrequis
study_idchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 100
const result = await host.mcp("cancer-models", "cbioportal_mutations_in_gene", {"gene_symbol": "IDH1", "study_id": "difg_msk_2023"})

cbioportal_mutation_frequency

Fréquence de mutation d'un gène dans plusieurs études de cBioPortal (1–12) : fraction mutée-échantillon de la cohorte séquencée par étude, classée la plus fréquente en premier.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresrequis
study_idstableau de la chaînerequis; minItems: 1; maxItems: 12
const result = await host.mcp("cancer-models", "cbioportal_mutation_frequency", {"gene_symbol": "KRAS", "study_ids": ["msk_impact_2017", "difg_msk_2023"]})

cbioportal_cna_in_gene

Des modifications discrètes du nombre de copies d'un gène dans une étude cBioPortal, filtrées par type d'événement (effacement profond / amplification par défaut), avec la distribution complète des modifications par échantillon.

ChampTypeBesoins et contraintes
gene_symbolchaîne de caractèresrequis
study_idchaîne de caractèresrequis
event_typechaîne de caractèresfacultatif; par défaut: "HOMDEL_AND_AMP"; enum: ["HOMDEL_AND_AMP", "HOMDEL", "AMP", "GAIN", "HETLOSS", "DIPLOID", "ALL"]
max_recordsentierfacultatif; par défaut : 100
const result = await host.mcp("cancer-models", "cbioportal_cna_in_gene", {"gene_symbol": "CDKN2A", "study_id": "msk_impact_2017"})

cbioportal_clinical_attributes

Attributs cliniques définis dans une étude cBioPortal (champs de patients et d'échantillons), mettant en évidence les paramètres de survie et indiquant si les données globales de survie sont présentes.

ChampTypeBesoins et contraintes
study_idchaîne de caractèresrequis
max_recordsentierfacultatif; par défaut : 200
const result = await host.mcp("cancer-models", "cbioportal_clinical_attributes", {"study_id": "brca_tcga_pan_can_atlas_2018"})

ARN

Afficher les opérations et les paramètres

get_family

Métadonnées de la famille Rfam pour une adhésion (RF00005) ou id de la famille (tRNA) — les deux résoudre. Enregistrement aplati plus le JSON en amont complet dans "raw".

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
const result = await host.mcp("rna", "get_family", {"family": "RF00005"})

get_seed_alignment

Alignement des semences d'une famille de Rfam à Stockholm (par défaut, avec une ligne de structure secondaire consensuelle) ou FASTA aligné.

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
fmtchaîne de caractèresfacultatif; par défaut: "stockholm"; enum: ["stockholm", "fasta"]
max_bytesentierfacultatif; par défaut : 400000
const result = await host.mcp("rna", "get_seed_alignment", {"family": "RF00162", "fmt": "stockholm"})

get_covariance_model

Modèle de covariance infernale (fichier CM) d'une famille Rfam, utilisable directement avec cmsearch/cmscan, plus champs d'en-tête parsed.

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
max_bytesentierfacultatif; par défaut : 400000
const result = await host.mcp("rna", "get_covariance_model", {"family": "RF00162"})

get_tree

Arbre phylogénétique des graines d'une famille Rfam (texte NHX/Newick).

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
const result = await host.mcp("rna", "get_tree", {"family": "RF00162"})

get_sequence_regions

Tous les hits complets d'une famille Rfam à travers les bases de données séquentielles (parsed TSV). Vérifiez d'abord num_full via get_family — rfam.org 403s cette route pour de très grandes familles (par exemple: RF00005).

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
const result = await host.mcp("rna", "get_sequence_regions", {"family": "RF00162"})

get_structure_mapping

Cartographie des structures au niveau des résidus de la PDB d'une famille de Rfam, triée de façon déterministe.

ChampTypeBesoins et contraintes
familychaîne de caractèresrequis
const result = await host.mcp("rna", "get_structure_mapping", {"family": "RF00162"})

accession_to_id

Conversion d'une adhésion Rfam à son identité familiale (p. ex. Règlement (CE) no 798/2008 du Parlement européen et du Conseil du 21 décembre 2008 relatif à l'application de l'article 107, paragraphe 2, du traité sur le fonctionnement de l'Union européenne (JO L 347 du 31.12.2008, p. 1).> "tRNA").

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("rna", "accession_to_id", {"accession": "RF00005"})

id_to_accession

Convertissez un id de famille Rfam à son adhésion (par exemple "tRNA" -> RF00005).

ChampTypeBesoins et contraintes
family_idchaîne de caractèresrequis
const result = await host.mcp("rna", "id_to_accession", {"family_id": "tRNA"})

search_sequence

Effectuez une recherche dans une séquence d'ARN par l'intermédiaire du paramètre officiel du lot Rfam. conserver l'identité de travail retournée en attendant; une réponse inachevée n'est pas un résultat nul. Inspecter les allumettes et les sources d'information. Après une réponse ratée, diagnostiquez ou recommencez le travail existant plutôt que de le soumettre à plusieurs reprises.

ChampTypeBesoins et contraintes
sequencechaîne de caractèresrequis
max_wait_sNumérofacultatif; par défaut : 300
poll_interval_sNumérofacultatif; par défaut : 5
const result = await host.mcp("rna", "search_sequence", {"sequence": "GGUUCCGGGAAGGCAGCAGGUGGAAACCUGCCA"})

Archives Omics

Afficher les opérations et les paramètres

arrayexpress_search_experiments

Recherche ArrayExpérimentations fonctionnelles-génomiques (BioStudies) avec récupération complète et totale de Hits; les filtres (pression, organisme, study_type, technologie, gamme de dates de libération, facettes supplémentaires) se combinent avec ET.

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
study_typechaîne de caractèresfacultatif
technologychaîne de caractèresfacultatif
released_afterchaîne de caractèresfacultatif
released_beforechaîne de caractèresfacultatif
extra_facetsobjetfacultatif
max_recordsentierfacultatif; par défaut : 50
const result = await host.mcp("omics-archives", "arrayexpress_search_experiments", {"organism": "Homo sapiens", "study_type": "ChIP-seq", "max_records": 50})

arrayexpress_get_experiment

Obtenez une expérience ArrayExpress (BioStudies) comme un dossier d'analyste aplati — type d'étude, organismes, nombre d'essais/échantillons, conceptions/facteurs, auteurs, publications, protocoles, conceptions de tableaux et résumé de fichiers.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("omics-archives", "arrayexpress_get_experiment", {"accession": "E-MTAB-5061"})

arrayexpress_get_experiment_files

Lister tous les fichiers d'une expérience ArrayExpress (nom, taille, type, format, description) avec les URL de téléchargement, ainsi que le nombre de fichiers /info pour fins de comparaison.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("omics-archives", "arrayexpress_get_experiment_files", {"accession": "E-MTAB-5061"})

arrayexpress_get_experiment_samples

Récupérer les lignes d'annotation SDRF par échantillon pour une expérience ArrayExpress (en-têtes MAGE-TAB stepful, répétitions suffixées #2/#3). Expériences sans retour SDRF {"error":"no_sdrf"}.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
max_rows_returnedentierfacultatif; par défaut : 200
const result = await host.mcp("omics-archives", "arrayexpress_get_experiment_samples", {"accession": "E-MTAB-5061", "max_rows_returned": 200})

geo_search_series

Rechercher les ensembles de données GEO de la BCN (db=gds) et les enregistrements de la série de retour (documents sommaires trimés). term est la syntaxe complète des utilitaires E; ajouter gse[ETYP] pour limiter les séries.

ChampTypeBesoins et contraintes
termchaîne de caractèresrequis
retmaxentierfacultatif; par défaut : 500
const result = await host.mcp("omics-archives", "geo_search_series", {"term": "asthma AND gse[ETYP]", "retmax": 20})

geo_get_series

Chercher des métadonnées structurées pour les séries GEO (adhésions GSE) avec des échantillons inclus — titre/résumé/design de la série, plates-formes, échantillons avec des caractéristiques et des informations de bibliothèque, et URL de fichier supplémentaire. Les tables de données ne sont jamais téléchargées.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
const result = await host.mcp("omics-archives", "geo_get_series", {"accessions": ["GSE131907"]})

metabolights_list_studies

Énumérez toutes les accessions publiques à l'étude MetaboLights (numériquement triées) avec le compte de API's. Il n'y a pas de recherche d'étude côté serveur — filtre récupéré les candidats par titre/descripteur à la place.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("omics-archives", "metabolights_list_studies", {})

metabolights_get_studies

Remplir des métadonnées structurées pour les études de MetaboLights (MTBLSxxx) à partir de la charge utile de l'ISA analysée — titre, état, années, organismes, analyses, facteurs, descripteurs, nombre d'échantillons, protocoles; tableau par échantillon en option. Les adhésions inconnues/privées vont en not_found.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
include_samplesbooléenfacultatif; par défaut : false
max_sample_rows_returnedentierfacultatif; par défaut : 200
const result = await host.mcp("omics-archives", "metabolights_get_studies", {"accessions": ["MTBLS1"], "include_samples": false})

metabolights_get_study_files

Compléter l'inventaire des fichiers pour une étude publique de MetaboLights — le dossier d'étude de haut niveau (ISA-Tab, MAF, entrées de dossiers) et, par défaut, le dossier de données FILS récursifs.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
include_data_filesbooléenfacultatif; par défaut : true
const result = await host.mcp("omics-archives", "metabolights_get_study_files", {"accession": "MTBLS1"})

metabolights_search_data_files

Recherche Glob sur une étude MetaboLights's dossier de données brutes (arborescence FILS). pattern est un nom de fichier glob (par exemple: '.mzML', '.raw'); omettez-le pour lister chaque fichier de données.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
patternchaîne de caractèresfacultatif
const result = await host.mcp("omics-archives", "metabolights_search_data_files", {"accession": "MTBLS1", "pattern": "*.zip"})

mgnify_search_studies

Trouvez les études de métagénomique MGnify par texte libre OU ligne biome (fournir exactement une). La liste complète est paginée jusqu'à la fin et le nombre est vérifié par rapport au API.

ChampTypeBesoins et contraintes
querychaîne de caractèresfacultatif
biome_lineagechaîne de caractèresfacultatif
const result = await host.mcp("omics-archives", "mgnify_search_studies", {"query": "coral"})

mgnify_get_studies

Récupérer des dossiers structurés pour les études de MGnify (adhésions de MGYS). Avec include_analyses, chaque étude porte également sa liste complète d'analyses plus les ventilations par pipeline/par experiment. Les adhésions inconnues sont portées disparues.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
include_analysesbooléenfacultatif; par défaut : false
const result = await host.mcp("omics-archives", "mgnify_get_studies", {"accessions": ["MGYS00000410"], "include_analyses": false})

mgnify_get_study_analyses

Lister TOUTES les analyses d'une étude MGnify (pagination complète, vérifiée par comptage) — un enregistrement par analyse MGYA avec version de pipeline, type d'expérience, état, et run/assemblement/sample accessions.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("omics-archives", "mgnify_get_study_analyses", {"accession": "MGYS00000410"})

pride_search_projects

Rechercher les projets de protéomique des archives PRIDE (récupération complète et vérifiée par api_total); les filtres (mot clé, organisme, instrument, maladie, extra_filters) se combinent avec ET. Trié par adhésion ASC — une promenade délimitée est un préfixe stable.

ChampTypeBesoins et contraintes
keywordchaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
instrumentchaîne de caractèresfacultatif
diseasechaîne de caractèresfacultatif
extra_filtersobjetfacultatif
max_records_returnedentierfacultatif; par défaut : 50
const result = await host.mcp("omics-archives", "pride_search_projects", {"keyword": "phosphoproteome", "organism": "Homo sapiens (human)", "max_records_returned": 50})

pride_get_projects

Récupérer des métadonnées complètes pour les projets PRIDE par adhésion (par exemple : PXD010154) — la même forme d'enregistrement normalisée que pride_search_projects, de sorte que les deux sont directement comparables. Les accessions inconnues vont dans not_found.

ChampTypeBesoins et contraintes
accessionstableau de la chaînerequis
const result = await host.mcp("omics-archives", "pride_get_projects", {"accessions": ["PXD010154"]})

pride_search_project_proteins

Énumérer les lignes de preuve de protéines pour un projet PRIDE affinitaire-protéomique (paged to épuisement). NOTE: seuls les projets d'affinité-protéomique sont servis ici; Pour les projets MS (PXD) classiques, utilisez plutôt pride_find_projects_for_protein.

ChampTypeBesoins et contraintes
project_accessionchaîne de caractèresrequis
keywordchaîne de caractèresfacultatif
const result = await host.mcp("omics-archives", "pride_search_project_proteins", {"project_accession": "PXD010154"})

pride_find_projects_for_protein

Trouver des projets PRIDE contenant une protéine (direction MS-archive). protein_accession est une adhésion UniProt (par exemple P04637). Nourrir les accessions de projet retournées à pride_get_projects pour les métadonnées complètes.

ChampTypeBesoins et contraintes
protein_accessionchaîne de caractèresrequis
const result = await host.mcp("omics-archives", "pride_find_projects_for_protein", {"protein_accession": "P04637"})

Guide des cellules

Afficher les opérations et les paramètres

get_cell_type_info

CellGuide (CELLxGENE) information de type cellulaire par id ou nom de Cell Ontology : nom, synonymes, description de l'ontologie, et description curated/GPT.

ChampTypeBesoins et contraintes
cell_typechaîne de caractèresrequis
const result = await host.mcp("cellguide", "get_cell_type_info", {"cell_type": "acinar cell"})

search_cell_types

Rechercher les types de cellules CellGuide par texte libre sur le nom et les synonymes (le CDN n'a pas de point d'arrêt de recherche, donc celltype_metadata.json est filtré côté client).

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
limitentierfacultatif; par défaut : 25
const result = await host.mcp("cellguide", "search_cell_types", {"query": "T cell", "limit": 25})

get_marker_genes

gènes marqueurs CellGuide pour un type de cellule (id ou nom) : calcul (dérivé de données, marqué) ou canonique (littérature-curée).

ChampTypeBesoins et contraintes
cell_typechaîne de caractèresrequis
marker_typechaîne de caractèresfacultatif; par défaut: "compputational"; enum: ["compputational", "canonical"]
limitentierfacultatif; par défaut : 25
const result = await host.mcp("cellguide", "get_marker_genes", {"cell_type": "CL:0000084", "marker_type": "computational", "limit": 25})

get_source_data

Ensembles de données et publications de source CellGuide contribuant à un type de cellule (id ou nom) : nom/url de la collection, publication, et les tissus/maladies/organismes couverts.

ChampTypeBesoins et contraintes
cell_typechaîne de caractèresrequis
const result = await host.mcp("cellguide", "get_source_data", {"cell_type": "CL:0000622"})

get_cell_tissues

Tissus anatomiques où un type de cellule (id ou nom) est observé, agrégé (dédoublement) dans les collections sources de CellGuide.

ChampTypeBesoins et contraintes
cell_typechaîne de caractèresrequis
const result = await host.mcp("cellguide", "get_cell_tissues", {"cell_type": "T cell"})

Règlement

Afficher les opérations et les paramètres

encode_search_experiments

Rechercher les expériences de génomique fonctionnelle ENCODE (ChIP-seq, ATAC-seq, ...). Filtres: assay_title (par exemple "TF ChIP-seq"), cible (étiquette protéique, p.ex. "CTCF"), organisme (nom scientifique), statut (par défaut "released"), date_released_before (date ISO — une fenêtre fermée), plus filtres de champ portail arbitraires via extra_filters. Le jeu de résultats complet est paged et count-vérified; accessions liste chaque match, au plus les résumés de lignes max_rows sont retournés.

ChampTypeBesoins et contraintes
assay_titlechaîne de caractèresfacultatif
targetchaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
statuschaîne de caractèresfacultatif; par défaut: "released"
date_released_beforechaîne de caractèresfacultatif
extra_filtersobjetfacultatif
max_rowsentierfacultatif; par défaut : 100
const result = await host.mcp("regulation", "encode_search_experiments", {"target": "CTCF", "assay_title": "TF ChIP-seq", "max_rows": 50})

encode_search_biosamples

Rechercher les bioéchantillons ENCODE (lignes cellulaires, tissus, cellules primaires). Filtres: term_name (terme d'ontologie, p.ex. "K562"), classement ("cell line", "tissue", ...), organisme (nom scientifique), statut (par défaut "released"), date_created_before (date ISO), plus filtres de champ portail arbitraires via extra_filters. Complète, count-vérified: accessions est la liste complète des correspondances, au plus les résumés de lignes max_rows sont retournés.

ChampTypeBesoins et contraintes
term_namechaîne de caractèresfacultatif
classificationchaîne de caractèresfacultatif
organismchaîne de caractèresfacultatif
statuschaîne de caractèresfacultatif; par défaut: "released"
date_created_beforechaîne de caractèresfacultatif
extra_filtersobjetfacultatif
max_rowsentierfacultatif; par défaut : 100
const result = await host.mcp("regulation", "encode_search_biosamples", {"term_name": "K562", "classification": "cell line", "max_rows": 25})

encode_list_files

Lister les fichiers de données ENCODE par format / test / bioéchantillon. Filtres: file_format ("fastq", "bam", "bigWig", "bed", ...), assay_term_name (terme d'ontologie par exemple "ChIP-seq" — PAS l'affichage assay_title comme "TF ChIP-seq", qui ne correspond à rien; passer les titres via extra_filters={"assay_title": ...}), biosample_term_name (par exemple "K562"), statut (par défaut "released"), date_created_before, plus filtres de champ portail arbitraires via extra_filters. Les requêtes de fichiers correspondent à des millions de lignes non filtrées — combinent toujours plusieurs filtres. Complète + vérification du nombre; au plus les résumés de lignes max_rows retournés.

ChampTypeBesoins et contraintes
file_formatchaîne de caractèresfacultatif
assay_term_namechaîne de caractèresfacultatif
biosample_term_namechaîne de caractèresfacultatif
statuschaîne de caractèresfacultatif; par défaut: "released"
date_created_beforechaîne de caractèresfacultatif
extra_filtersobjetfacultatif
max_rowsentierfacultatif; par défaut : 100
const result = await host.mcp("regulation", "encode_list_files", {"file_format": "bed", "assay_term_name": "ChIP-seq", "biosample_term_name": "K562", "extra_filters": {"output_type": "peaks", "assembly": "GRCh38"}, "max_rows": 50})

encode_get_experiment

Obtenir une expérience ENCODE par adhésion (par exemple "ENCSR000AKP"). Retourne un enregistrement de champ stable : test, cible, bioéchantillon ontology + résumé, description, laboratoire, projet de bourse, dates de libération/soumission, assemblages, nombres de répliques, type de réplication, dbxrefs, DOI et uuid. Les champs portails volatils (audits, analyses, statut interne) sont exclus.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("regulation", "encode_get_experiment", {"accession": "ENCSR000AKP"})

encode_get_file

Obtenez un fichier ENCODE par adhésion (p. ex. "ENCFF002JUR"). Retourne un enregistrement de champ stable: format, type/catégorie de sortie, essai, assemblage, jeu de données parent, reproductions biologiques, taille de fichier, md5sums, type d'exécution, longueur de lecture, laboratoire, date de création, téléchargement href et uuid.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("regulation", "encode_get_file", {"accession": "ENCFF002JUR"})

encode_get_biosample

Obtenez un bioéchantillon ENCODE par adhésion (par exemple: "ENCBS013JZP"). Retourne un enregistrement de champ stable : terme en ontologie + classification, organisme, résumé/description, source, donneur, traitements, modifications génétiques, stade de vie, âge, sexe, laboratoire, date de création, statut et uuid.

ChampTypeBesoins et contraintes
accessionchaîne de caractèresrequis
const result = await host.mcp("regulation", "encode_get_biosample", {"accession": "ENCBS013JZP"})

jaspar_get_matrix

Obtenez un profil de liaison JASPAR TF par id de matrice VERSIONED (par exemple : "MA0002.2"). Retourne l'enregistrement complet : matrice de fréquence de position (pfm), nom/classe/famille TF, espèce, type de données, références bibliographiques (pubmed/medline), URL du logo de la séquence. Nécessite un id en version ("MA0002.2", pas "MA0002") — utiliser jaspar_matrix_versions pour énumérer les versions. Les matrices en version sont immuables, donc les résultats sont reproductibles.

ChampTypeBesoins et contraintes
matrix_idchaîne de caractèresrequis
const result = await host.mcp("regulation", "jaspar_get_matrix", {"matrix_id": "MA0002.2"})

jaspar_matrix_versions

Lister toutes les versions d'un id de matrice de base JASPAR (par exemple "MA0002"). Renvoie chaque version publiée avec son matrix_id, son nom, sa collection et son URL — count-vérified. Utilisez pour épingler une version exacte avant jaspar_get_matrix, ou pour suivre comment un profil a changé dans les versions. Un id versionné ("MA0002.2") est accepté et réduit à sa base.

ChampTypeBesoins et contraintes
base_idchaîne de caractèresrequis
const result = await host.mcp("regulation", "jaspar_matrix_versions", {"base_id": "MA0002"})

jaspar_list_matrices

Rechercher/lister les profils de reliure JASPAR TF (le catalogue complet du profil). Filtres (tous optionnels): collecte ("CORE", "NON VALIDÉ"), tax_group ("vertébrés", "végétaux", ...), tax_id (NCBI taxonomy id, p.ex. 9606 pour les humains — c'est ainsi que vous filtrez par espèces; énumérer les ids avec jaspar_list_species), nom (nom TF exact, p.ex. "FOXA1"), recherche (texte libre), version="latest" (se limiter aux versions les plus récentes seulement). Le catalogue complet filtré est paginé et vérifié au compte; au plus les lignes de résumé max_rows sont retournées.

ChampTypeBesoins et contraintes
collectionchaîne de caractèresfacultatif
tax_groupchaîne de caractèresfacultatif
tax_identierfacultatif
namechaîne de caractèresfacultatif
searchchaîne de caractèresfacultatif
versionchaîne de caractèresfacultatif
max_rowsentierfacultatif; par défaut : 1000
const result = await host.mcp("regulation", "jaspar_list_matrices", {"tax_id": 9606, "collection": "CORE", "version": "latest", "max_rows": 200})

jaspar_list_species

Énumérer toutes les espèces avec des profils JASPAR (NCBI tax_id + nom); La liste complète est vérifiée. Utilisez les valeurs tax_id pour filtrer jaspar_list_matrices (p. ex. 9606 = Homo sapiens, 10090 = Mus musculus).

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("regulation", "jaspar_list_species", {})

jaspar_list_taxa

Lister tous les groupes taxonomiques JASPAR (vertébrés, plantes, champignons, insectes, ...); La liste complète est vérifiée. Utilisez les noms de groupe comme filtre tax_group de jaspar_list_matrices.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("regulation", "jaspar_list_taxa", {})

jaspar_list_collections

Lister toutes les collections JASPAR (CORE, UNVALIDATED, ...); La liste complète est vérifiée. Utilisez les noms de collection comme filtre de collecte de jaspar_list_matrices (CORE = profils curés, non redondants).

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("regulation", "jaspar_list_collections", {})

jaspar_list_releases

Lister toutes les versions de la base de données JASPAR (année, numéro de sortie, drapeau actif); La liste complète est vérifiée. Enregistrez la version active lors de la sélection des motifs pour la reproductibilité, ou vérifiez l'historique de la version avant de comparer les résultats des versions JASPAR.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("regulation", "jaspar_list_releases", {})

unibind_search_tfbs

Rechercher les ensembles de données UniBind ChIP-seq avec des prévisions TFBS de haute confiance (unibind.uio.no, sortie 2021; des interactions directes avec l'ADN-TF à partir d'ensembles de données ~10k pour les espèces 9). Chaque ensemble de données est triple (expérience, type de cellule, TF). Filtres (tous optionnels, combinés avec ET, à moins d'indication contraire): tf_name (symbole du gène, p.ex. "CTCF"), cell_line (titre UniBind verbeux — préférence search pour l'appariement flou), espèce (nom scientifique), collection ("Robust" = meilleur modèle / haute confiance, ou "Permissive"), jaspar_id (version, p.ex. "MA0139.1"), recherche (texte libre). total est le nombre exact de API's; au plus les lignes max_rows sont retournées (un préfixe stable).

ChampTypeBesoins et contraintes
tf_namechaîne de caractèresfacultatif
cell_linechaîne de caractèresfacultatif
specieschaîne de caractèresfacultatif
collectionchaîne de caractèresfacultatif; enum: ["Robust", "Permissive"]
jaspar_idchaîne de caractèresfacultatif
searchchaîne de caractèresfacultatif
max_rowsentierfacultatif; par défaut : 200
const result = await host.mcp("regulation", "unibind_search_tfbs", {"tf_name": "CTCF", "collection": "Robust", "max_rows": 50})

unibind_get_dataset

Obtenez un ensemble de données UniBind's detail: par modèle TFBS compte + URLs de fichiers. tf_id est la clé de l'ensemble de données "<identificateur>.<cell_line>.<TF>" tel que retourné par unibind_search_tfbs (par exemple "ENCSR000AUE.A549_lung_carcinome.CTCF") . Retourne le nom du TF, les identifiants source (ENCODE/GEO/GTRD), les lignes cellulaires, les conditions biologiques, les ids de matrice JASPAR, le nombre de pics ChIP-seq et une ligne par modèle de prédiction TFBS (DAMO/PWM/...) avec total_tfbs, les seuils de score/distance, la valeur de CentriMo ajustée et les URL de téléchargement BED/FASTA directes — utilisez ces URLs (pas un appel MCP) pour récupérer la liste complète du site.

ChampTypeBesoins et contraintes
tf_idchaîne de caractèresrequis
const result = await host.mcp("regulation", "unibind_get_dataset", {"tf_id": "ENCSR000AUE.A549_lung_carcinoma.CTCF"})

unibind_tfbs_in_region

Les sites de liaison TF chevauchant une région génomique (cartes UniBind 2021), desservis par le hubApi de l'UCSC contre les hubs de voie publique enregistrés par UniBind's (les propres REST API de l'UniBind's n'ont pas de point final de la région). Les coordonnées sont basées sur 0 à moitié ouvertes. génome: assemblage UCSC — moyeu robuste: hg38, mm10, ce11, dm6, danRer11, sacCer3, rn6, araTha1; Ajouts permissifs spo2 (pas de hg19 — levez d'abord). chrom: avec "chr" Préfixe. start/end: intervalle, fin-start <= 1,000,000 bp. HONEST-CAP: au plus les éléments 20,000 sont scannés par appel; region_scan_complete=false signifie que la région a plus de sites qu'on n'a scanné (flèche la fenêtre) et, avec tf_name set, les correspondances peuvent être manquantes. n_matching compte les sites scannés passant le filtre; retourné/tronqué décrire le bouchon max_sites.

ChampTypeBesoins et contraintes
genomechaîne de caractèresrequis
chromchaîne de caractèresrequis
startentierrequis
endentierrequis
tf_namechaîne de caractèresfacultatif
collectionchaîne de caractèresfacultatif; par défaut: "Robust"; enum: ["Robust", "Permissive"]
max_sitesentierfacultatif; par défaut : 2000
const result = await host.mcp("regulation", "unibind_tfbs_in_region", {"genome": "hg38", "chrom": "chr1", "start": 1000000, "end": 1010000, "collection": "Robust"})

Ressources de recherche

Afficher les opérations et les paramètres

search_grants

Possibilités de financement de Search Grants.gov via la recherche2 API (extraction complète et vérifiée au compte). Au moins un critère est requis (mot clé, opportunity_number, aln/CFDA, agences, éligibilités, funding_categories ou funding_instruments). opportunity_statuses par défaut pour ["prévu","posted"] (procédures actuelles); ajouter "fermé"/"archivé" pour les historiques. les agences prennent des codes comme ["HHS-NIH11"] (NIH), ["HHS-FDA"], ["NSF"]. Définissez count_only pour juste le nombre de succès + facettes; Les bouchons max_records ont retourné les enregistrements (la marche récupère toujours l'ensemble complet et les drapeaux tronqués).

ChampTypeBesoins et contraintes
keywordchaîne de caractèresfacultatif
opportunity_numberchaîne de caractèresfacultatif
alnchaîne de caractèresfacultatif
agenciestableau de la chaînefacultatif
opportunity_statusestableau de la chaînefacultatif
eligibilitiestableau de la chaînefacultatif
funding_categoriestableau de la chaînefacultatif
funding_instrumentstableau de la chaînefacultatif
count_onlybooléenfacultatif; par défaut : false
max_recordsentierfacultatif; par défaut : 100
include_facetsbooléenfacultatif; par défaut : true
const result = await host.mcp("research-resources", "search_grants", {"keyword": "cancer", "agencies": ["HHS-NIH11"], "max_records": 25})

search_antibodies

Recherche en texte intégral dans le Registre des anticorps (antibodyregistry.org, ~3.2M records). Correspondance basée sur les jetons avec le nom d'anticorps/cible/texte catalogique ("TP53" et "p53" sont des requêtes différentes). Avec la page omise, toutes les pages sont montées jusqu'à max_records ou le plafond de profondeur anonyme (les lignes au-delà de 500 offset ont besoin d'authentification en amont, marqués comme anonymous_limit_hit — jamais laissé tomber silencieusement). Passez une page 1 pour la recherche d'une seule page (page*page_size doit rester <= 500).

ChampTypeBesoins et contraintes
querychaîne de caractèresrequis
pageentierfacultatif
page_sizeentierfacultatif; par défaut : 100
max_recordsentierfacultatif; par défaut : 500
const result = await host.mcp("research-resources", "search_antibodies", {"query": "CD4", "max_records": 100})

get_antibody

Renseignez-vous sur les dossiers détaillés du Registre des anticorps pour une adhésion d'anticorps/RID. Accepte un nombre simple (" 3643095"), "AB_3643095" ou "RRID:AB_3643095". La route en amont est évaluée par une liste (une adhésion peut se faire à plusieurs enregistrements curés, p. ex. des duplicata multi-vendor). Un id inexistant donne record_count 0, pas une erreur.

ChampTypeBesoins et contraintes
antibody_idchaîne de caractèresrequis
const result = await host.mcp("research-resources", "get_antibody", {"antibody_id": "RRID:AB_3643095"})

find_antibodies_by_catalog

Trouvez les anticorps par numéro de catalogue du fournisseur (exacte, insensible à la casse). Implémenté comme une recherche en texte intégral plus une correspondance exacte côté client sur le numéro de catalogue (ou ses alternatives énumérées), parce que la route en amont colonne-filtre renvoie HTTP 500 pour chaque clé. Passez un nom de vendeur optionnel (exacte, insensible à la casse) pour réduire davantage les correspondances.

ChampTypeBesoins et contraintes
catalog_numberchaîne de caractèresrequis
vendorchaîne de caractèresfacultatif
page_sizeentierfacultatif; par défaut : 100
const result = await host.mcp("research-resources", "find_antibodies_by_catalog", {"catalog_number": "ab32572"})

get_antibody_registry_stats

Statistiques du registre des anticorps: nombre total d'anticorps et date de dernière mise à jour. Renvoie la charge utile en amont /api/datainfo.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("research-resources", "get_antibody_registry_stats", {})

BioMart

Afficher les opérations et les paramètres

list_marts

Liste disponible Ensembl BioMart mart (bases de données). BioMart organise les données comme MART -> DONNEES -> ATTRIBUTES/FILEURS; un nom de mart alimente list_datasets.

ChampTypeBesoins et contraintes
objetPas de champs; passer un objet vide.
const result = await host.mcp("biomart", "list_marts", {})

list_datasets

Énumérer les ensembles de données disponibles dans une mart donnée (p. ex. hsapiens_gene_ensembl pour les gènes humains). Un nom d'ensemble de données alimente les outils attribut/filtre/query.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
const result = await host.mcp("biomart", "list_datasets", {"mart": "ENSEMBL_MART_ENSEMBL"})

list_common_attributes

Énumérez les attributs couramment utilisés pour un ensemble de données (sous-ensemble de signaux élevés curés). Utilisez ceci avant list_all_attributes pour choisir les attributs pour get_data. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
const result = await host.mcp("biomart", "list_common_attributes", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl"})

list_all_attributes

Énumérez tous les attributs disponibles pour un ensemble de données, moins les homologues et les sondes de microarray (qui sont volumineux et rarement nécessaires). Peut être grand; préférence list_common_attributes d'abord. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
const result = await host.mcp("biomart", "list_all_attributes", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl"})

list_filters

Énumérez les filtres disponibles pour un ensemble de données. Filtres rétrécissent une requête get_data (par exemple: chromosome_name, biotype) et sont passés à get_data comme un dict filtres. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
const result = await host.mcp("biomart", "list_filters", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl"})

get_data

Exécuter une requête BioMart : récupérer les attributs demandés pour un ensemble de données, éventuellement restreint par des filtres. C'est le principal outil de récupération de données. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
attributestableau de la chaînerequis
filtersobjetfacultatif
const result = await host.mcp("biomart", "get_data", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl", "attributes": ["ensembl_gene_id", "external_gene_name", "chromosome_name"], "filters": {"chromosome_name": "Y", "biotype": "protein_coding"}})

get_translation

Traduire un seul identifiant d'un type d'attribut à un autre (p. ex. un symbole HGNC d'un ID génétique d'Ensembl) dans un ensemble de données. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
from_attrchaîne de caractèresrequis
to_attrchaîne de caractèresrequis
targetchaîne de caractèresrequis
const result = await host.mcp("biomart", "get_translation", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl", "from_attr": "hgnc_symbol", "to_attr": "ensembl_gene_id", "target": "TP53"})

batch_translate

Traduire de nombreux identifiants d'un type d'attribut à un autre en une seule requête, plus efficace que les appels get_translation répétés. mart est accepté pour la parité de signature mais ignoré; les touches de requête hors dataset.

ChampTypeBesoins et contraintes
martchaîne de caractèresrequis
datasetchaîne de caractèresrequis
from_attrchaîne de caractèresrequis
to_attrchaîne de caractèresrequis
targetstableau de la chaînerequis
const result = await host.mcp("biomart", "batch_translate", {"mart": "ENSEMBL_MART_ENSEMBL", "dataset": "hsapiens_gene_ensembl", "from_attr": "hgnc_symbol", "to_attr": "ensembl_gene_id", "targets": ["TP53", "BRCA1", "BRCA2"]})

ZINC

Afficher les opérations et les paramètres

zinc_search_by_id

Rechercher les composés purchasables dans ZINC22/ZINC20 par l'identificateur ZINC — répond " quel est ce composé et qui le vend". Batched: passez à 100 ids dans un seul appel plutôt que de nombreux appels à un seul id. Async en amont (soumettre + sondage); peut prendre jusqu'à timeout_s secondes.

ChampTypeBesoins et contraintes
zinc_ids['Ficelle', 'array']requis
max_resultsentierfacultatif; par défaut : 50
timeout_sNumérofacultatif; par défaut : 25
const result = await host.mcp("zinc", "zinc_search_by_id", {"zinc_ids": ["ZINC000000000012"]})

zinc_search_by_smiles

Recherche ZINC22's espace chimique purchasable par structure — répond "ce que les composés purchasables ressemblent à ce SMILES". Il s'agit des deux outils exacts et analogiques (similarity) : CartBlanche22 expose un paramètre structure-recherche dont le paramètre dist s'étend exactement à travers divers, donc il n'y a délibérément pas d'outil de recherche distinct. La requête ZINC la plus lente — élèvez progressivement dist plutôt que de commencer à se détendre.

ChampTypeBesoins et contraintes
smileschaîne de caractèresrequis
distentierfacultatif; par défaut : 0
adistentierfacultatif
max_resultsentierfacultatif; par défaut : 50
timeout_sNumérofacultatif; par défaut : 25
const result = await host.mcp("zinc", "zinc_search_by_smiles", {"smiles": "CC(=O)Oc1ccccc1C(=O)O", "dist": 2})

zinc_search_by_supplier

Résoudre les numéros de catalogue des fournisseurs aux composés ZINC — répond " quelle substance ZINC est ce code fournisseur, et ce que ' est sa structure". Emballé: jusqu'à 100 code fournisseur par appel. Async en amont (soumettre + sondage).

ChampTypeBesoins et contraintes
supplier_codes['Ficelle', 'array']requis
max_resultsentierfacultatif; par défaut : 50
timeout_sNumérofacultatif; par défaut : 25
const result = await host.mcp("zinc", "zinc_search_by_supplier", {"supplier_codes": ["MCULE-2311834287"]})

zinc_random_sample

Tirez un échantillon aléatoire de composés purchasables de ZINC22 — pour les ponts de contrôle de bâtiments, les bases de propriétés ou les ensembles de leurres. count double comme cet outil's max_results; Le rappel d'un échantillon frais. Async en amont (soumettre + sondage).

ChampTypeBesoins et contraintes
countentierfacultatif; par défaut : 50
subsetchaîne de caractèresfacultatif
timeout_sNumérofacultatif; par défaut : 25
const result = await host.mcp("zinc", "zinc_random_sample", {"count": 25, "subset": "lead-like"})

zinc_get_3d

Localiser les structures 3D prêtes à l'amarrage pour les composés ZINC. ZINC22 expédie des conformers 3D pré-générés (DOCK .db2.gz, .mol2.gz, .sdf.gz) dans son dépôt de fichiers, organisés par tranche — cet outil résout chaque id à sa tranche et retourne les emplacements de dépôt à télécharger à partir de pour le prép d'arrimage (DOCK6, AutoDock Vina, etc.). Max 50 ids par appel (3D récupération est un travail par composé). Async en amont (soumettre + sondage).

ChampTypeBesoins et contraintes
zinc_ids['Ficelle', 'array']requis
timeout_sNumérofacultatif; par défaut : 25
const result = await host.mcp("zinc", "zinc_get_3d", {"zinc_ids": ["ZINC000000000012"]})

Exemple d'enregistrement des réponses

Le exemples d'enregistrements de réponses comprend des entrées exactes, des extraits de réponse plafonnés et des résultats par opération. Distinguer un enregistrement retourné, une correspondance vide et une requête ratée. Les résultats peuvent être des métadonnées, des schémas ou des identifiants; Vérifiez les champs sources et les drapeaux d'exhaustivité avant de les utiliser dans votre recherche.