Skip to main content

MCP server for FEAGI neural monitoring and control

Project description

FEAGI MCP Server

Model Context Protocol (MCP) server for FEAGI neural monitoring and control. Enables LLMs to observe brain activity, design neural circuits, and debug neurorobotic systems in real-time.

Features

Monitoring & Observation

  • Monitor cortical activity - Real-time firing rates, spike patterns, and neuron states
  • Trace signal paths - Verify connectivity between cortical areas
  • Inspect embodiment - Check controller registration, motor/sensor mappings
  • Analyze connectivity - Examine synaptic connections and morphologies

Circuit Building

  • Stimulate areas - Trigger specific cortical regions for testing
  • Validate circuits - Check genome structure and parameter sanity
  • Get area parameters - Inspect neuron properties and dimensions

Genome Management

  • Upload genomes - Load neural architectures into running FEAGI
  • Download genomes - Retrieve current brain configuration
  • List areas - Enumerate all cortical regions

Installation

# From PyPI
pip install feagi-mcp

# Or install from a source checkout (editable)
cd feagi-mcp
pip install -e .

# Or with uv
uv pip install -e .

Usage

Standalone Server (stdio)

feagi-mcp

With Configuration

export FEAGI_HOST=localhost
export FEAGI_PORT=8000
feagi-mcp

Cursor Integration

Add to your Cursor MCP settings (~/.cursor/mcp.json):

{
  "mcpServers": {
    "feagi": {
      "command": "python",
      "args": ["-m", "feagi_mcp.server"],
      "env": {
        "FEAGI_HOST": "localhost",
        "FEAGI_PORT": "8000"
      }
    }
  }
}

Available Tools

Agent Introspection

  • get_registered_agents - List all connected agents (controllers, embodiments)
  • get_agent_properties - Get agent type, capabilities, version, connection info
  • get_agent_device_registrations - Inspect motor/sensor structure, group_ids, control modes

Monitoring

  • monitor_activity - Get real-time firing rates for a cortical area
  • get_connectivity - Inspect synaptic connections between areas
  • trace_signal_path - Verify signal propagation paths
  • get_embodiment_status - Check controller connections and mappings
  • get_area_parameters - Inspect neuron properties
  • get_cortical_synapse_counts - Get incoming/outgoing synapse counts

Genome Editing (NEW)

  • create_cortical_area - Add OPU/IPU/CUSTOM/MEMORY areas programmatically (CUSTOM/MEMORY require brain_region_id; MCP enforces origin/label spacing unless skipped). Naming: use intuitive role/circuit names; never prefix with Mcp — see docs/NEW_TOOLS.md (Cortical area naming policy).
  • update_cortical_area - Modify cortical area properties
  • delete_cortical_area - Remove cortical areas
  • list_opu_areas - List only motor output areas
  • list_ipu_areas - List only sensory input areas
  • list_opu_areas_with_metadata - List OPU areas with semantic type/purpose/capabilities info
  • list_ipu_areas_with_metadata - List IPU areas with semantic type/purpose/capabilities info
  • get_area_semantic_info - Get detailed semantic information about any cortical area

Connection Management (NEW)

  • get_cortical_mapping - Get connection configuration between two areas
  • update_cortical_mapping - Create/update connections with morphology rules
  • delete_cortical_mapping - Remove connections between areas

Brain Visualizer parity (full REST router)

  • list_brain_visualizer_operations - Index of every supported operation_id with HTTP method and path (same surface as FEAGIHTTPAddressList.gd)
  • brain_visualizer_api - Call any whitelisted operation: genome (save, amalgamation, circuits), cortical areas (geometry, properties, multi-put, reset, clone), regions (CRUD, relocate, clone), morphologies (CRUD, rename, usage), cortical mappings (afferents, efferents, batch), burst engine, system visualization tuning, neuroplasticity, insight/monitoring, agents (register, heartbeat, stimulation, device registrations), network, vision input. Use path_params for {agent_id} / {region_id} routes; for amalgamation-by-upload use post_genome_amalgamation_by_upload_multipart with json_body: {\"genome_json\": \"...\"}.

Control

  • stimulate_area - Trigger neurons for testing
  • upload_genome - Load a new brain architecture
  • download_genome - Retrieve current genome

Inspection

  • list_cortical_areas - Enumerate all brain regions
  • get_genome_info - Get metadata about current genome
  • validate_genome - Check genome structure for issues
  • get_burst_engine_status - Check burst engine state
  • get_runtime_metrics - Get comprehensive runtime metrics

Example: LLM-Assisted Circuit Design

# LLM can now:
# 1. Monitor CPG oscillation
activity = await monitor_activity(area_id="cCPGa_", duration_ms=1000)
# Returns: {"firing_rate": 5.2, "active_neurons": [0,1,2,3,4], "period_ms": 192}

# 2. Verify connections
conn = await get_connectivity(src_area="cCPGa_", dst_area="cHipFL")
# Returns: {"synapse_count": 150, "morphology": "cpg_to_hip_x", "avg_weight": 18.0}

# 3. Check motor output
status = await get_embodiment_status()
# Returns: {"motor_cortical_id": "opose0", "device_count": 12, "last_packet_ms": 42}

# 4. Debug with stimulation
result = await stimulate_area(area_id="cStart", coords=[0,0,0], potential=1.0)
# Trigger walking behavior for testing

Architecture

feagi-mcp/
├── src/feagi_mcp/
│   ├── __init__.py
│   ├── server.py          # Main MCP server with tool definitions
│   ├── feagi_client.py    # HTTP client for FEAGI REST API
│   ├── config.py          # Configuration management
│   └── tools/             # Individual tool implementations
│       ├── monitoring.py
│       ├── control.py
│       └── genome.py
├── tests/
│   ├── test_server.py
│   └── test_feagi_client.py
├── examples/
│   └── circuit_design.py
├── pyproject.toml
└── README.md

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Lint and format
ruff check .
ruff format .
mypy src/

Requirements

  • Python 3.10+
  • Running FEAGI instance (default: localhost:8000)
  • MCP-compatible client (Cursor, Claude Desktop)

License

Apache-2.0 - Copyright 2026 Neuraville Inc.

Support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

feagi_mcp-0.0.2.tar.gz (99.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

feagi_mcp-0.0.2-py3-none-any.whl (36.9 kB view details)

Uploaded Python 3

File details

Details for the file feagi_mcp-0.0.2.tar.gz.

File metadata

  • Download URL: feagi_mcp-0.0.2.tar.gz
  • Upload date:
  • Size: 99.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for feagi_mcp-0.0.2.tar.gz
Algorithm Hash digest
SHA256 6614f112843a6270c391be1dca5e210b75f36aa0b11aa2f2151817a17221ae35
MD5 9f74977578bf70ff02365290447b214e
BLAKE2b-256 6826b8dfa48caca6206b292b7b745bbefe1261c1de996011db1740658695dec5

See more details on using hashes here.

File details

Details for the file feagi_mcp-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: feagi_mcp-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 36.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for feagi_mcp-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d94245e8d0f5ab7ce8401206a00d9977cb2720bc6b68fc4b1fc9481fd61b9152
MD5 5a0d29dfaf1cacb5b9ebd1fc6d395d55
BLAKE2b-256 6ab647fd911455644f7bc038cefcbb744a7502d53046474c4aff7b834d00c4eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page