community-bot
OfficialREADME.md
# MCP-Enabled Community Assistant Bot
An MCP-powered Discord Bot that interfaces with the Gaia Skill Tree canonical registry (`gaia.json`).
## Architecture
This package implements a modular client-server structure:
1. **MCP Server** (`src/mcp-server.ts`): Wraps `/graph/gaia.json` as a Model Context Protocol tool provider, exposing:
- `search_skills`: Searches skills by name/description.
- `get_skill_by_name`: Returns full metadata and evidence for a specific skill.
- `list_badges`: Lists badge tiers and criteria.
- `verify_evidence`: Audits/verifies evidence chains for a skill.
2. **Discord Bot** (`src/discord-bot.ts`): Acts as the MCP client, spawning the MCP server as a subprocess and mapping Discord slash commands (`/gaia <subcommand>`) to tool execution.
## Getting Started
### Local Setup
1. Copy `.env.example` to `.env` and fill in the variables:
```bash
cp .env.example .env
```
Required fields:
- `DISCORD_TOKEN`: Your Discord Bot token.
- `DISCORD_CLIENT_ID`: Your Discord application's client ID.
- `GAIA_GRAPH_URL`: Optional (defaults to `https://gaia.tiongson.co/graph/gaia.json`).
2. Install dependencies:
```bash
npm install
```
3. Build and compile:
```bash
npm run build
```
4. Start the Discord bot:
```bash
npm start
```
### Docker Setup
You can build and deploy the bot containerized with Docker:
```bash
# Build & start container
docker compose up -d --build
```
Ensure that the `.env` file is present in this directory before running docker compose.
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessSyncing