nmdc-mcp
OfficialProvides a client that uses OpenAI's API to query the NMDC database.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nmdc-mcpshow me metagenome samples from marine environments"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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 syncRelated MCP server: splunk-mcp
Usage
You can use the CLI:
nmdc-mcpOr import in your Python code: # TODO incorrect instructions
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.
uv run 'path/to/nmdc_mcp/client.py' 'path/to/nmdc_mcp/main.py'Or using python
python 'path/to/nmdc_mcp/client.py' 'path/to/nmdc_mcp/main.py'Development
Local Setup
# Clone the repository
git clone https://github.com/microbiomedata/nmdc-mcp.git
cd nmdc-mcp
# Install development dependencies
make devDevelopment 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 packageTesting
# 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 protocolMCP 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-mcpGoose Setup
goose session --with-extension "uvx nmdc-mcp"License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/microbiomedata/nmdc-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server