Skip to main content

FastMCP-based tool for writing prompts against data in the NMDC (National Microbiome Data Collaborative) database

Project description

NMDC MCP

A fastmcp-based tool for writing prompts against data in the NMDC database.

Installation

You can install the package from source using uv:

uv sync

Usage

You can use the CLI:

nmdc-mcp

Or import in your Python code:

from nmdc_mcp.main import create_mcp

mcp = create_mcp()
mcp.run()

Development

Local Setup

# Clone the repository
git clone https://github.com/microbiomedata/nmdc-mcp.git
cd nmdc-mcp

# Install development dependencies
make dev

Development Workflow

The project uses a comprehensive Makefile for development tasks:

# Run all development checks (tests, formatting, linting, type checking)
make all

# Individual commands
make dev           # Install development dependencies
make test-coverage # Run tests with coverage
make format        # Format code with black
make lint          # Lint with ruff
make mypy          # Type checking
make deptry        # Check for unused dependencies
make build         # Build package

Testing

# Run all tests with coverage
make test-coverage

# Run specific test types
make test-unit         # Unit tests only
make test-integration  # Integration tests
make test-real-api     # Tests against real NMDC API
make test-mcp          # Test MCP protocol

MCP Integration

Claude Desktop Setup

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "nmdc-mcp": {
      "command": "uvx",
      "args": ["nmdc-mcp"]
    }
  }
}

Claude Code MCP Setup

claude mcp add -s project nmdc-mcp uvx nmdc-mcp

Goose Setup

goose session --with-extension "uvx nmdc-mcp"

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nmdc_mcp-0.3.1.tar.gz (61.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nmdc_mcp-0.3.1-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file nmdc_mcp-0.3.1.tar.gz.

File metadata

  • Download URL: nmdc_mcp-0.3.1.tar.gz
  • Upload date:
  • Size: 61.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for nmdc_mcp-0.3.1.tar.gz
Algorithm Hash digest
SHA256 2c72ceb8014bf4962862bbdbff80f77a99bdc4636828bf93abdd7b9ab3049da5
MD5 6fe358d989e01ea9fbf7d8c526560714
BLAKE2b-256 b61a90ef841c0c101816fc1a5cdd39fa440584fe76fe957c49c0f81d3e230187

See more details on using hashes here.

Provenance

The following attestation bundles were made for nmdc_mcp-0.3.1.tar.gz:

Publisher: pypi_publish.yaml on microbiomedata/nmdc-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nmdc_mcp-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: nmdc_mcp-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 15.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for nmdc_mcp-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a96e7aa4c7ac8925b053265e7c7763b1a22259497fa912168317993a57ef670f
MD5 c08e3d6006b226a6f4b8dae67d6075b5
BLAKE2b-256 d3a8d8d5f9f10a580e35e077c2265a51e101bd6e96f72f442db353b090faad12

See more details on using hashes here.

Provenance

The following attestation bundles were made for nmdc_mcp-0.3.1-py3-none-any.whl:

Publisher: pypi_publish.yaml on microbiomedata/nmdc-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page