Skip to main content

Computase Logo

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.

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.

Release files for computase 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for computase 0.1.2
File Size Uploaded
computase-0.1.2.tar.gz 410.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for computase 0.1.2
File Interpreter ABI Platform
computase-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 431.3 kB

Release files / computase-0.1.2.tar.gz

Download URL computase-0.1.2.tar.gz
Size 410.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0d0b65c2d7847d9fb6857122d1ac501ed894e4472793e7ea361512a353e5800e
BLAKE2b-256 checksum
How to use checksums
2cd160521d9035a0874d672ea9df89b8369ca24a9695283662eddc5d9142d001
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / computase-0.1.2-py3-none-any.whl

Download URL computase-0.1.2-py3-none-any.whl
Size 21.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1794652af81c2d23ed29f2aeeb4080a390d77accda848de39ca928ddef1bb18c
BLAKE2b-256 checksum
How to use checksums
dbb91b8ddf99d522f8bcf4b2105032edb893e9e4dda1b8ce2505b5be5b37e9df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page