Skip to main content
Glama
Anbus2011

DigiKey MCP Server

by Anbus2011

DigiKey MCP Server

A Model Context Protocol (MCP) server for DigiKey's Product Search API using FastMCP.

Requirements

  • Python 3.10+

  • uv package manager

  • DigiKey API credentials (CLIENT_ID and CLIENT_SECRET)

Related MCP server: Source Parts MCP Server

Setup & Credentials

1. Obtain DigiKey API credentials

To use this server, you need a Client ID and Client Secret from the DigiKey API Developer Portal.

  1. Go to the DigiKey API Developer Portal and sign in with your My DigiKey account. If you don't have one, create a free account first.

  2. Navigate to Apps in the top menu.

  3. Choose one of the following:

    • For testing: Click Create Sandbox App. This gives you access to the sandbox API with mock data at no cost.

    • For production: Set up an Organization first (under your account settings), then create a Production App within that organization.

  4. Fill out the required application details (app name, description, and select the Product Information API).

  5. Once created, click on your app name to view its properties.

  6. Copy the Client ID and Client Secret shown on the app properties page.

2. Install dependencies

uv sync

3. Configure environment variables

Create a .env file in the project root:

CLIENT_ID=your_client_id_here
CLIENT_SECRET=your_client_secret_here
USE_SANDBOX=true

Variable

Description

CLIENT_ID

Your DigiKey app Client ID

CLIENT_SECRET

Your DigiKey app Client Secret

USE_SANDBOX

Set to true for the sandbox API (recommended for testing), or false for production

Note: The .env file is listed in .gitignore and will not be committed to version control. Never share your Client Secret publicly.

4. Add the MCP server to Claude Desktop

Open your Claude Desktop config file in a text editor:

Platform

Config file location

Windows

%APPDATA%\Claude\claude_desktop_config.json

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Add the "digikey" entry to the "mcpServers" object. Replace the paths below with the full path to your local copy of this repository and your uv executable.

Finding your uv path: Run where uv (Windows) or which uv (macOS/Linux) in a terminal to get the full path.

Windows example:

{
  "mcpServers": {
    "digikey": {
      "command": "C:\\Users\\YourName\\AppData\\Local\\Programs\\Python\\Python312\\Scripts\\uv.exe",
      "args": ["run", "--project", "C:\\Users\\YourName\\projects\\digikey-mcp", "python", "C:\\Users\\YourName\\projects\\digikey-mcp\\digikey_mcp_server.py"]
    }
  }
}

macOS / Linux example:

{
  "mcpServers": {
    "digikey": {
      "command": "/usr/local/bin/uv",
      "args": ["run", "--project", "/Users/yourname/projects/digikey-mcp", "python", "/Users/yourname/projects/digikey-mcp/digikey_mcp_server.py"]
    }
  }
}

Note: Full paths are used for both the uv command and the script because Claude Desktop does not reliably resolve cwd or PATH on all platforms. If you already have other MCP servers in your config, merge the "digikey" entry into your existing "mcpServers" object — do not replace the entire file.

5. Restart Claude Desktop

Close and reopen Claude Desktop. The DigiKey tools will now appear in your available tools. You can verify by asking Claude to look up a part number:

"Look up part number LM358N on DigiKey"

Running standalone (without Claude Desktop):

uv run python digikey_mcp_server.py

Available Tools

Quick Part Lookup

  • part_lookup(part_number, requested_quantity=1, customer_id="0") - Look up any DigiKey or manufacturer part number and get availability, pricing, and pricing tiers in a single call

Search Methods

  • keyword_search(keywords, limit=5, manufacturer_id=None, category_id=None, search_options=None, sort_field=None, sort_order="Ascending") - Search DigiKey products by keyword with sorting and filtering

  • search_manufacturers() - Get all product manufacturers

  • search_categories() - Get all product categories

  • search_product_substitutions(product_number, limit=10, search_options=None, exclude_marketplace=False) - Find substitute products

Product Details

  • product_details(product_number, manufacturer_id=None, customer_id="0") - Get detailed product information

  • get_category_by_id(category_id) - Get specific category details

  • get_product_media(product_number) - Get product images, documents, and videos

  • get_product_pricing(product_number, customer_id="0", requested_quantity=1) - Get detailed pricing information

  • get_digi_reel_pricing(product_number, requested_quantity, customer_id="0") - Get DigiReel pricing

Available sort fields:

  • Packaging - Sort by packaging type

  • ProductStatus - Sort by product status

  • DigiKeyProductNumber - Sort by DigiKey part number

  • ManufacturerProductNumber - Sort by manufacturer part number

  • Manufacturer - Sort by manufacturer name

  • MinimumQuantity - Sort by minimum order quantity

  • QuantityAvailable - Sort by available quantity

  • Price - Sort by price

  • Supplier - Sort by supplier

  • PriceManufacturerStandardPackage - Sort by manufacturer standard package price

Sort orders: Ascending or Descending

Search Options

Available filters for search methods:

  • LeadFree - Lead-free products only

  • RoHSCompliant - RoHS compliant products only

  • InStock - In-stock products only

  • HasDatasheet - Products with datasheets

  • HasProductPhoto - Products with photos

  • Has3DModel - Products with 3D models

  • NewProduct - New products only

Example Usage

The server exposes MCP tools that can be used by MCP clients like Claude Desktop, or programmatically via FastMCP clients.

Part Lookup (most common use case)

# Look up a part by DigiKey or manufacturer number — returns availability, pricing, and price tiers
part_lookup("296-8875-1-ND")

# Look up with a specific quantity for accurate tier pricing
part_lookup("LM358N", requested_quantity=100)

Search Examples

# Basic keyword search
keyword_search("resistor", limit=10)

# Search with sorting by price (lowest first)
keyword_search("capacitor", limit=5, sort_field="Price", sort_order="Ascending")

# Search with filters
keyword_search("LED", limit=10, search_options="InStock,RoHSCompliant")

Detailed Queries

# Get full product details
product_details("296-8875-1-ND")

# Get pricing separately
get_product_pricing("296-8875-1-ND", requested_quantity=100)
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

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/Anbus2011/digikey-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server