# MCP KiCAD Schematic API
Model Context Protocol (MCP) server providing KiCAD schematic manipulation tools for AI agents.
## Overview
This MCP server exposes the [`kicad-sch-api`](https://github.com/circuit-synth/kicad-sch-api) library as tools that AI agents can use to create, modify, and analyze KiCAD schematic files.
## Features
- 🔧 **Create Schematics**: Generate new KiCAD schematic files
- ⚡ **Add Components**: Place resistors, capacitors, ICs, and more
- 🔍 **Search Components**: Find parts in KiCAD symbol libraries
- 🔗 **Add Connections**: Create wires and nets
- 📐 **Hierarchical Design**: Support for hierarchical sheets and labels
- 🎯 **Format Preservation**: Maintains exact KiCAD file format compatibility
## Quick Start
### Installation
```bash
pip install mcp-kicad-sch-api
```
### Configuration
#### Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"kicad-sch-api": {
"command": "python",
"args": ["-m", "mcp_kicad_sch_api"],
"env": {}
}
}
}
```
#### Claude Code
**Option 1: Automatic (Recommended)**
```bash
# Add MCP server automatically
claude mcp add mcp-kicad-sch-api /path/to/your/venv/bin/mcp-kicad-sch-api
# Example with specific venv path:
claude mcp add mcp-kicad-sch-api /Users/username/myproject/venv/bin/mcp-kicad-sch-api
```
**Option 2: Manual Configuration**
If the automatic method doesn't work, manually edit your Claude Code config file:
```bash
# Find your config file location
code ~/.claude.json
```
Add the MCP server configuration:
```json
{
"mcpServers": {
"mcp-kicad-sch-api": {
"command": "/path/to/your/venv/bin/mcp-kicad-sch-api"
}
}
}
```
**Finding Your Installation Path:**
```bash
# After installing in your venv, find the executable path:
which mcp-kicad-sch-api
# Example output: /Users/username/myproject/venv/bin/mcp-kicad-sch-api
```
**Restart Claude Code** after configuration to load the MCP server.
#### Other MCP Clients
The server supports standard MCP stdio transport and should work with any MCP-compatible client.
## Usage Examples
Ask your AI agent:
- *"Create a voltage divider circuit with two 10kΩ resistors"*
- *"Add an Arduino Nano to the schematic at position (100, 100)"*
- *"Search for operational amplifiers in the KiCAD libraries"*
- *"Create a hierarchical sheet for the power supply section"*
## Tools Available
| Tool | Description |
|------|-------------|
| `create_schematic` | Create a new KiCAD schematic file |
| `add_component` | Add components (resistors, capacitors, ICs, etc.) |
| `search_components` | Search KiCAD symbol libraries |
| `add_wire` | Create wire connections |
| `add_hierarchical_sheet` | Add hierarchical design sheets |
| `add_sheet_pin` | Add pins to hierarchical sheets |
| `add_hierarchical_label` | Add hierarchical labels |
| `list_components` | List all components in schematic |
| `get_schematic_info` | Get schematic information |
## Requirements
- Python 3.10+
- KiCAD (for symbol libraries)
- [`kicad-sch-api`](https://pypi.org/project/kicad-sch-api/) library
## Development
```bash
git clone https://github.com/circuit-synth/mcp-kicad-sch-api.git
cd mcp-kicad-sch-api
uv sync --dev
uv run python -m mcp_kicad_sch_api
```
## License
MIT License - see [LICENSE](LICENSE) file.
## Related Projects
- [`kicad-sch-api`](https://github.com/circuit-synth/kicad-sch-api) - Core Python library
- [`circuit-synth`](https://github.com/circuit-synth/circuit-synth) - AI-powered circuit design platform
---
🤖 **AI-Powered Circuit Design Made Easy**
Raw data
{
"_id": null,
"home_page": null,
"name": "mcp-kicad-sch-api",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "Circuit-Synth <shane@circuit-synth.com>",
"keywords": "mcp, kicad, schematic, eda, electronics, circuit-design, ai, model-context-protocol, llm, agent",
"author": null,
"author_email": "Circuit-Synth <shane@circuit-synth.com>",
"download_url": "https://files.pythonhosted.org/packages/2f/61/9c29d5480540ea88e75f05006cc535c14db5a1b318874e662ee3b74ab66f/mcp_kicad_sch_api-0.2.0.tar.gz",
"platform": null,
"description": "# MCP KiCAD Schematic API\n\nModel Context Protocol (MCP) server providing KiCAD schematic manipulation tools for AI agents.\n\n## Overview\n\nThis MCP server exposes the [`kicad-sch-api`](https://github.com/circuit-synth/kicad-sch-api) library as tools that AI agents can use to create, modify, and analyze KiCAD schematic files.\n\n## Features\n\n- \ud83d\udd27 **Create Schematics**: Generate new KiCAD schematic files\n- \u26a1 **Add Components**: Place resistors, capacitors, ICs, and more\n- \ud83d\udd0d **Search Components**: Find parts in KiCAD symbol libraries \n- \ud83d\udd17 **Add Connections**: Create wires and nets\n- \ud83d\udcd0 **Hierarchical Design**: Support for hierarchical sheets and labels\n- \ud83c\udfaf **Format Preservation**: Maintains exact KiCAD file format compatibility\n\n## Quick Start\n\n### Installation\n\n```bash\npip install mcp-kicad-sch-api\n```\n\n### Configuration\n\n#### Claude Desktop\nAdd to your `claude_desktop_config.json`:\n```json\n{\n \"mcpServers\": {\n \"kicad-sch-api\": {\n \"command\": \"python\",\n \"args\": [\"-m\", \"mcp_kicad_sch_api\"],\n \"env\": {}\n }\n }\n}\n```\n\n#### Claude Code\n\n**Option 1: Automatic (Recommended)**\n```bash\n# Add MCP server automatically\nclaude mcp add mcp-kicad-sch-api /path/to/your/venv/bin/mcp-kicad-sch-api\n\n# Example with specific venv path:\nclaude mcp add mcp-kicad-sch-api /Users/username/myproject/venv/bin/mcp-kicad-sch-api\n```\n\n**Option 2: Manual Configuration**\nIf the automatic method doesn't work, manually edit your Claude Code config file:\n\n```bash\n# Find your config file location\ncode ~/.claude.json\n```\n\nAdd the MCP server configuration:\n```json\n{\n \"mcpServers\": {\n \"mcp-kicad-sch-api\": {\n \"command\": \"/path/to/your/venv/bin/mcp-kicad-sch-api\"\n }\n }\n}\n```\n\n**Finding Your Installation Path:**\n```bash\n# After installing in your venv, find the executable path:\nwhich mcp-kicad-sch-api\n# Example output: /Users/username/myproject/venv/bin/mcp-kicad-sch-api\n```\n\n**Restart Claude Code** after configuration to load the MCP server.\n\n#### Other MCP Clients\nThe server supports standard MCP stdio transport and should work with any MCP-compatible client.\n\n## Usage Examples\n\nAsk your AI agent:\n\n- *\"Create a voltage divider circuit with two 10k\u03a9 resistors\"*\n- *\"Add an Arduino Nano to the schematic at position (100, 100)\"*\n- *\"Search for operational amplifiers in the KiCAD libraries\"*\n- *\"Create a hierarchical sheet for the power supply section\"*\n\n## Tools Available\n\n| Tool | Description |\n|------|-------------|\n| `create_schematic` | Create a new KiCAD schematic file |\n| `add_component` | Add components (resistors, capacitors, ICs, etc.) |\n| `search_components` | Search KiCAD symbol libraries |\n| `add_wire` | Create wire connections |\n| `add_hierarchical_sheet` | Add hierarchical design sheets |\n| `add_sheet_pin` | Add pins to hierarchical sheets |\n| `add_hierarchical_label` | Add hierarchical labels |\n| `list_components` | List all components in schematic |\n| `get_schematic_info` | Get schematic information |\n\n## Requirements\n\n- Python 3.10+\n- KiCAD (for symbol libraries)\n- [`kicad-sch-api`](https://pypi.org/project/kicad-sch-api/) library\n\n## Development\n\n```bash\ngit clone https://github.com/circuit-synth/mcp-kicad-sch-api.git\ncd mcp-kicad-sch-api\nuv sync --dev\nuv run python -m mcp_kicad_sch_api\n```\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file.\n\n## Related Projects\n\n- [`kicad-sch-api`](https://github.com/circuit-synth/kicad-sch-api) - Core Python library\n- [`circuit-synth`](https://github.com/circuit-synth/circuit-synth) - AI-powered circuit design platform\n\n---\n\n\ud83e\udd16 **AI-Powered Circuit Design Made Easy**\n",
"bugtrack_url": null,
"license": null,
"summary": "Model Context Protocol server for KiCAD schematic manipulation",
"version": "0.2.0",
"project_urls": {
"Bug Reports": "https://github.com/circuit-synth/mcp-kicad-sch-api/issues",
"Changelog": "https://github.com/circuit-synth/mcp-kicad-sch-api/blob/main/CHANGELOG.md",
"Documentation": "https://circuit-synth.github.io/mcp-kicad-sch-api/",
"Homepage": "https://github.com/circuit-synth/mcp-kicad-sch-api",
"Repository": "https://github.com/circuit-synth/mcp-kicad-sch-api.git"
},
"split_keywords": [
"mcp",
" kicad",
" schematic",
" eda",
" electronics",
" circuit-design",
" ai",
" model-context-protocol",
" llm",
" agent"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b0ad46150cb99eb6efdd72ec4ffc0a935345cce7d54bcb309829dba6bde46055",
"md5": "c7d844aeb8abfeebca236527f0b569cf",
"sha256": "ae9afff5e20d3e350ac2ebca930d30679e1d569617ad4aa4b808a27269c8cae5"
},
"downloads": -1,
"filename": "mcp_kicad_sch_api-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c7d844aeb8abfeebca236527f0b569cf",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 9258,
"upload_time": "2025-08-20T03:36:57",
"upload_time_iso_8601": "2025-08-20T03:36:57.014221Z",
"url": "https://files.pythonhosted.org/packages/b0/ad/46150cb99eb6efdd72ec4ffc0a935345cce7d54bcb309829dba6bde46055/mcp_kicad_sch_api-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2f619c29d5480540ea88e75f05006cc535c14db5a1b318874e662ee3b74ab66f",
"md5": "367a112bd08f5ab8cc8719af553b37e4",
"sha256": "5928d4e0d954364b2a9f6a664ca6bca540f520854063fe2e17e77652ea1d9ca2"
},
"downloads": -1,
"filename": "mcp_kicad_sch_api-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "367a112bd08f5ab8cc8719af553b37e4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 12769,
"upload_time": "2025-08-20T03:36:58",
"upload_time_iso_8601": "2025-08-20T03:36:58.115937Z",
"url": "https://files.pythonhosted.org/packages/2f/61/9c29d5480540ea88e75f05006cc535c14db5a1b318874e662ee3b74ab66f/mcp_kicad_sch_api-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-20 03:36:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "circuit-synth",
"github_project": "mcp-kicad-sch-api",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "mcp-kicad-sch-api"
}