Architect

by rpurinton

330 downloads
Not rated
GitHub

About

A Discord.js app integrated with Model Context Protocol (MCP) server functionality to enable AI-driven Discord server administration and automation.

Details

Author
rpurinton
Downloads
330
Categories
Other, Infrastructure

- Dynamic slash command support and event handling via Discord.js
- Integrated MCP server exposing Discord admin functions as tools
- AI‑driven natural language automation leveraging OpenAI
- Localization with multi‑language support
- Redis caching and MySQL persistence for state and data
- Secure MCP HTTP interface with bearer token authentication
- Robust error handling, graceful shutdown, and production‑ready systemd service

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Architect
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install dependencies with npm install, copy and edit .env to set your Discord bot token, client ID, database credentials, MCP token, and logging preferences, then run node architect.mjs. Deploy as a systemd service using the provided template.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "architect": {
            "architect": {
                "command": "node",
                "args": [
                    "architect.mjs"
                ]
            }
        }
    }
}

McpServers

{
    "architect": {
        "command": "node",
        "args": [
            "architect.mjs"
        ]
    }
}

Architect

Architect is a modular, AI-empowered Discord.js bot designed for automated Discord server administration and management using the Model Context Protocol (MCP).

Features

- Discord bot with dynamic slash command support and event handling. - Integrated MCP server exposing Discord admin functions as MCP tools. - AI-driven natural language automation leveraging OpenAI. - Localization with multi-language support. - Robust error handling and graceful shutdown. - Uses Redis caching and MySQL persistence. - Secure MCP HTTP interface with bearer token authentication. - Production-ready with systemd service template.

Quick Start

1. Clone the repo:
   git clone https://github.com/rpurinton/architect.git
   cd architect
   
2. Install dependencies:
   npm install
   
3. Copy and configure environment variables:
   cp .env.example .env
   # Edit .env to set tokens, DB, Redis credentials etc.
   
4. Run:
   node architect.mjs
   

Configuration

Edit .env file to include your Discord bot token, client ID, database credentials, MCP token, and logging preferences.

| Variable | Description | Example |
|------------------|---------------------------------|---------------------|
| DISCORD_TOKEN | Discord bot token | abc123xyz |
| DISCORD_CLIENT_ID| Discord application client ID | 123456789 |
| DB_HOST | MySQL host | localhost |
| DB_USER | MySQL username | root |
| DB_PASS | MySQL password | secret |
| DB_NAME | MySQL database name | architect_db |
| REDIS_HOST | Redis cluster host | 127.0.0.1 |
| REDIS_PORT | Redis port | 6379 |
| MCP_TOKEN | Bearer token for MCP HTTP auth | secret-token |
| MCP_PORT | MCP HTTP server port | 9232 |
| LOG_LEVEL | Logging level (info, debug) | info |

Project Structure

/opt/architect
  39m  ├── architect.mjs          # Main app entry point
      ├── src/
      │   ├── commands/          # JSON command definitions and handlers
      │   ├── events/            # Event handlers for Discord.js
      │   ├── custom/            # MCP server, client, and tools
      │   ├── locales/           # Localization JSON
      │   ├── log.mjs            # Logger setup
      ├── exceptions.mjs     # Global exception handlers
      ├── shutdown.mjs       # Graceful shutdown handling
      └── discord.mjs        # Discord client creation
    
.env                   # Environment variables
architect.service      # systemd service file
└── docs/              # Developer documentation

Development

- See docs/ for detailed developer documentation. - Use npm test to run tests. - Write new commands in src/commands/. - Add event handlers in src/events/. - Add MCP tools in src/custom/tools/.

Deployment

- Use the included systemd service for running as a service. - Ensure .env is correctly configured with all credentials.

Troubleshooting

- Check logs for details, increase LOG_LEVEL for debug. - Validate Discord bot permissions. - Check connectivity to database and Redis.

Support & Resources

- Join our [Support Discord Server
- Visit our GitHub Project Repository

License

MIT License

Contact

Russell Purinton at <russell.purinton@gmail.com>

---

Please see docs/ for comprehensive documentation and contribution guidelines.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.