Skip to content

Latest commit

 

History

History
69 lines (56 loc) · 2.27 KB

File metadata and controls

69 lines (56 loc) · 2.27 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Added

  • Initial documentation improvements

0.1.0 - 2025-10-27

Added

  • Initial public release
  • MCP server with stdio and HTTP transports
  • Five core tools for UniProt data access:
    • fetch_entry: Retrieve complete protein entries
    • get_sequence: Fetch protein sequences
    • search_uniprot: Full-text search with advanced filters
    • map_ids: Convert between 200+ database identifier types
    • fetch_entry_flatfile: Access historical entry versions
  • Two MCP resources:
    • uniprot://uniprotkb/{accession}: Raw entry JSON
    • uniprot://help/search: Search documentation
  • One MCP prompt:
    • "Summarize Protein": Generate structured protein summaries
  • Retry logic with exponential backoff for API resilience
  • Progress reporting for long-running ID mapping jobs
  • CORS support for browser-based clients
  • Prometheus metrics endpoint
  • Comprehensive test suite with 77% coverage
  • Type-safe Pydantic models for all responses
  • Published to PyPI as uniprot-mcp
  • Published to MCP Registry as io.github.josefdc/uniprot-mcp

Infrastructure

  • CI/CD with GitHub Actions (lint, type-check, test)
  • Automated PyPI publishing on version tags
  • Automated MCP Registry updates
  • Development tooling with uv, ruff, mypy
  • VCR-based integration tests

Documentation

  • Comprehensive README with quickstart and examples
  • Contributing guidelines
  • Code of Conduct (Contributor Covenant 2.1)
  • Security policy
  • Developer documentation
  • Registry publishing guide

Release Process

To create a new release:

  1. Update version in pyproject.toml and server.json
  2. Update this CHANGELOG with release notes
  3. Commit changes: git commit -m "chore: bump version to X.Y.Z"
  4. Create and push tag: git tag vX.Y.Z && git push origin vX.Y.Z
  5. GitHub Actions will automatically:
    • Build and publish to PyPI
    • Update MCP Registry
    • Create GitHub Release

Version History