McMaster-Carr MCP Server
ABOUTME: Documentation for McMaster-Carr MCP server.
ABOUTME: Covers installation, configuration, and usage.
McMaster-Carr MCP Server
MCP server for searching and looking up product information from McMaster-Carr.
Uses SeleniumBase UC mode to extract product data from JavaScript-rendered pages.
Features
Product Lookup: Get detailed specs (10-35+ fields) for any McMaster-Carr part number
Search: Search for products and get part numbers from results
URL Generation: Generate McMaster URLs without fetching (fast, no browser)
Cookie Persistence: Browser profile saved for faster subsequent requests
Installation
cd tools/mcmaster-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e .Or install dependencies directly:
pip install mcp seleniumbase beautifulsoup4Usage
Run the server directly
python server.pyClaude Code configuration
Add to ~/.claude.json (or your MCP config):
{
"mcpServers": {
"mcmaster-carr": {
"command": "python",
"args": ["/path/to/radiatron/tools/mcmaster-mcp/server.py"]
}
}
}Available Tools
mcmaster_get_product
Get detailed product information by part number.
Input:
{
"part_number": "47865K23"
}Returns:
Product name
10-35+ specifications (material, size, pressure ratings, thread type, etc.)
URL to product page
Example output:
{
"part_number": "47865K23",
"name": "Brass Body On/Off Valve, with Lever Handle, 1/2 NPT Female, 32.3 Cv",
"url": "https://www.mcmaster.com/47865K23",
"specs": {
"Pipe Size": "1/2",
"Flow Coefficient (Cv)": "32.3",
"Maximum Pressure": "600 psi @ 100° F",
"Body Material": "Brass",
"Valve Type": "Ball",
"Thread Type": "NPT"
}
}mcmaster_search
Search McMaster-Carr and get products matching the query.
The search automatically navigates through McMaster's category structure to find actual product listings with part numbers and names.
Input:
{
"query": "ball valve brass"
}Returns: List of products with part numbers and names (up to 50).
{
"query": "ball valve brass",
"count": 22,
"results": [
{"part_number": "47865K23", "name": "Threaded On/Off Valves", "url": "..."},
{"part_number": "4373K53", "name": "Diverting Valves", "url": "..."},
{"part_number": "8151N11", "name": "Socket-Connect On/Off Valves", "url": "..."}
]
}mcmaster_url
Generate McMaster URLs without fetching. Fast, no browser needed.
Input (product):
{
"part_number": "47865K19"
}Input (search):
{
"search_query": "stainless steel bolt"
}How It Works
SeleniumBase UC Mode - Undetected Chromium driver bypasses bot detection
Visible Browser - McMaster blocks headless browsers, so a Chrome window briefly appears
Cookie Persistence - Browser profile saved to
~/.mcmaster-browserfor faster subsequent requestsBeautifulSoup - Parses spec tables from rendered HTML
Limitations
Visible browser window: McMaster detects headless browsers, so a Chrome window briefly appears during requests
First request slower: ~5-8 seconds for browser startup, subsequent requests ~3-5 seconds
CSS class changes: May break if McMaster updates their class naming conventions
Files
server.py- MCP server entry pointbrowser.py- SeleniumBase browser automationagent.py- Product search agent with requirement parsing (CLI tool)mcmaster.py- Legacy CDP-mode client (deprecated, kept for reference)
Development
Run tests:
python test_agent.py
python test_search.pyTest the browser directly:
python -c "from browser import McMasterBrowser; b = McMasterBrowser(); b.start(); print(b.get_product('47865K23'))"Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/mjbraun/mcmaster-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server