FastMCP-based tool for writing prompts against data in the NMDC (National Microbiome Data Collaborative) database
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"nmdc-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# 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: ```bash uv sync ``` ## Usage You can use the CLI: ```bash nmdc-mcp ``` Or import in your Python code: # TODO incorrect instructions ```python from nmdc_mcp.main import create_mcp mcp = create_mcp() mcp.run() ``` Or utilize the `nmdc_mcp.client`. This client uses OpenAI API and assumes you have `API_KEY` set in a .env file in the root directory of this repo. The `BASE_URL` and `MODEL` are also customizable in .env. For PNNL staff that want to run via this client - the `BASE_URL` and `MODEL` are specific. Contact Olivia Hess if you need help setting these values up. ```bash uv run 'path/to/nmdc_mcp/client.py' 'path/to/nmdc_mcp/main.py' ``` Or using python ```bash python 'path/to/nmdc_mcp/client.py' 'path/to/nmdc_mcp/main.py' ``` ## Development ### Local Setup ```bash # 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: ```bash # 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 ```bash # 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`…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.