CircuitMCP

CircuitMCP

An MCP server that allows AI assistants to create, modify, and simulate electronic circuits with features for circuit creation, component management, simulation analyses, and schematic generation.

Category
Visit Server

README

CircuitMCP

Circuit simulation capabilities exposed through Anthropic's Model Context Protocol (MCP).

Overview

This project implements an MCP server for circuit simulation, allowing AI assistants to create, modify, and simulate electronic circuits. It uses PySpice for simulation and SchemDraw for generating schematic diagrams.

Features

  • Circuit Creation: Create circuits with various electronic components
  • Component Management: Add, remove, and update components
  • Circuit Simulation: Run operating point, DC, AC, and transient analyses
  • Schematic Generation: Generate visual representations of circuits
  • UVX Components: Support for Universal Verification Xcomponents (op-amps, etc.)

Installation

Quick Setup (Recommended)

We provide setup scripts that handle all installation steps automatically:

  • Linux/macOS: ./setup_circuitmcp.sh
  • Windows (CMD): setup_circuitmcp.bat
  • Windows (PowerShell): .\setup_circuitmcp.ps1

These scripts will:

  1. Install required dependencies
  2. Install NGSpice (or guide you through installation)
  3. Set up a virtual environment (if desired)
  4. Install CircuitMCP
  5. Configure UVX for Cursor and Claude Desktop integration (if available)

Using UVX in Cursor or Claude Desktop

The easiest way to install CircuitMCP is using UVX directly in Cursor or Claude Desktop:

# Install the package from GitHub
uvx install git+https://github.com/amzsaint/circuitmcp.git

# Or install by name once registered
uvx install circuitmcp

# Verify installation
uvx list | grep circuitmcp

Claude Desktop Integration

To use CircuitMCP with Claude Desktop:

  1. Install the UVX package:

    uvx install circuitmcp
    
  2. Create an MCP configuration file (mcp_config.json):

    {
      "servers": [
        {
          "name": "Circuit Simulator",
          "command": ["circuitmcp-server", "--host", "127.0.0.1", "--port", "8000"]
        }
      ]
    }
    
  3. Start Claude Desktop with MCP configuration:

    claude-desktop --mcp-config=mcp_config.json
    
  4. In Claude Desktop, you can now use circuit simulation capabilities:

    Please create a simple voltage divider circuit with a 9V source and two 10kΩ resistors.
    

Manual Installation

You can also install manually:

  1. Clone the repository:

    git clone https://github.com/amzsaint/circuitmcp.git
    cd circuitmcp
    
  2. Install Python dependencies:

    pip install -r requirements.txt
    
  3. Install the package in development mode:

    pip install -e .
    
  4. Install NGSpice (required for simulation):

    • macOS: brew install ngspice
    • Ubuntu: apt-get install ngspice
    • Windows: Download from the NGSpice website

Usage

Running the Server

# Using the command-line script
circuitmcp-server

# With options
circuitmcp-server --debug --host 0.0.0.0 --port 8000

Or in Python:

# Import the server
from circuitmcp import mcp

# Run the server
mcp.run(host="127.0.0.1", port=8000)

Client Example

# See examples/mcp_client.py for full examples
from examples.mcp_client import CircuitMCPClient
import asyncio

async def main():
    client = CircuitMCPClient()
    await client.connect()
    
    # Create a circuit
    circuit = await client.create_circuit("My Circuit")
    circuit_id = circuit["id"]
    
    # Add components
    await client.add_component(circuit_id, "V", ["in", "0"], 5.0)
    await client.add_component(circuit_id, "R", ["in", "out"], 1000.0)
    
    # Generate schematic
    schematic = await client.generate_schematic(circuit_id)
    print(f"Schematic generated: {schematic['filepath']}")
    
    await client.close()

if __name__ == "__main__":
    asyncio.run(main())

Cursor Integration

When installed via UVX, CircuitMCP can be used directly in Cursor:

  1. Open Cursor and type /install circuitmcp or /install git+https://github.com/amzsaint/circuitmcp.git
  2. Use the package in your Python code:
    from circuitmcp import mcp, Circuit
    
  3. Run the server with /run circuitmcp-server

Testing

Run the test script to verify functionality:

python -m circuitmcp.test_mcp

Project Structure

  • circuitmcp/: Main package
    • mcp_server.py: MCP server implementation
    • circuit.py: Circuit class implementation
    • mock_mcp.py: Mock MCP SDK implementation
    • test_mcp.py: Test script
  • examples/: Example client and usage
  • schematics/: Generated circuit schematics

License

MIT

Note on NGSpice

This project requires NGSpice to be installed on your system for simulation capabilities. The schematic generation will work without NGSpice, but simulation features will be unavailable.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured