AL-Go MCP Server
A Model Context Protocol (MCP) server that provides intelligent access to AL-Go documentation, workflows, and domain expertise for Business Central development automation.
Repository
🔗 GitHub Repository: https://github.com/louagej/al-go-mcp-server 📦 npm Package: https://www.npmjs.com/package/al-go-mcp-server
Features
- Domain Specialists: 16 AL-Go expert profiles covering every major workflow area (app creation, CI/CD, release management, testing, deployment, and more)
- Knowledge Integration: Links specialists to AL-Go scenarios, workshop content, GitHub Discussions, and resolved Issues
- Ranked Search: BM25 relevance ranking (with title and path boosts) for documentation, issues, discussions, and cross-source semantic search
- Knowledge Graph: Visualize relationships between specialists and knowledge sources, with cluster detection
- Smart Caching: One shared cache for all GitHub data (docs: 24h, discussions: 6h, issues: 12h) with hit/miss statistics; documentation is downloaded without using the GitHub API rate limit
- AL-Go Documentation: Search through comprehensive AL-Go guides and workflow templates
- Optional Authentication: GitHub token support for higher rate limits and full API access
Installation
With npm
# Install globally for command line usage
npm install -g al-go-mcp-server
# Or use directly with npx (no installation required)
npx al-go-mcp-server
Usage
VS Code with MCP Extension (Recommended)
You can configure the AL-Go MCP server in two ways:
Option 1: User Settings (Recommended)
Add to your User MCP Configuration for access across all projects in the same VS Code profile:
Note: User settings are profile-specific. The server will be available for all projects opened with the same VS Code profile (e.g., "Node.js", "Default", etc.).
- Open VS Code Command Palette (
Ctrl+Shift+P) - Run "MCP: Open User Configuration"
- Add the server configuration:
{
"servers": {
"al-go-docs": {
"type": "stdio",
"command": "npx",
"args": ["--yes", "al-go-mcp-server@latest"]
}
},
"inputs": []
}
Option 2: Project Settings
Add to your project's .vscode/mcp.json for project-specific configuration:
{
"servers": {
"al-go-docs": {
"type": "stdio",
"command": "npx",
"args": ["--yes", "al-go-mcp-server@latest"]
}
}
}
With GitHub Authentication (Recommended)
Provide a GitHub token for higher rate limits, and to enable discussion and issue search:
{
"servers": {
"al-go-docs": {
"type": "stdio",
"command": "npx",
"args": ["--yes", "al-go-mcp-server@latest"],
"env": {
"GITHUB_TOKEN": "your_github_token_here"
}
}
}
}
AL_GO_MCP_GITHUB_TOKEN is accepted as an alternative to GITHUB_TOKEN.
Claude Code
Add the server for all your projects:
claude mcp add --scope user al-go-docs -e GITHUB_TOKEN=your_github_token_here -- npx --yes al-go-mcp-server@latest
Specialist Agents (Optional)
The 16 specialists can be installed as agents in Claude Code (~/.claude/agents) and VS Code Copilot Chat (your VS Code user prompts folder, e.g. %APPDATA%CodeUserprompts on Windows), so they are available in every project.
Install once from the command line:
npx --yes al-go-mcp-server@latest --install-agents # every client found on this machine
npx --yes al-go-mcp-server@latest --install-agents=claude # Claude Code only
npx --yes al-go-mcp-server@latest --install-agents=vscode # VS Code only
Or let the server keep them up to date on every start by setting AL_GO_MCP_INSTALL_AGENTS to true, claude or vscode in its env:
"env": {
"AL_GO_MCP_INSTALL_AGENTS": "true"
}
- Claude Code: restart the session to load new agents. Claude delegates AL-Go questions to the matching specialist on its own, or you can ask for one:
use alg-rex to find out why my CI/CD workflow fails. Agents are listed under/agents. - VS Code: the agents appear in the Copilot Chat agent picker as
@alg-*. They call the server's tools asal-go-docs/*, so keepal-go-docsas the server name.
Updates
At startup the server checks npm for a newer version in the background (a single request with a 3-second timeout; it never delays startup or fails offline). When one is available, the next tool result ends with a one-line notice:
- npx with
@latest(the configurations above): restarting the MCP server is enough to get the new version. - Global install: the notice shows the
npm install -g al-go-mcp-server@latestcommand to run.
Agent files installed earlier (see Specialist Agents) are rewritten automatically when the server version changes, followed by a notice to restart the Claude Code session or reload the VS Code window. Only clients that already have AL-Go agents are touched, and only the alg-* files.
Set AL_GO_MCP_UPDATE_CHECK to off to disable the update check. The server uses npm_config_registry when it is set, so a company npm mirror works.
Command Line (Advanced)
# If installed globally
al-go-mcp-server
# Or using npx (no installation needed, always latest)
npx --yes al-go-mcp-server@latest
Available Tools
Documentation
Specialists
Tip: Address specialists directly in chat:
@alg-freddy my dev environment can't be reached— Copilot will callalg-askand Freddy responds with his avatar and expertise. This requires the agent files; see Specialist Agents.
Knowledge Sources
Advanced
Note: Tools in the Knowledge Sources and Advanced groups that call the GitHub API require a
GITHUB_TOKENto be set for full functionality.
Domain Specialists
The server includes 16 AL-Go domain specialists, each with mapped expertise, keywords, related scenarios, and related workflows:
Disclaimer: All persona names and avatars are randomly generated and entirely fictional. They do not represent, depict, or refer to any real person, living or deceased. Any resemblance to actual individuals is purely coincidental.
Development
# Clone the repository
git clone https://github.com/louagej/al-go-mcp-server.git
cd al-go-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Run tests
npm test
# Run locally
npm start
Contributing
We welcome contributions from the community! This project is open source and we appreciate all kinds of contributions.
Quick Start for Contributors
- Fork the repository and clone it locally
- Install dependencies:
npm install - Build the project:
npm run build - Run tests:
npm test— all tests must pass before submitting a PR - Make your changes following our contribution guidelines
- Submit a pull request with a clear description
Contribution Guidelines
Please read our CONTRIBUTING.md for detailed information about:
- Development setup and workflow
- Code style and standards
- Pull request process
- Security guidelines
- Review process
Security
For security-related issues, please review our Security Policy and report vulnerabilities responsibly.
Issues and Feature Requests
- Bug Reports: Use the issue template and provide detailed reproduction steps
- Feature Requests: Describe the feature and its use case clearly
- Questions: Use GitHub Discussions for general questions
License
MIT — see LICENSE file for details.
Links: