Directory Overview
Core Server (server/)
The server directory contains all backend logic built on top of AnythingLLM’s Express server.
API Endpoints (server/endpoints/api/)
Utilities (server/utils/)
Example: Credential Encryption
Platform credentials are encrypted server-side before storage:
CREDENTIALS_ENC_KEY_B64 environment variable (base64 of 32 bytes).
MCP Servers (scripts/)
MCP (Model Context Protocol) servers expose external services as tools to the AI agent.
See Extending MCP for details on adding new tools.
Dashboard (dashboard/)
React 18 SPA served from dashboard/dist/ at geniehelper.com/.
Key Files
Routes
Public routes:/— Home/pricing,/about,/register,/login
/app/dashboard— Main dashboard/app/media— Media library/app/calendar— Content calendar/app/fans— Fan management/app/analytics— Performance analytics/app/platforms— Platform connections/app/settings— User settings
/admin— Directus + AnythingLLM iframes/view-as— User impersonation
Build Process
serve dashboard/dist/ (pm2 name: genie-dashboard).
Media Worker (media-worker/)
BullMQ consumer that processes background jobs:
scrape_profile— Stagehand OF login + data extractionpublish_post— Stagehand-based cross-platform postingapply_watermark— ImageMagick watermarkingcreate_teaser— FFmpeg video preview generationpost_scheduler— Pollsscheduled_postsevery 60s
media-worker).
Storage (storage/)
AnythingLLM persistent data:
plugins/anythingllm_mcp_servers.json— MCP server configuration (see Extending MCP)- Document vectors, user data, workspaces
Related Files Reference
Agent & AI
server/utils/nodeRag.js—getOnboardingState()+getNodeContext()Nodes/Universe/taxonomy_graph.json— 3,205-node taxonomy graphNodes/User/— Per-user persona node storage
Planning & Tracking
.claude/todos— Phase backlog with agent assignments.claude/sessions/— EOD session logsdocs/nginx/— Nginx config references
Next Steps
Custom Actions
Create custom Action Runner flows
Extending MCP
Add new MCP tools and servers
