symbols-awakening-mcp

yogimathius/symbols-awakening-mcp

3.1

If you are the rightful owner of symbols-awakening-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Symbols Awakening MCP is a symbolic reasoning engine that serves as a Model Context Protocol (MCP) server for symbolic ontology operations.

Symbols Awakening MCP

A symbolic reasoning engine that serves as a Model Context Protocol (MCP) server for symbolic ontology operations.

๐Ÿš€ Quick Start

Installation & Usage

One-time usage (recommended):

# Run immediately without installation
npx symbols-awakening-mcp --help
npx symbols-awakening-mcp --version

# Start MCP server (for use with Claude Desktop, Cursor, etc.)
npx symbols-awakening-mcp

Global installation:

# Install globally
npm install -g symbols-awakening-mcp

# Use anywhere
symbols-awakening-mcp --help
symbols-awakening-mcp

MCP Client Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "symbols-awakening": {
      "command": "npx",
      "args": ["-y", "symbols-awakening-mcp"],
      "env": {
        "DATABASE_URL": "postgresql://user:password@localhost:5432/symbols_db"
      }
    }
  }
}
Cursor IDE

Add to your MCP configuration:

{
  "symbols-awakening": {
    "command": "npx",
    "args": ["-y", "symbols-awakening-mcp"],
    "env": {
      "DATABASE_URL": "postgresql://user:password@localhost:5432/symbols_db"
    }
  }
}

Local Development

# Clone and install dependencies
git clone https://github.com/yogimathius/symbols-awakening-mcp.git
cd symbols-awakening-mcp
pnpm install

# Set up database
cp .env.example .env
# Edit .env with your PostgreSQL connection

# Generate Prisma client and seed database
pnpm prisma generate
pnpm prisma db push
pnpm prisma db seed

# Run in development mode
pnpm dev

# Build for production
pnpm build

# Run tests
pnpm test

๐Ÿ“‹ Current Status

โœ… Completed Features

  • Project Setup: Modern TypeScript project with Vite and Vitest
  • CLI Binary: Executable via npx symbols-awakening-mcp
  • MCP Server: Basic MCP server with stdio transport
  • Type System: Comprehensive TypeScript interfaces for Symbol ontology
  • Testing: Vitest test framework with coverage reporting
  • Build System: Vite-based build with proper CLI binary generation
  • Development Tools: ESLint, TypeScript strict mode, hot reload

๐Ÿ”„ In Progress

  • Database layer implementation
  • Core MCP tools (get_symbols, search_symbols, etc.)
  • PostgreSQL integration
  • Data import/export functionality

๐Ÿ“ Planned Features

  • Symbol ontology database operations
  • Full-text search capabilities
  • Category-based filtering
  • Symbol relationship mapping
  • REST API (optional)
  • Data seeding and CSV import

๐Ÿ›  Technology Stack

  • Runtime: Node.js 18+
  • Language: TypeScript (strict mode)
  • Build Tool: Vite
  • Testing: Vitest with coverage
  • Database: PostgreSQL (planned)
  • Protocol: Model Context Protocol (MCP)
  • Transport: Stdio (for CLI usage)

๐Ÿ“– Usage

CLI Commands

# Show help
symbols-awakening-mcp --help

# Show version
symbols-awakening-mcp --version

# Start MCP server (default)
symbols-awakening-mcp

MCP Integration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "symbols-awakening": {
      "command": "npx",
      "args": ["-y", "symbols-awakening-mcp"]
    }
  }
}
Cursor IDE

Add to your MCP configuration:

{
  "symbols-awakening": {
    "command": "npx",
    "args": ["-y", "symbols-awakening-mcp"]
  }
}

๐Ÿงช Testing

# Run all tests
pnpm test

# Run tests in watch mode
pnpm test:watch

# Run tests with coverage
pnpm test:coverage

# Run tests with UI
pnpm test:ui

๐Ÿ— Development

Project Structure

symbols-awakening-mcp/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ __tests__/          # Test setup and utilities
โ”‚   โ”œโ”€โ”€ types/              # TypeScript interfaces
โ”‚   โ”‚   โ”œโ”€โ”€ Symbol.ts       # Core symbol types
โ”‚   โ”‚   โ””โ”€โ”€ Symbol.test.ts  # Type tests
โ”‚   โ”œโ”€โ”€ database/           # Database layer (planned)
โ”‚   โ”œโ”€โ”€ mcp/               # MCP server implementation (planned)
โ”‚   โ””โ”€โ”€ index.ts           # CLI entry point
โ”œโ”€โ”€ dist/                  # Built output
โ”œโ”€โ”€ docs/                  # Documentation
โ”œโ”€โ”€ data/                  # Sample data and seeds
โ””โ”€โ”€ scripts/               # Build and utility scripts

Development Rules

We follow strict development practices:

  • Test-Driven Development: Write tests first
  • TypeScript Strict Mode: No any types, full type safety
  • Continuous Verification: Tests and type-checking on every change
  • Code Quality: ESLint with strict rules

Available Scripts

pnpm build          # Build for production
pnpm dev            # Development mode with hot reload
pnpm test           # Run test suite
pnpm test:watch     # Run tests in watch mode
pnpm test:coverage  # Run tests with coverage report
pnpm test:ui        # Run tests with UI
pnpm type-check     # TypeScript type checking
pnpm lint           # Run ESLint
pnpm lint:fix       # Fix ESLint issues
pnpm clean          # Clean build artifacts

๐Ÿ”ง Configuration

Environment Variables

VariableDescriptionDefaultRequired
DATABASE_URLPostgreSQL connection string-Yes (when using database)
NODE_ENVEnvironment modedevelopmentNo

TypeScript Configuration

The project uses strict TypeScript settings:

  • Strict null checks
  • No implicit any
  • No unused locals/parameters
  • Exact optional property types
  • All strict compiler options enabled

๐Ÿ“š API Reference

Symbol Types

interface Symbol {
  id: string;
  name: string;
  category: string;
  description: string;
  interpretations: Record<string, string>;
  related_symbols: string[];
  properties: Record<string, unknown>;
}

interface SymbolSet {
  id: string;
  name: string;
  category: string;
  description: string;
  symbols: Record<string, unknown>;
}

MCP Tools (Planned)

  • get_symbols - List symbols with optional limit
  • search_symbols - Search symbols by text query
  • filter_by_category - Filter symbols by category
  • get_categories - Get all available categories
  • get_symbol_sets - List symbol sets
  • search_symbol_sets - Search symbol sets

๐Ÿค Contributing

  1. Follow the development rules in DEVELOPMENT_RULES.md
  2. Write tests first (TDD approach)
  3. Ensure TypeScript strict mode compliance
  4. Run the full test suite before committing
  5. Use conventional commit messages

๐Ÿ“„ License

Mozilla Public License 2.0 (MPL-2.0)

๐Ÿ”— Links