Genomic Intelligence
REMOTE · MCP.GENOMICINTELLIGENCE.AI · SCANNED AUG 3
Hosted DNA language models: promoter, splice, enhancer, chromatin, expression, annotation
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →
Endpoint Security57
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 15 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability79
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 3033 tokens (~144/item across 21 items; 15 tools + 6 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
- Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · mcp.genomicintelligence.ai
claude mcp add --transport http ai-genomicintelligence-genomic-intelligence https://mcp.genomicintelligence.ai/mcp
[mcp_servers.ai-genomicintelligence-genomic-intelligence] url = "https://mcp.genomicintelligence.ai/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ai-genomicintelligence-genomic-intelligence": {
"type": "remote",
"url": "https://mcp.genomicintelligence.ai/mcp",
"enabled": true
}
}
} openclaw mcp add ai-genomicintelligence-genomic-intelligence --url https://mcp.genomicintelligence.ai/mcp --transport streamable-http
mcp_servers:
ai-genomicintelligence-genomic-intelligence:
url: "https://mcp.genomicintelligence.ai/mcp" {
"mcpServers": {
"ai-genomicintelligence-genomic-intelligence": {
"type": "http",
"url": "https://mcp.genomicintelligence.ai/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Jul 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 30 Jul 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 28 Jul 26 +1
- Stability: unverified → 0.03 ▲ functional
- 27 Jul 26 64
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Probed https://mcp.genomicintelligence.ai/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.genomicintelligence.ai | CN=Amazon RSA 2048 M01,O=Amazon,C=US | 3 Jun 2026 | 17 Dec 2026 | RSA 2048 | SHA256-RSA | cb0c066f4d2d5a0ba93476b9712d159 |
| SANs: mcp.genomicintelligence.ai | ||||||
| CN=Amazon RSA 2048 M01,O=Amazon,C=US (CA) | CN=Amazon Root CA 1,O=Amazon,C=US | 23 Aug 2022 | 23 Aug 2030 | RSA 2048 | SHA256-RSA | 77312380b9d6688a33b1ed9bf9ccda68e0e0f |
| CN=Amazon Root CA 1,O=Amazon,C=US (CA) | CN=Starfield Services Root Certificate Authority - G2,O=Starfield Technologies\, Inc.,L=Scottsdale,ST=Arizona,C=US | 25 May 2015 | 31 Dec 2037 | RSA 2048 | SHA256-RSA | 67f944a2a27cdf3fac2ae2b01f908eeb9c4c6 |
DNSSEC insecure
Validation of mcp.genomicintelligence.ai. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| ai. | present | 3799 | 8 | Verified |
| genomicintelligence.ai. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.genomicintelligence.ai/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.genomicintelligence.ai/mcp | HTTPS enforced | 301 | https://mcp.genomicintelligence.ai:443/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
fetch_ensembl_sequence ~142
Fetch a gene's reference sequence from Ensembl and store it. Returns a handle ({ref, name, length, preview, ...}). Pass the `ref` to predict_* tools — the bases stay server-side. For expression, use fetch_gene_for_expression instead (it prepares the TSS-centred window that model needs).
| Name | Type | Req | Description |
|---|---|---|---|
| flank_bp | integer | — | Extra bp added on each side of the gene body. |
| gene | string | yes | Gene symbol (e.g. 'TP53') or Ensembl ID. |
| species | string | — | Species name, e.g. 'human', 'mouse'. |
Structured output declared, but exposes no named fields.
No examples provided.
fetch_gene_for_expression ~88
Fetch a gene's sequence prepared for expression prediction. Resolves the gene's TSS via Ensembl and returns the exact TSS-centred window the expression model needs, as a handle to pass to predict_expression(sequence_ref=...).
| Name | Type | Req | Description |
|---|---|---|---|
| gene | string | yes | Gene symbol (e.g. 'HBB'). |
| species | string | — | Species name. |
Structured output declared, but exposes no named fields.
No examples provided.
fetch_region ~264
Fetch a genomic region by coordinates from Ensembl and store it. For "find the genes in chr8:127,680,000-127,800,000"-style requests: resolves a coordinate range to reference sequence and returns a handle ({ref, name, length, ...}) to pass to find_genes / predict_* — the bases stay server-side. Plus strand by default, which is what the gene-finder expects. For a gene by name use fetch_ensembl_sequence; for expression use fetch_gene_for_expression.
| Name | Type | Req | Description |
|---|---|---|---|
| flank_bp | integer | — | Extra bp added on each side of the region. |
| region | string | yes | Genomic coordinates, e.g. 'chr8:127,680,000-127,800,000'. Commas, en/em dashes and '..' are accepted; the 'chr' prefix is optional. |
| species | string | — | Species name, e.g. 'human', 'mouse'. |
| strand | integer | — | 1 = plus (default), -1 = minus. find_genes (gene finding) is plus-oriented — keep 1 for annotation; use -1 only for a strand-sensitive task on a known minus-strand locus. |
Structured output declared, but exposes no named fields.
No examples provided.
find_genes ~466
Find genes (transcript intervals) in a genomic region (async, ~8-25s). Gene-finding: detects transcript boundaries (TSS + PolyA) and returns one interval per predicted transcript — start/end, strand, a confidence score, and predicted TSS/PolyA positions (BED-style feature intervals, not free-text notes). Use this for "what genes are here", "find / locate genes", or "annotate this region". Each transcript also carries its type (mRNA/lnc_RNA) and internal exon/intron/CDS structure in `exons`/`introns`/`cds` arrays, plus a browser-ready GFF3 track in `data.formats.gff3`. To get each gene's *expression* from a raw region, use find_genes_and_predict_expression instead — expression needs a per-gene TSS window, so predict_expression cannot run on a whole region. Submits an async job internally. With wait=True (default), blocks and streams progress, then returns the result {data, meta} — it never returns a job_id on this path. (If a generous block ceiling is exceeded it returns a timeout error, not a job handle.) With wait=False (detached), returns {data: {job_id, status: 'submitted'}} immediately — poll it with get_job.
| Name | Type | Req | Description |
|---|---|---|---|
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
| wait | boolean | — | Default True: block and stream progress until the result is ready. Set False for detached mode — returns a job_id immediately to poll with get_job. |
Structured output declared, but exposes no named fields.
No examples provided.
find_genes_and_predict_expression ~377
Find genes in a sequence, then predict each gene's expression (composite). Server-side chaining in ONE call: finds genes (transcript intervals, with their TSS) in the sequence, then predicts expression off each discovered TSS in the given experimental context. This is the right tool whenever you want expression for a raw region or sequence — e.g. "find the genes in chr8:… and predict their expression in K562". You cannot call predict_expression on a whole region, because it needs a single per-gene 9,198 bp TSS window; this tool handles that for you. Runs async internally at every size (the annotate stage is slow even for small inputs), so progress always streams. With wait=True (default), blocks and streams progress, then returns the result {data, meta} — it never returns a job_id on this path. With wait=False (detached), returns {data: {job_id, status: 'submitted'}} immediately — poll it with get_job. Because it ends in expression, `description` (cell type / assay context) is REQUIRED.
| Name | Type | Req | Description |
|---|---|---|---|
| description | — | — | REQUIRED experimental context — cell type / assay / conditions (e.g. 'K562 cell line'), applied to every found gene. The workflow ends in expression, which the API rejects without it. |
| sequence | — | — | DNA bases. Mutually exclusive with sequence_ref. |
| sequence_name | string | — | Label echoed back. |
| sequence_ref | — | — | Stored sequence handle. Mutually exclusive with sequence. |
| wait | boolean | — | Default True: block and stream progress until the result is ready. Set False for detached mode — returns a job_id immediately to poll with get_job. |
Structured output declared, but exposes no named fields.
No examples provided.
get_job ~69
Poll an async job once. Returns the {data, meta} result if complete, a progress envelope if still running, or an error envelope if it failed.
| Name | Type | Req | Description |
|---|---|---|---|
| job_id | string | yes | Job id from an async tool (find_genes, find_genes_and_predict_expression). |
Structured output declared, but exposes no named fields.
No examples provided.
list_jobs ~39
List the caller's recent async jobs (also available as gi://jobs/recent).
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | — | Max number of recent jobs to return. |
Structured output declared, but exposes no named fields.
No examples provided.
list_models ~78
List available models for a task. Use to discover model ids before passing one as the `model` argument to a predict tool. The same catalog is also available as the resource `gi://models`.
| Name | Type | Req | Description |
|---|---|---|---|
| task | string | yes | Task name. One of: promoter, splice, enhancer, chromatin, expression, annotation. |
Structured output declared, but exposes no named fields.
No examples provided.
load_demo_sequence ~161
Load a bundled demo reference sequence and return a handle. The server ships one curated, task-correct positive control per task (list them via the gi://sequences resource) — e.g. `expression_hbb_k562` is a ready-to-use K562 expression window for predict_expression. Stores the demo and returns a handle to pass to a predict_* tool: no Ensembl fetch, no quota. Handy for smoke-testing a prediction end-to-end.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Demo name from gi://sequences, e.g. 'expression_hbb_k562', 'promoter_tp53', or 'annotation_hbb_chr11'. A gene token like 'TP53' also resolves. |
Structured output declared, but exposes no named fields.
No examples provided.
predict_chromatin ~146
Chromatin annotation across 919 features (G0 DeepSEA). Up to 500,000 bp.
| Name | Type | Req | Description |
|---|---|---|---|
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
Structured output declared, but exposes no named fields.
No examples provided.
predict_enhancer ~143
Predict enhancer activity (G0 DeepSTARR). Up to 500,000 bp.
| Name | Type | Req | Description |
|---|---|---|---|
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
Structured output declared, but exposes no named fields.
No examples provided.
predict_expression ~287
Predict a gene's expression from a TSS-centred input window. Expression is cell-type-specific, so `description` (cell type / assay context, e.g. 'K562 cell line') is REQUIRED — the API rejects requests without it. Requires exactly 9,198 bp centred on the TSS; call fetch_gene_for_expression(gene) to get a correctly-prepared handle. For a raw region or whole gene where you don't already have that window, use find_genes_and_predict_expression (it finds the genes for you).
| Name | Type | Req | Description |
|---|---|---|---|
| description | — | — | REQUIRED experimental context — cell type / assay / conditions (e.g. 'K562 cell line', 'liver tissue'). Expression is cell-type-specific; the API rejects requests without it. |
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
Structured output declared, but exposes no named fields.
No examples provided.
predict_promoter ~164
Predict promoter regions (G0). Up to 500,000 bp. Returns the {data, meta} envelope: data.regions lists predicted promoters with start/end/score.
| Name | Type | Req | Description |
|---|---|---|---|
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
Structured output declared, but exposes no named fields.
No examples provided.
predict_splice ~145
Predict splice donor/acceptor sites (G0 BigBird). Up to 500,000 bp.
| Name | Type | Req | Description |
|---|---|---|---|
| model | — | — | Optional model id; omit for the task default. See list_models. |
| sequence | — | — | DNA bases A/C/G/T/N (case-insensitive). Mutually exclusive with `sequence_ref`. |
| sequence_name | string | — | Label echoed back in the response (ignored when `sequence_ref` is used). |
| sequence_ref | — | — | Handle (seq_…) from any acquisition tool (fetch_ensembl_sequence, fetch_region, fetch_gene_for_expression, load_demo_sequence, load_local_fasta, store_inline_sequence). Mutually exclusive with `seque… |
Structured output declared, but exposes no named fields.
No examples provided.
store_inline_sequence ~158
Store a human-pasted sequence and return a handle to re-use it. For a sequence you've already pasted into the conversation, this gives back a short handle so you can run several tasks on it without re-pasting the bases in each predict_* call. Note that the full sequence still passes through the LLM on THIS call — it does not save context on its own. For large sequences, prefer fetch_ensembl_sequence / fetch_gene_for_expression / load_local_fasta, which acquire the bases server-side and never round-trip them.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | — | Label for this sequence. |
| sequence | string | yes | DNA bases to store and get a handle for. |
Structured output declared, but exposes no named fields.
No examples provided.