MCP ExplorerExplorer

Brains Mcp

@groovysquirrelon a year ago
1 MIT
FreeCommunity
AI Systems
#aws#genai#mcp#react#sst
A Serverless MCP implementation using SST, React and AWS.

Overview

What is Brains Mcp

Brains-MCP is a modern, serverless operating system designed for managing AI systems and agents. It utilizes SST, React, and TypeScript to provide a robust framework for orchestrating Large Language Models (LLMs) and specialized AI agents through the Model Control Protocol (MCP).

Use cases

Use cases for brains-mcp include designing AI workflows visually, managing AI agents securely, conducting prompt management and benchmarking, and deploying scalable AI solutions in a serverless environment.

How to use

To use brains-mcp, clone the repository, install the necessary dependencies, and start the development server using the provided commands. Ensure you have Node.js, an AWS account, and Git installed beforehand.

Key features

Key features include a visual flow editor for AI workflow design, a unified command system for AI operations, secure authentication and authorization, real-time workflow execution, and comprehensive audit logging. Upcoming features will enhance prompt management and state persistence.

Where to use

Brains-MCP can be used in various fields including AI development, machine learning research, and any application requiring orchestration of AI workflows and management of Large Language Models.

Content

BRAINS OS - version MCP

A modern, serverless operating system for AI systems and agents, built with SST, React, and TypeScript. This project provides a robust framework for managing Large Language Models (LLMs) and specialized AI agents through the MCP (Model Control Protocol) with a unified command system and shared operating template.

Overview

Brains MCP is designed to:

  • Manage and orchestrate AI workflows through a visual interface
  • Provide a unified command system for AI operations
  • Enable secure, scalable deployment of AI subminds
  • Support comprehensive prompt management and benchmarking
  • Maintain strict data ownership and audit capabilities

Key Features

Current Version

  • Visual flow editor for AI workflow design
  • Unified command system for AI operations
  • Secure authentication and authorization
  • Real-time workflow execution
  • Comprehensive audit logging

Coming Soon

  • Advanced prompt library with benchmarking capabilities
  • MCP (Model Control Protocol) client/server implementation
  • Enhanced state management and persistence
  • Extended model support and integration
  • Advanced templating system

Architecture

The system is built on modern cloud-native technologies:

  • Frontend: React with TypeScript and Flow-based UI
  • Backend: AWS Lambda functions
  • Authentication: AWS Cognito
  • Database: DynamoDB
  • Infrastructure: SST (Serverless Stack)

Getting Started

Prerequisites

  • Node.js (v16 or later)
  • AWS account with configured credentials
  • Git

Installation

  1. Clone the repository:

    git clone [repository-url]
    cd brains-mcp
    
  2. Install dependencies:

    npm install
    
  3. Start the development server:

    npx sst dev
    

Test Environment Setup

  1. Create your test environment file:

    cp .env.test.example .env.test
    chmod 600 .env.test  # Set secure file permissions
    
  2. Configure your test environment by editing .env.test:

    # API Configuration
    API_STAGE=dev
    API_VERSION=latest
    API_BASE_URL=https://dev-api.yoururl-in-aws-route53.com
    
    # AWS Cognito Authentication (Required)
    [email protected]
    COGNITO_PASSWORD=your_test_password
    USER_POOL_ID=us-east-1_xxxxxx
    APP_CLIENT_ID=xxxxxxxxxxxxxxxxxx
    COGNITO_REGION=us-east-1
    IDENTITY_POOL_ID=us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    API_GATEWAY_REGION=us-east-1
    
  3. Verify your test setup:

    # Run a basic test to verify configuration
    ./packages/brainsOS/test_scripts/mcp/test_tools.sh
    

Security Notes

  • Never commit .env.test to version control
  • Keep test credentials secure and rotate them regularly
  • Ensure .env.test has correct permissions (600)
  • Review test scripts for any hardcoded sensitive data
  • Use separate test credentials from production

Test Script Organization

packages/brainsOS/test_scripts/
├── mcp/                    # MCP-specific test scripts
├── resources/             # Resource API test scripts
├── services/             # Service API test scripts
└── test_utils.sh         # Common test utilities

Running Tests

  1. Individual test scripts:

    # Run specific test suite
    ./packages/brainsOS/test_scripts/mcp/test_tools.sh
    
    # Run with specific starting point
    ./packages/brainsOS/test_scripts/mcp/test_tools.sh -5  # Start from step 5
    
  2. Interactive features:

    • Press [Enter] to continue to next test
    • Press [R] to retry the last command
    • Press [Q] to quit the test suite
  3. Reviewing results:

    • ✅ indicates passed tests
    • ❌ indicates failed tests
    • ⚠️ indicates warnings or important notices

Troubleshooting

  1. Permission Issues:

    # Reset file permissions
    chmod 600 .env.test
    chmod 755 packages/brainsOS/test_scripts/*.sh
    
  2. Authentication Errors:

    • Verify Cognito credentials in .env.test
    • Check API endpoint configuration
    • Ensure AWS region settings are correct
  3. Common Issues:

    • Token expiration: Scripts handle this automatically
    • Rate limiting: Built-in delays prevent API throttling
    • Missing environment variables: Validation will catch these

Project Structure

brains-mcp/
├── packages/
│   ├── frontend/           # React-based flow editor
│   │   ├── src/
│   │   │   ├── components/
│   │   │   ├── nodes/
│   │   │   └── core/
│   │   └── ...
│   └── brainsOS/          # Core backend system
│       ├── commands/      # Command implementations
│       ├── core/         # Core services
│       ├── functions/    # API functions
│       └── utils/        # Shared utilities
├── infra/                # Infrastructure code
└── sst.config.ts        # SST configuration

Development

Local Development

npx sst dev

Deployment

npx sst deploy --stage <stage>

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

[License Type] - See LICENSE file for details

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers