{
  "markdown": "# Parts MCP\n\n<!-- mcp-name: io.github.SourceParts/parts-mcp -->\n\nA Model Context Protocol (MCP) server for sourcing electronic parts with multi-EDA integration.\n\n## Overview\n\nParts MCP enables AI assistants to search for electronic components, compare prices, check availability, and process BOMs from popular EDA tools. It provides a unified interface for component sourcing workflows powered by the [Source Parts API](https://source.parts).\n\n## Supported EDA Tools\n\n| Tool | BOM Format | Status |\n|------|------------|--------|\n| KiCad | CSV, XML | Full support + CLI integration |\n| Altium Designer | CSV, XLS | Full support |\n| Autodesk Fusion 360 | CSV | Full support |\n| Eagle | CSV, BRD | Full support |\n| PADS | CSV, ASC | Full support |\n| Protel 99 | CSV | Full support |\n\n## Features\n\n- **Universal Parts Search**: Search millions of parts via Source Parts API\n- **Multi-EDA BOM Processing**: Import BOMs from KiCad, Altium, Fusion360, Eagle, PADS, Protel99\n- **Component Matching**: AI-powered matching with confidence scoring\n- **Price Comparison**: Compare prices across distributors\n- **Availability Check**: Real-time inventory levels\n- **Alternative Parts**: Find drop-in replacements and functional equivalents\n- **KiCad CLI Integration**: Generate BOMs directly from schematics\n- **Local Caching**: Fast responses with intelligent caching\n\n## Installation\n\n### Quick Start (Recommended)\n\n```bash\nuvx parts-mcp\n```\n\nNo install needed -- `uvx` runs it directly from PyPI in an isolated environment.\n\n### With pip\n\n```bash\npip install parts-mcp\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/SourceParts/parts-mcp.git\ncd parts-mcp\npip install -e .\n```\n\n### Requirements\n\n- Python 3.10+\n- Source Parts API key ([get one here](https://source.parts/docs/api))\n\n## Configuration\n\nCreate a `.env` file or set environment variables:\n\n```bash\n# Required\nSOURCE_PARTS_API_KEY=your_api_key_here\n\n# Optional\nSOURCE_PARTS_API_URL=https://api.source.parts/v1\nKICAD_SEARCH_PATHS=/path/to/kicad/projects\nPARTS_CACHE_DIR=~/.cache/parts-mcp\nCACHE_EXPIRY_HOURS=24\n```\n\n## Claude Desktop Integration\n\nAdd to your Claude Desktop configuration file:\n\n**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`\n**Windows**: `%APPDATA%\\Claude\\claude_desktop_config.json`\n**Linux**: `~/.config/Claude/claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"parts\": {\n      \"command\": \"uvx\",\n      \"args\": [\"parts-mcp\"],\n      \"env\": {\n        \"SOURCE_PARTS_API_KEY\": \"your_api_key_here\"\n      }\n    }\n  }\n}\n```\n\nIf installed from source:\n\n```json\n{\n  \"mcpServers\": {\n    \"parts\": {\n      \"command\": \"/path/to/python\",\n      \"args\": [\"/path/to/parts-mcp/main.py\"],\n      \"env\": {\n        \"SOURCE_PARTS_API_KEY\": \"your_api_key_here\"\n      }\n    }\n  }\n}\n```\n\nAfter adding the configuration, restart Claude Desktop.\n\n## Claude.ai Integration (Remote)\n\nConnect directly from [claude.ai](https://claude.ai) without any local installation:\n\n1. Open [claude.ai](https://claude.ai) in your browser\n2. Go to **Settings** > **Connectors**\n3. Click **Add custom connector**\n4. Enter the URL: `https://mcp.source.parts/`\n5. Complete the OAuth sign-in when prompted\n6. Start using Parts tools in any conversation\n\nNo API key needed -- authentication is handled via OAuth.\n\n## Claude Code Integration\n\nAdd to your Claude Code MCP settings (`~/.claude/settings.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"parts\": {\n      \"command\": \"uvx\",\n      \"args\": [\"parts-mcp\"],\n      \"env\": {\n        \"SOURCE_PARTS_API_KEY\": \"your_api_key_here\"\n      }\n    }\n  }\n}\n```\n\nOr run directly:\n\n```bash\nclaude --mcp-server \"python -m parts_mcp\"\n```\n\n## Usage Examples\n\n### Search for Parts\n> \"Find a 10k resistor in 0603 package\"\n\n### Process a BOM\n> \"Upload my Altium BOM and find the best prices for 100 units\"\n\n### KiCad Integration\n> \"Extract the BOM from my amplifier.kicad_sch and source all components\"\n\n### Find Alternatives\n> \"Find alternatives for the obsolete LM358\"\n\n### Check Availability\n> \"Check stock levels for STM32F103C8T6\"\n\n## Available Tools\n\n| Tool | Description |\n|------|-------------|\n| `search_parts` | Search for components by query |\n| `get_part_details` | Get detailed part information |\n| `get_part_pricing` | Get pricing across distributors |\n| `check_availability` | Check real-time inventory |\n| `find_alternatives` | Find replacement parts |\n| `process_bom` | Process BOM file from any supported EDA |\n| `match_components` | Match BOM components to parts |\n| `find_kicad_projects` | Discover local KiCad projects |\n| `generate_kicad_bom` | Generate BOM from KiCad schematic |\n\n## Architecture\n\nParts MCP follows a thin client architecture:\n\n**Local (MCP)**:\n- KiCad CLI operations\n- Project discovery\n- Response caching\n- BOM file parsing\n\n**Server (Source Parts API)**:\n- Component matching\n- Price aggregation\n- Inventory checking\n- Alternative search\n\n## Development\n\n```bash\n# Install dev dependencies\npip install -e \".[dev]\"\n\n# Run tests\npytest\n\n# Run with debug logging\nDEBUG=1 python main.py\n```\n\n## Project Structure\n\n```\nparts_mcp/\n├── server.py          # MCP server entry\n├── config.py          # Configuration\n├── tools/             # MCP tools\n├── resources/         # MCP resources\n├── prompts/           # Prompt templates\n└── utils/\n    ├── api_client.py        # Source Parts API client\n    ├── bom_parser.py        # Multi-EDA BOM parsing\n    ├── component_matcher.py # Component matching\n    ├── cache.py             # Response caching\n    └── kicad_utils.py       # KiCad CLI integration\n```\n\n## Marketplace Listings\n\n- [MCP Registry](https://registry.modelcontextprotocol.io/servers/io.github.SourceParts/parts-mcp) - Official MCP server registry\n- [Smithery](https://smithery.ai/server/@sourceparts/parts-mcp) - One-click install marketplace\n- [Hosted Server](https://mcp.source.parts/) - Remote MCP for claude.ai connectors\n\n## Links\n\n- [Source Parts](https://source.parts) - Component search platform\n- [Source Parts API Docs](https://source.parts/docs/api) - API documentation\n- [MCP Specification](https://modelcontextprotocol.io) - Model Context Protocol\n\n## License\n\nMIT License with Trademark Protection - see [LICENSE.md](LICENSE.md)\n\n\"Source Parts\" is a trademark. See license for usage restrictions.\n",
  "bytes": 6259,
  "sha": "4dba81c29afa8b10aae15ee2ec52c497d87cb3ae8ddec008218378e96a633cc4",
  "repo_slug": "sourceparts/parts-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_sourceparts_parts_mcp_c730b33b/readme"
}