Skip to main content
Glama

Computase

PyPI Python CI bio.tools

Computase is a local Python library for small, well-defined DNA and RNA sequence calculations:

  • nucleotide composition, GC bounds, and GC skew

  • DNA or RNA reverse complements

  • translation with selectable NCBI genetic-code tables

  • six-frame candidate ORF enumeration

  • IUPAC motif searches on either strand

The Python API is the primary interface. The same operations are also available through the optional Model Context Protocol (MCP) interface for local agent workflows. Computation runs locally; input sequences are not sent to a service.

Install

For most Python environments:

pip install computase

For a project managed with uv:

uv add computase

Python 3.11 or newer is required.

Related MCP server: ESMfold MCP Server

Quick start

from computase.seq import translate_sequence

sequence = ">synthetic-cds\nATGGCCATTGTAATGGGCCGCTGAAAGGGTGCCCGATAG\n"
result = translate_sequence(sequence, table_id=1)

print(result.model_dump())

Representative output (computase_version matches the installed release):

{'computase_version': '<installed version>', 'parameters': {'table_id': 1, 'stop_handling': 'translate-through'}, 'protein': 'MAIVMGR*KGAR*', 'table_id': 1, 'table_name': 'Standard', 'stop_handling': 'translate-through', 'codon_count': 13, 'stopped_early': False}

Results are typed Pydantic models. They record the Computase version and effective parameters, but never echo the full input sequence.

See the Python examples for concise, runnable examples of all five sequence operations.

Capabilities and validation

Scientific task

Python function

Contract and validation evidence

Composition, GC content bounds, and GC skew

summarize_sequence

Preserves IUPAC uncertainty; checked against the GenBank HBB coding sequence and composition/property invariants

DNA/RNA reverse complement

reverse_complement

Preserves the input alphabet and IUPAC symbols; checked against an M13 reference sequence and the reverse-complement involution property

NCBI genetic-code translation

translate_sequence

Uses a selected NCBI table and requires complete codons; checked against an NCBI translation example and table-specific codons

Six-frame candidate ORF enumeration

enumerate_orfs

Reports forward-reference coordinates and explicit start, stop, and nesting policies; checked with synthetic fixtures spanning all six frames and coordinate round trips

IUPAC motif search

scan_motif

Supports ambiguous symbols, overlapping matches, and either strand; checked against the pUC19 EcoRI site and interval/property tests

These checks establish the documented conventions and regression boundaries; they do not establish correctness for every biological interpretation or use case. If a result differs from an independent reference, use the scientific correctness report with a minimized, non-sensitive sequence.

Scientific scope and conventions

  • Inputs are raw nucleotide strings or a single FASTA record, not multi-record files.

  • Coordinates are 0-based and end-exclusive on the normalized forward reference, after FASTA headers and whitespace are removed.

  • Strand is reported separately; normalized_sequence[start:end] reproduces each reported forward span.

  • ORFs are sequence candidates, not gene predictions.

  • IUPAC GC bounds preserve uncertainty rather than assigning probabilities.

  • Sequence length is capped at 5,000,000 nucleotides; motif and result limits are enforced.

  • Computase 0.1.x does not fetch records, align sequences, or annotate genes.

Optional MCP interface

stdio

With uv installed, uvx can run the MCP server without installing Computase into the current environment:

{
  "mcpServers": {
    "computase": {
      "command": "uvx",
      "args": ["computase"]
    }
  }
}

If Computase was installed with pip into an environment available to the MCP client, use computase as the command and omit the arguments. For a uv-managed project, run uv run computase from the project root; configure the MCP client with uv as the command and ["run", "computase"] as the arguments.

The five tools are computase_summarize_sequence, computase_reverse_complement, computase_translate_sequence, computase_enumerate_orfs, and computase_scan_motif.

Streamable HTTP

uvx computase --transport streamable-http --host 127.0.0.1 --port 8000

Connect an MCP client to http://127.0.0.1:8000/mcp. HTTP binds to localhost by default.

Do not expose the Computase HTTP server directly to a public network. Non-loopback deployment requires a separately managed TLS boundary that authenticates every request and enforces request-size, concurrency, and rate limits.

Companion Skill

The repository and source distribution include a Computase companion Skill that teaches agents when and how to choose the five operations. Prefer the Computase MCP tools when configured; otherwise the Skill can run an isolated uv fallback that resolves Computase without mutating the active environment. Its usage examples cover MCP, runner, and Python workflows. These Skill files are not installed by the Python wheel.

Install the Skill into a supported agent with:

npx skills add madhusudan-kulkarni/computase --skill computase

skills.sh indexes public repositories from install telemetry. There is no separate submission form.

Development

Use uv sync --locked --extra dev, then run:

uv lock --check
uv run --locked ruff format --check src tests evaluations scripts skills/computase/scripts
uv run --locked ruff check src tests evaluations scripts skills/computase/scripts
uv run --locked mypy src tests evaluations scripts skills/computase/scripts
uv run --locked pytest -q
uv run --locked python -m evaluations.runner

See CONTRIBUTING.md for reference-vector requirements.

Roadmap

See ROADMAP.md for planned capabilities, including melting temperature calculations, restriction digestions, and a client-side WebAssembly interface.

Citation

If Computase contributes to your work, cite the software metadata in CITATION.cff. GitHub also exposes this through Cite this repository. Computase is also registered on bio.tools.

License

Computase is licensed under the MIT License.

Available Tools

5 tools
computase_enumerate_orfsEnumerate candidate ORFsA
Read-onlyIdempotent

Enumerate bounded candidate ORFs across all six reading frames.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequenceYesRaw nucleotide sequence or one FASTA record; IUPAC codes are accepted. The normalized sequence is limited to 5,000,000 nucleotides.
table_idNoNCBI genetic-code table identifier.
max_resultsNoMaximum returned candidates.
require_stopNoRequire an in-frame terminal stop codon.
start_codonsNoAllowed start-codon policy.table-starts
min_length_ntNoMinimum nucleotide span including stop.
include_nestedNoReport starts nested before the same stop.

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNoScientific interpretation boundary.
orfsYesCandidate ORFs in deterministic coordinate order.
truncatedYesWhether candidates were omitted by max_results.
parametersNoEffective operation parameters, excluding the input sequence.
total_foundYesTotal candidates found before result limiting.
computase_versionNoComputase version used for the computation.
coordinate_systemNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds useful behavioral context by specifying that ORFs are 'bounded' and that enumeration covers 'all six reading frames,' going beyond what annotations alone convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that leads with the action and resource, then adds the critical six-frame scope. There is zero redundant wording and every word contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a rich input schema with full parameter documentation and an output schema, so the one-sentence description is sufficient for selection and basic invocation. It does not explain the exact meaning of 'bounded,' but the schema's require_stop, max_results, and min_length_nt parameters clarify that concept.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each of the 7 parameters is already well documented with types, defaults, and constraints. The description adds no parameter-specific meaning, but it does not need to because the schema carries that burden.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Enumerate') and a specific resource ('bounded candidate ORFs'), and adds the important scope detail 'across all six reading frames.' This clearly distinguishes the tool from siblings like translate_sequence or scan_motif, which perform different biological analyses.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear operational context: if the task is to enumerate candidate ORFs in all six reading frames, this is the tool to use. It does not explicitly list exclusions or alternatives, but the sibling names are distinct enough that an agent can infer when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

computase_reverse_complementReverse complementA
Read-onlyIdempotent

Compute an IUPAC-aware DNA or RNA reverse complement.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequenceYesRaw nucleotide sequence or one FASTA record; IUPAC codes are accepted. The normalized sequence is limited to 5,000,000 nucleotides.

Output Schema

ParametersJSON Schema
NameRequiredDescription
lengthYesNormalized input sequence length.
parametersNoEffective operation parameters, excluding the input sequence.
sequence_typeYesDetected nucleotide alphabet.
computase_versionNoComputase version used for the computation.
reverse_complementYesReverse complement in the same DNA or RNA alphabet.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that IUPAC codes are handled and both DNA and RNA are supported, but it does not disclose edge-case behavior such as FASTA header handling or output formatting. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every phrase contributes meaning: 'Compute,' 'IUPAC-aware,' 'DNA or RNA,' and 'reverse complement.'

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, schema-backed, annotation-covered read-only transformation with an output schema, the description is sufficient. An agent has everything needed to invoke it correctly: input type, molecule scope, alphabet handling, and safety profile are all covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents the accepted formats, IUPAC support, and the 5,000,000-nucleotide cap. The tool description adds only that the input is DNA or RNA, which is marginal beyond the schema's 'nucleotide sequence' wording.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the exact operation ('Compute'), the target resource ('reverse complement'), and the scope ('DNA or RNA', 'IUPAC-aware'). This clearly distinguishes it from the sibling tools (summarize, translate, enumerate ORFs, scan motif), so an agent can immediately identify the right tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance about when to use this tool versus the sibling tools, nor any exclusions. However, the operation is so specific that the intended usage is strongly implied: use it whenever a DNA or RNA reverse complement is needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

computase_scan_motifScan motifA
Read-onlyIdempotent

Scan an IUPAC motif on the forward, reverse, or both strands.

ParametersJSON Schema
NameRequiredDescriptionDefault
motifYesIUPAC nucleotide pattern.
strandNoStrand orientation to scan.forward
sequenceYesRaw nucleotide sequence or one FASTA record; IUPAC codes are accepted. The normalized sequence is limited to 5,000,000 nucleotides.
max_matchesNoMaximum returned sites.
overlappingNoReport overlapping sites.

Output Schema

ParametersJSON Schema
NameRequiredDescription
motifYesNormalized IUPAC motif.
strandYesRequested strand policy.
matchesYesMotif occurrences in coordinate order.
truncatedYesWhether occurrences were omitted by max_matches.
parametersNoEffective operation parameters, excluding the input sequence.
total_foundYesTotal occurrences before result limiting.
computase_versionNoComputase version used for the computation.
coordinate_systemNo

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the description does not need to restate safety. It adds the strand-orientation behavior but does not disclose details like match truncation, overlapping behavior, or edge cases; these are left to the schema and output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word earns its place, and the core action and scope are presented clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema, full parameter documentation, and safety annotations, the description is mostly sufficient. The only gap is the lack of explicit guidance about when to choose this tool over siblings, which is a minor omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all five parameters. The description mentions motif and strands but adds no semantic value beyond what the parameter descriptions already provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action ('Scan'), a specific input type ('IUPAC motif'), and a clear scope ('forward, reverse, or both strands'). This clearly distinguishes it from sibling tools like reverse-complementing, translating, or summarizing sequences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: an agent can infer this tool is for finding motif occurrences rather than for sequence transformation or summarization. However, there is no explicit when-to-use/when-not-to-use guidance or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

computase_summarize_sequenceSummarize sequenceA
Read-onlyIdempotent

Summarize composition, GC uncertainty, and GC skew.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequenceYesRaw nucleotide sequence or one FASTA record; IUPAC codes are accepted. The normalized sequence is limited to 5,000,000 nucleotides.

Output Schema

ParametersJSON Schema
NameRequiredDescription
lengthYesNormalized sequence length.
gc_skewYesConcrete-base (G-C)/(G+C), or null when no concrete G/C exists.
gc_percentYesGC percentage over residues with determinate GC status.
parametersNoEffective operation parameters, excluding the input sequence.
compositionYesCounts for every residue present.
dinucleotidesYesCounts of overlapping adjacent residue pairs.
sequence_typeYesDetected nucleotide alphabet.
gc_max_percentYesMaximum possible GC percentage under IUPAC resolutions.
gc_min_percentYesMinimum possible GC percentage under IUPAC resolutions.
ambiguous_countYesNumber of non-ACGT or non-ACGU IUPAC residues.
computase_versionNoComputase version used for the computation.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the output metrics (composition, GC uncertainty, GC skew) but does not describe behavior such as normalization or how input limits are handled beyond what the schema already states. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundant restating of the title. Every word adds value by naming the specific analysis outputs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the single parameter, rich annotations, and the presence of an output schema, the description is largely complete. It names the key computed metrics, and the output schema covers return details. It falls slightly short only by not addressing usage context relative to siblings, but this is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the one required parameter 'sequence' has a descriptive schema entry including accepted inputs and length limits. The tool description adds no additional meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Summarize') with a clear resource and names three concrete outputs: composition, GC uncertainty, and GC skew. This distinguishes it from siblings like reverse_complement or translate_sequence, which perform transformations rather than summary statistics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus the sibling tools. The purpose implies it is for sequence summary statistics rather than transformations or motif scanning, but no when-to-use or when-not-to-use conditions are stated, leaving the agent to infer selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

computase_translate_sequenceTranslate sequenceA
Read-onlyIdempotent

Translate complete codons with a selected NCBI genetic code.

ParametersJSON Schema
NameRequiredDescriptionDefault
sequenceYesRaw nucleotide sequence or one FASTA record; IUPAC codes are accepted. The normalized sequence is limited to 5,000,000 nucleotides.
table_idNoNCBI genetic-code table identifier.
stop_handlingNoStop-codon handling policy.translate-through

Output Schema

ParametersJSON Schema
NameRequiredDescription
proteinYesTranslated protein, with stops represented as '*'.
table_idYesNCBI genetic-code table identifier.
parametersNoEffective operation parameters, excluding the input sequence.
table_nameYesPrimary NCBI genetic-code table name.
codon_countYesNumber of complete input codons.
stop_handlingYesEffective stop-codon handling policy.
stopped_earlyYesWhether translation was truncated at an encountered stop codon.
computase_versionNoComputase version used for the computation.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds some behavioral context by restricting translation to complete codons and allowing a selectable genetic-code table, but it leaves undefined edge behaviors like partial trailing codons or stop-codon outcomes, which are only implied by the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler. It front-loads the action ('Translate complete codons') and includes the key qualifier ('selected NCBI genetic code'), making it appropriately sized for a straightforward operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The rich input schema, output schema, and annotations carry most of the operational details, making the description adequate for invoking the tool. However, it is slightly incomplete because it does not position the tool against the related ORF-enumeration sibling or clarify partial-codon handling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so sequence, table_id, and stop_handling are already fully documented. The description adds little beyond restating the genetic-code selection, so the schema-based baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Translate') and resource ('complete codons'), with a meaningful qualifier ('selected NCBI genetic code'). This clearly distinguishes the tool from siblings such as reverse_complement or scan_motif, and 'complete codons' helps separate it from ORF enumeration.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the intended use—translating a nucleotide sequence with a chosen genetic code—but it does not explicitly say when to choose this tool over computase_enumerate_orfs or any other sibling. There is no when-not-to-use guidance or mention of alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.2
    • Changedcomputase_enumerate_orfs2 fields changed
      • changedOutput schema / $defs / Orf / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
      • changedOutput schema / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
    • Changedcomputase_reverse_complement1 field changed
      • changedOutput schema / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
    • Changedcomputase_scan_motif2 fields changed
      • changedOutput schema / $defs / MotifMatch / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
      • changedOutput schema / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
    • Changedcomputase_summarize_sequence1 field changed
      • changedOutput schema / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
    • Changedcomputase_translate_sequence1 field changed
      • changedOutput schema / properties / computase_version / default
        Previous value: -"0.1.1"New value: +"0.1.2"
  2. 5 tool updatesv0.1.1
    • First observedcomputase_enumerate_orfs
    • First observedcomputase_reverse_complement
    • First observedcomputase_scan_motif
    • First observedcomputase_summarize_sequence
    • First observedcomputase_translate_sequence

TDQS

A4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct operation: summarization, reverse complement, translation, ORF enumeration, and motif scanning. There is no functional overlap or ambiguity between them.

Naming Consistency5/5

All tools follow a consistent snake_case verb_noun pattern with the same computase_ prefix. The naming is uniform and predictable across the entire set.

Tool Count5/5

Five tools form a compact, purposeful toolkit for common sequence analysis tasks. Each tool adds meaningful capability without bloat or triviality.

Completeness4/5

The server covers core sequence manipulation and analysis workflows: composition stats, complementing, translation, ORF detection, and motif scanning. Minor gaps such as restriction enzyme analysis or format conversion exist, but the main stated domain is well served.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural language interaction for scRNA-Seq analysis including preprocessing, clustering, and visualization using the CellRank library. It allows users and agents to perform complex genomic data tasks through standard MCP clients and frameworks.
    2
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables protein sequence analysis and structure prediction by extracting ESM-2 embeddings and batch processing FASTA files via Docker. It provides tools for large-scale embedding extraction, job monitoring, and model management within an MCP-compatible environment.
    -
  • F
    license
    C
    quality
    D
    maintenance
    Exposes a local biomedical literature pipeline as MCP tools for automated research workflows. Enables literature search, open-access paper retrieval, and draft generation for biomedical and pathology domains through standard MCP clients.
    6
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables querying Ensembl genomic data including gene lookup, sequence retrieval, homology, variation, and variant effect prediction via MCP tools.
    14 npm
    MIT