nodebb-plugin-integration
MCP server for NodeBB forums that enables AI assistants to access forum data, search topics, and perform semantic search via the Model Context Protocol.
README
NodeBB Integration Layer
AI integration layer for NodeBB forums with MCP, semantic search, RAG pipeline and Qdrant vector storage.
Features
- NodeBB integration adapter
- MCP (Model Context Protocol) server
- Semantic search
- RAG knowledge pipeline
- Qdrant vector database support
- OpenAI embeddings support
- Fake embeddings for local development
- Standalone development mode
- Automated tests with GitHub Actions
Architecture
NodeBB
|
|
Integration Layer
|
+-------------+-------------+
| |
MCP AI
| |
Tools API Embeddings
|
Qdrant
|
Knowledge Base
Requirements
- Node.js >= 20
- npm >= 10
Optional:
- NodeBB
- Redis
- Qdrant
- OpenAI API key
Installation
Clone repository:
git clone https://github.com/Sergey-ek/nodebb-plugin-integration.git
cd nodebb-plugin-integration
Install dependencies:
npm install
Create environment file:
cp .env.example .env
Development mode
By default the project uses fake embeddings:
AI_PROVIDER=fake
This allows running tests without:
- OpenAI
- Qdrant
- NodeBB
Run diagnostics:
npm run diagnose
Example:
{
environment: "development",
embeddings: {
provider: "fake",
size: 1536
}
}
Testing
Syntax check:
npm run check
Run tests:
npm test
Expected:
8 passing
NodeBB Integration
Configure:
NODEBB_URL=http://localhost:4567
NODEBB_API_KEY=your_token
When running inside NodeBB, the plugin uses native NodeBB modules.
Standalone mode provides safe fallback adapters.
AI Pipeline
Flow:
Forum post
|
Embedding generation
|
Vector storage
|
Qdrant similarity search
|
Knowledge retrieval
|
AI response
Supported providers:
Fake
Development mode:
AI_PROVIDER=fake
OpenAI
Production mode:
AI_PROVIDER=openai
OPENAI_API_KEY=your_key
Qdrant
Configure:
QDRANT_URL=http://localhost:6333
QDRANT_COLLECTION=nodebb_knowledge
The system automatically:
- checks collection;
- creates collection;
- stores vectors;
- performs similarity search.
MCP Server
Start MCP:
npm run mcp
Available tools:
get_forum_info
get_post
get_topic
get_user
search_knowledge
Example:
search_knowledge
{
"query": "installation guide",
"limit": 5
}
Project Structure
.
├── library.js
├── package.json
├── plugin.json
├── src
│ ├── ai
│ │ ├── embeddings.js
│ │ ├── openai.js
│ │ ├── qdrant.js
│ │ ├── indexer.js
│ │ └── search.js
│ │
│ ├── mcp
│ │ ├── server.js
│ │ └── tools.js
│ │
│ ├── nodebb
│ │ ├── meta.js
│ │ ├── posts.js
│ │ ├── topics.js
│ │ └── users.js
│ │
│ └── config
│ └── index.js
│
└── test
└── plugin.test.js
Security
Never commit:
.env
OPENAI_API_KEY
NODEBB_API_KEY
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.