|
| 1 | +--- |
| 2 | +id: build-mcp |
| 3 | +title: Build MCP |
| 4 | +sidebar_label: Build MCP |
| 5 | +doc-type: how-to |
| 6 | +description: "Set up the Build MCP server so your AI coding assistant can search Avalonia guides, tutorials, and API references directly." |
| 7 | +keywords: |
| 8 | + - mcp |
| 9 | + - model context protocol |
| 10 | + - ai assistant |
| 11 | + - documentation |
| 12 | + - copilot |
| 13 | + - claude |
| 14 | + - cursor |
| 15 | + - windsurf |
| 16 | + - gemini |
| 17 | + - ai tools |
| 18 | +tags: |
| 19 | + - mcp |
| 20 | + - ai |
| 21 | +--- |
| 22 | + |
| 23 | +import Tabs from '@theme/Tabs'; |
| 24 | +import TabItem from '@theme/TabItem'; |
| 25 | + |
| 26 | +## What is Build MCP? |
| 27 | + |
| 28 | +The Build MCP server gives your AI coding assistant direct access to the Avalonia documentation. Instead of relying on training data that may be outdated or incomplete, your assistant can search guides, tutorials, and API references in real time and return answers grounded in the official docs. |
| 29 | + |
| 30 | +Build MCP is **free to use** and requires no license key or local installation. It runs as a remote server, so setup takes only a few seconds in any MCP-compatible editor or CLI tool. |
| 31 | + |
| 32 | +For a general introduction to MCP, see [AI Tools](/tools/ai-tools/). |
| 33 | + |
| 34 | +## Available tools |
| 35 | + |
| 36 | +The Build MCP server exposes two tools to your AI assistant: |
| 37 | + |
| 38 | +| Tool | Description | |
| 39 | +|------|-------------| |
| 40 | +| `search_avalonia_docs` | Searches the full Avalonia documentation, including API references, tutorials, guides, and migration docs. Accepts a natural language query and returns matching results with source links. | |
| 41 | +| `lookup_avalonia_api` | Looks up a specific Avalonia class, property, method, or event in the API reference. Use this for targeted API queries such as `TextBlock`, `Window.Show`, or `StyledProperty`. | |
| 42 | + |
| 43 | +## Setting up the MCP server |
| 44 | + |
| 45 | +Build MCP uses a remote URL endpoint. Your editor connects to the server over HTTP, so there is nothing to install locally. |
| 46 | + |
| 47 | +Choose your editor or CLI tool below: |
| 48 | + |
| 49 | +<Tabs groupId="editor"> |
| 50 | +<TabItem value="vscode" label="VS Code"> |
| 51 | + |
| 52 | +**Option A: Command palette** |
| 53 | + |
| 54 | +1. Open the command palette (`Ctrl+Shift+P` / `Cmd+Shift+P`). |
| 55 | +2. Run **MCP: Add Server**. |
| 56 | +3. Select **HTTP** as the server type. |
| 57 | +4. Enter `https://docs-mcp.avaloniaui.net/mcp` as the URL. |
| 58 | +5. Set the server name to `avalonia-docs`. |
| 59 | +6. Choose whether to install the server for this workspace or globally. |
| 60 | + |
| 61 | +**Option B: Manual configuration** |
| 62 | + |
| 63 | +Add the following to `.vscode/mcp.json` in your workspace root: |
| 64 | + |
| 65 | +```json title=".vscode/mcp.json" |
| 66 | +{ |
| 67 | + "servers": { |
| 68 | + "avalonia-docs": { |
| 69 | + "type": "http", |
| 70 | + "url": "https://docs-mcp.avaloniaui.net/mcp" |
| 71 | + } |
| 72 | + } |
| 73 | +} |
| 74 | +``` |
| 75 | + |
| 76 | +</TabItem> |
| 77 | +<TabItem value="visual-studio" label="Visual Studio"> |
| 78 | + |
| 79 | +Visual Studio 2022 (17.x and later) supports MCP servers through `mcp.json` configuration files. |
| 80 | + |
| 81 | +Add the following to `.vscode/mcp.json` in your solution directory: |
| 82 | + |
| 83 | +```json title=".vscode/mcp.json" |
| 84 | +{ |
| 85 | + "servers": { |
| 86 | + "avalonia-docs": { |
| 87 | + "type": "http", |
| 88 | + "url": "https://docs-mcp.avaloniaui.net/mcp" |
| 89 | + } |
| 90 | + } |
| 91 | +} |
| 92 | +``` |
| 93 | + |
| 94 | +:::tip |
| 95 | +Visual Studio reads from the same `.vscode/mcp.json` path as VS Code. If you already configured it for VS Code, it works in Visual Studio automatically. |
| 96 | +::: |
| 97 | + |
| 98 | +</TabItem> |
| 99 | +<TabItem value="rider" label="Rider"> |
| 100 | + |
| 101 | +JetBrains Rider supports MCP servers through the AI Assistant plugin and the GitHub Copilot plugin. |
| 102 | + |
| 103 | +**Option A: Settings UI** |
| 104 | + |
| 105 | +1. Open **Settings** > **Tools** > **AI Assistant** > **MCP Servers**. |
| 106 | +2. Click **Add** and select **Streamable HTTP** as the transport type. |
| 107 | +3. Enter `https://docs-mcp.avaloniaui.net/mcp` as the URL. |
| 108 | +4. Set the server name to `avalonia-docs`. |
| 109 | + |
| 110 | +**Option B: Manual configuration** |
| 111 | + |
| 112 | +Create or edit `.idea/mcp.json` in your project directory: |
| 113 | + |
| 114 | +```json title=".idea/mcp.json" |
| 115 | +{ |
| 116 | + "servers": { |
| 117 | + "avalonia-docs": { |
| 118 | + "type": "http", |
| 119 | + "url": "https://docs-mcp.avaloniaui.net/mcp" |
| 120 | + } |
| 121 | + } |
| 122 | +} |
| 123 | +``` |
| 124 | + |
| 125 | +</TabItem> |
| 126 | +<TabItem value="cursor" label="Cursor"> |
| 127 | + |
| 128 | +Add the following to `.cursor/mcp.json` in your project directory, or to `~/.cursor/mcp.json` for global configuration: |
| 129 | + |
| 130 | +```json title=".cursor/mcp.json" |
| 131 | +{ |
| 132 | + "mcpServers": { |
| 133 | + "avalonia-docs": { |
| 134 | + "url": "https://docs-mcp.avaloniaui.net/mcp" |
| 135 | + } |
| 136 | + } |
| 137 | +} |
| 138 | +``` |
| 139 | + |
| 140 | +</TabItem> |
| 141 | +<TabItem value="windsurf" label="Windsurf"> |
| 142 | + |
| 143 | +Add the following to `~/.codeium/windsurf/mcp_config.json`: |
| 144 | + |
| 145 | +```json title="~/.codeium/windsurf/mcp_config.json" |
| 146 | +{ |
| 147 | + "mcpServers": { |
| 148 | + "avalonia-docs": { |
| 149 | + "serverUrl": "https://docs-mcp.avaloniaui.net/mcp" |
| 150 | + } |
| 151 | + } |
| 152 | +} |
| 153 | +``` |
| 154 | + |
| 155 | +</TabItem> |
| 156 | +<TabItem value="claude-code" label="Claude Code"> |
| 157 | + |
| 158 | +Run this command in your terminal: |
| 159 | + |
| 160 | +```bash |
| 161 | +claude mcp add --transport http avalonia-docs https://docs-mcp.avaloniaui.net/mcp |
| 162 | +``` |
| 163 | + |
| 164 | +To verify it was added: |
| 165 | + |
| 166 | +```bash |
| 167 | +claude mcp list |
| 168 | +``` |
| 169 | + |
| 170 | +</TabItem> |
| 171 | +<TabItem value="claude-desktop" label="Claude Desktop"> |
| 172 | + |
| 173 | +1. Open **Settings** > **Developer** and click **Edit Config**. |
| 174 | +2. Add the Build MCP server to `claude_desktop_config.json`: |
| 175 | + |
| 176 | +```json |
| 177 | +{ |
| 178 | + "mcpServers": { |
| 179 | + "avalonia-docs": { |
| 180 | + "type": "url", |
| 181 | + "url": "https://docs-mcp.avaloniaui.net/mcp" |
| 182 | + } |
| 183 | + } |
| 184 | +} |
| 185 | +``` |
| 186 | + |
| 187 | +3. Save the file and restart Claude Desktop. |
| 188 | + |
| 189 | +</TabItem> |
| 190 | +<TabItem value="gemini-cli" label="Gemini CLI"> |
| 191 | + |
| 192 | +Add the following to `~/.gemini/settings.json` (or the project-level `.gemini/settings.json`): |
| 193 | + |
| 194 | +```json title="~/.gemini/settings.json" |
| 195 | +{ |
| 196 | + "mcpServers": { |
| 197 | + "avalonia-docs": { |
| 198 | + "httpUrl": "https://docs-mcp.avaloniaui.net/mcp" |
| 199 | + } |
| 200 | + } |
| 201 | +} |
| 202 | +``` |
| 203 | + |
| 204 | +</TabItem> |
| 205 | +</Tabs> |
| 206 | + |
| 207 | +## Verify the connection |
| 208 | + |
| 209 | +After configuring the MCP server, verify it is working: |
| 210 | + |
| 211 | +1. **Check the server is listed.** Open your editor's MCP panel or status indicator and confirm `avalonia-docs` appears as a connected server. In VS Code, run **MCP: List Servers** from the command palette. |
| 212 | +2. **Test with a prompt.** Ask your AI assistant: |
| 213 | + |
| 214 | +```text |
| 215 | +"Search the Avalonia docs for how to set up data binding." |
| 216 | +``` |
| 217 | + |
| 218 | +If the assistant returns documentation results with source links, setup is complete. |
| 219 | + |
| 220 | +## Troubleshooting |
| 221 | + |
| 222 | +### MCP server does not appear in the editor |
| 223 | + |
| 224 | +- **Restart your editor** after adding or modifying the MCP configuration file. Most editors require a restart to detect new MCP servers. |
| 225 | +- **Check the config file location.** Each editor expects the configuration in a specific path. See the setup instructions for your editor above. |
| 226 | +- **Validate your JSON.** A syntax error in the configuration file (missing comma, trailing comma, unmatched brace) will silently prevent the server from loading. |
| 227 | + |
| 228 | +### Server appears but tools are not available |
| 229 | + |
| 230 | +- **Confirm your editor supports HTTP transport.** Some older editor versions only support STDIO-based MCP servers. Update your editor to the latest version. |
| 231 | +- **Check network connectivity.** The server is hosted at `docs-mcp.avaloniaui.net`. Verify you can reach this domain from your network. |
| 232 | + |
| 233 | +### Results seem outdated |
| 234 | + |
| 235 | +The Build MCP server indexes the published Avalonia documentation. If you notice outdated content, the documentation site may not have been updated yet. Check [docs.avaloniaui.net](https://docs.avaloniaui.net) directly to confirm. |
| 236 | + |
| 237 | +## Usage examples |
| 238 | + |
| 239 | +Describe what you want to accomplish in natural language. The AI assistant calls the MCP tools automatically: |
| 240 | + |
| 241 | +**Searching documentation:** |
| 242 | + |
| 243 | +```text |
| 244 | +"Search the Avalonia docs for how to use TreeView with data binding." |
| 245 | +``` |
| 246 | + |
| 247 | +**Looking up API types:** |
| 248 | + |
| 249 | +```text |
| 250 | +"Look up the Avalonia TextBlock control in the API reference." |
| 251 | +``` |
| 252 | + |
| 253 | +**Migration guidance:** |
| 254 | + |
| 255 | +```text |
| 256 | +"Search the Avalonia docs for how to migrate from WPF to Avalonia." |
| 257 | +``` |
| 258 | + |
| 259 | +**Finding tutorials:** |
| 260 | + |
| 261 | +```text |
| 262 | +"Find an Avalonia tutorial on building an MVVM application." |
| 263 | +``` |
| 264 | + |
| 265 | +## See also |
| 266 | + |
| 267 | +- [AI Tools overview](/tools/ai-tools/) |
| 268 | +- [DevTools MCP](/tools/developer-tools/mcp) |
| 269 | +- [Parcel MCP](/tools/parcel/mcp) |
0 commit comments