Semantic search over WSO2 docs (APIM, MI, Choreo, Ballerina) via RAG and pgvector.
MCPpedia last refreshed this data
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"wso2-docs": {
"env": {
"DATABASE_URL": "postgresql://wso2mcp:wso2mcp@localhost:5432/wso2docs",
"EMBEDDING_PROVIDER": "ollama"
},
"command": "wso2-docs-mcp-server"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
"This is an unofficial community project. Not affiliated with or endorsed by WSO2."
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'wso2-docs-mcp-server' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked wso2-docs-mcp-server against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in search
Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors
Web and local search using Brave Search API
Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.
Production ready MCP server with real-time search, extract, map & crawl.
MCP Security Weekly
Get CVE alerts and security updates for io.github.iamvirul/wso2-docs-mcp-server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
"This is an unofficial community project. Not affiliated with or endorsed by WSO2."
A production-ready Model Context Protocol (MCP) server that provides AI assistants (Claude Desktop, Claude Code, Cursor, VS Code) with semantic search over WSO2 documentation via Retrieval-Augmented Generation (RAG).
Under the hood, it uses a blazing-fast dual-ingestion engine:
| Product | ID | URL |
|---|---|---|
| API Manager | apim | https://apim.docs.wso2.com |
| Micro Integrator | mi | https://mi.docs.wso2.com/en/4.4.0 |
| Ballerina Integrator | bi | https://bi.docs.wso2.com |
| Choreo | choreo | https://wso2.com/choreo/docs |
| Identity Server | is | https://is.docs.wso2.com/en/latest |
| Ballerina | ballerina | https://ballerina.io/learn |
| WSO2 Library | library | https://wso2.com/library |
Choose the setup path that fits your use case:
Install the package globally to get the wso2-docs-mcp-server, wso2-docs-crawl, and wso2-docs-migrate commands available system-wide:
npm install -g wso2-docs-mcp-server
Prefer no global install? You can use
npx wso2-docs-mcp-server,npx wso2-docs-crawl, andnpx wso2-docs-migratein every step below - just replace the bare command with itsnpxequivalent.
Download the docker-compose.yml and start the database:
curl -O https://raw.githubusercontent.com/iamvirul/wso2-docs-mcp-server/main/docker-compose.yml
docker compose up -d
Install Ollama and pull the default embedding model:
ollama pull nomic-embed-text
ollama serve
No Ollama? Skip this step. The server automatically falls back to HuggingFace ONNX - model downloads on first use with no extra setup.
DATABASE_URL="postgresql://wso2mcp:wso2mcp@localhost:5432/wso2docs" \
wso2-docs-migrate
Run migration again whenever you change
EMBEDDING_DIMENSIONS(i.e. switch embedding provider). The script detects and handles dimension changes automatically.
# Index all products (first run downloads the embedding model automatically)
DATABASE_URL="postgresql://wso2mcp:wso2mcp@localhost:5432/wso2docs" \
wso2-docs-crawl
# Index a single product (faster, great for testing)
DATABASE_URL="postgresql://wso2mcp:wso2mcp@localhost:5432/wso2docs" \
wso2-docs-crawl --product ballerina --limit 20
# Force re-index even unchanged pages
DATABASE_URL="postgresql://wso2mcp:wso2mcp@localhost:5432/wso2docs" \
wso2-docs-crawl --force
Available product IDs: apim, mi, bi, choreo, is, ballerina, library
T