Content
# buefy-mcp
A lightweight, token-efficient local MCP server that exposes the full [Buefy 3](https://buefy.org) component documentation to any MCP-compatible client (Claude Code, Claude Desktop, Cursor, Cline, Windsurf, etc.).
## Tools
| Tool | Description |
| ------------------------ | -------------------------------------------------------- |
| `buefy_list_components` | List all 42 components with one-line descriptions |
| `buefy_get_component` | Full docs for a component: props, events, slots, methods |
| `buefy_search` | Search across all component docs by keyword |
| `buefy_get_installation` | Installation and setup instructions |
## Setup
```sh
npm install
```
## Usage
```sh
node index.js
```
## Updating the bundled docs
Re-downloads `data/mcp.txt` from the Buefy `dev` branch:
```sh
npm run update-data
```
## Configuration
### Claude Code (project)
Add to `.claude/settings.json`:
```json
{
"mcpServers": {
"buefy": {
"command": "node",
"args": ["/absolute/path/to/buefy-mcp/index.js"],
"type": "stdio"
}
}
}
```
### Claude Desktop
Add to `claude_desktop_config.json`:
```json
{
"mcpServers": {
"buefy": {
"command": "node",
"args": ["/absolute/path/to/buefy-mcp/index.js"]
}
}
}
```
### After publishing to npm
```json
{
"mcpServers": {
"buefy": {
"command": "npx",
"args": ["-y", "buefy-mcp"]
}
}
}
```
## Testing
```sh
# List tools
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | node index.js
# Get BButton docs
echo '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"buefy_get_component","argumentnpm {"component_name":"BButton"}}}' | node index.js
# Interactive inspector
npx @modelcontextprotocol/inspector node index.js
```