Compare commits

...

6 Commits

Author SHA1 Message Date
jango-blockchained
4fff318ea9 docs: Enhance documentation deployment and site configuration
- Update MkDocs configuration with new features and plugins
- Add deployment guide for documentation
- Restructure documentation navigation and index page
- Create GitHub Actions workflow for automatic documentation deployment
- Fix typos in site URLs and configuration
2025-02-05 21:07:39 +01:00
jango-blockchained
ea6efd553d feat: Add speech-to-text example and documentation
- Create comprehensive README for speech-to-text integration
- Implement example script demonstrating wake word detection and transcription
- Add Windows batch script for MCP server startup
- Include detailed usage instructions, customization options, and troubleshooting guide
2025-02-05 20:32:07 +01:00
jango-blockchained
d45ef5c622 docs: Update MkDocs site configuration for Advanced Home Assistant MCP
- Rename site name to "Advanced Home Assistant MCP"
- Update site and repository URLs to match new project
- Modify copyright year and attribution
2025-02-05 12:58:44 +01:00
jango-blockchained
9358f83229 docs: Add Smithery AI badge to project README 2025-02-05 12:52:57 +01:00
jango-blockchained
e49d31d725 docs: Enhance GitHub Actions documentation deployment workflow
- Improve documentation deployment process with more robust Git configuration
- Add explicit Git user setup for GitHub Actions
- Modify deployment script to create a clean gh-pages branch
- Ensure precise documentation site generation and deployment
2025-02-05 12:46:17 +01:00
jango-blockchained
13a27e1d00 docs: update MkDocs configuration and documentation structure
- Refactor mkdocs.yml with new project name and simplified configuration
- Update GitHub Actions workflow to use MkDocs Material deployment
- Add new configuration files for Claude Desktop
- Reorganize documentation navigation and structure
- Update CSS and JavaScript references
2025-02-05 12:44:26 +01:00
15 changed files with 239 additions and 113 deletions

View File

@@ -1,64 +1,38 @@
name: Deploy Documentation to GitHub Pages
name: Deploy MkDocs
on:
push:
branches:
- main
paths:
- 'docs/**'
- '.github/workflows/deploy-docs.yml'
- main # or master, depending on your default branch
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment
concurrency:
group: "pages"
cancel-in-progress: true
contents: write
jobs:
build:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@v1
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
ruby-version: '3.2'
bundler-cache: true
cache-version: 0
- name: Setup Pages
uses: actions/configure-pages@v4
python-version: '3.x'
- name: Install dependencies
run: |
cd docs
bundle install
- name: Build site
pip install mkdocs-material
pip install mkdocs-git-revision-date-localized-plugin
pip install mkdocstrings[python]
- name: Configure Git
run: |
cd docs
bundle exec jekyll build
env:
JEKYLL_ENV: production
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: docs/_site
deploy:
needs: build
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
- name: Build docs
run: mkdocs build
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
run: |
git checkout --orphan gh-pages
git rm -rf .
mv site/* .
rm -rf site
git add .
git commit -m "docs: Update documentation"
git push origin gh-pages --force

View File

@@ -1,8 +1,6 @@
# MCP Server for Home Assistant 🏠🤖
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
[![Bun](https://img.shields.io/badge/bun-%3E%3D1.0.26-black)](https://bun.sh)
[![TypeScript](https://img.shields.io/badge/typescript-%5E5.0.0-blue.svg)](https://www.typescriptlang.org)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Bun](https://img.shields.io/badge/bun-%3E%3D1.0.26-black)](https://bun.sh) [![TypeScript](https://img.shields.io/badge/typescript-%5E5.0.0-blue.svg)](https://www.typescriptlang.org) [![smithery badge](https://smithery.ai/badge/@jango-blockchained/advanced-homeassistant-mcp)](https://smithery.ai/server/@jango-blockchained/advanced-homeassistant-mcp)
## Overview 🌐

38
docs/.github/workflows/deploy-docs.yml vendored Normal file
View File

@@ -0,0 +1,38 @@
name: Deploy MkDocs
on:
push:
branches:
- main
- master
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install mkdocs-material
pip install mkdocs-minify-plugin
pip install mkdocs-git-revision-date-plugin
pip install mkdocs-mkdocstrings
pip install mkdocs-social-plugin
pip install mkdocs-redirects
- name: Deploy
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
mkdocs gh-deploy --force

View File

@@ -130,25 +130,25 @@ Basic rate limiting is implemented:
async function controlDevice(entityId: string, command: string, params?: Record<string, unknown>) {
try {
const response = await fetch('/api/control', {
method: 'POST',
headers: {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${token}`
},
body: JSON.stringify({
},
body: JSON.stringify({
entity_id: entityId,
command,
parameters: params
})
});
})
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.message);
}
return await response.json();
} catch (error) {
} catch (error) {
console.error('Device control failed:', error);
throw error;
}

View File

@@ -231,4 +231,12 @@ The current API version is v1. Include the version in the URL:
- [SSE API Details](sse.md) - In-depth SSE documentation
- [Core Functions](core.md) - Detailed endpoint documentation
- [Architecture Overview](../architecture.md) - System design details
- [Troubleshooting](../troubleshooting.md) - Common issues and solutions
- [Troubleshooting](../troubleshooting.md) - Common issues and solutions
# API Reference
The Advanced Home Assistant MCP provides several APIs for integration and automation:
- [Core API](core-api.md) - Primary interface for system control
- [SSE API](sse.md) - Server-Sent Events for real-time updates
- [Core Functions](core.md) - Essential system functions

103
docs/deployment.md Normal file
View File

@@ -0,0 +1,103 @@
# Deployment Guide
This documentation is automatically deployed to GitHub Pages using GitHub Actions. Here's how it works and how to manage deployments.
## Automatic Deployment
The documentation is automatically deployed when changes are pushed to the `main` or `master` branch. The deployment process:
1. Triggers on push to main/master
2. Sets up Python environment
3. Installs required dependencies
4. Builds the documentation
5. Deploys to the `gh-pages` branch
### GitHub Actions Workflow
The deployment is handled by the workflow in `.github/workflows/deploy-docs.yml`:
```yaml
name: Deploy MkDocs
on:
push:
branches:
- main
- master
```
## Manual Deployment
If needed, you can deploy manually using:
```bash
# Install dependencies
pip install -r docs/requirements.txt
# Deploy to GitHub Pages
mkdocs gh-deploy --force
```
## Best Practices
### 1. Documentation Updates
- Test locally before pushing: `mkdocs serve`
- Verify all links work
- Ensure images are optimized
- Check mobile responsiveness
### 2. Version Control
- Keep documentation in sync with code versions
- Use meaningful commit messages
- Tag important documentation versions
### 3. Content Guidelines
- Use consistent formatting
- Keep navigation structure logical
- Include examples where appropriate
- Maintain up-to-date screenshots
### 4. Maintenance
- Regularly review and update content
- Check for broken links
- Update dependencies
- Monitor GitHub Actions logs
## Troubleshooting
### Common Issues
1. **Failed Deployments**
- Check GitHub Actions logs
- Verify dependencies are up to date
- Ensure all required files exist
2. **Broken Links**
- Run `mkdocs build --strict`
- Use relative paths in markdown
- Check case sensitivity
3. **Style Issues**
- Verify theme configuration
- Check CSS customizations
- Test on multiple browsers
## Configuration Files
### requirements.txt
Create a requirements file for documentation dependencies:
```txt
mkdocs-material
mkdocs-minify-plugin
mkdocs-git-revision-date-plugin
mkdocs-mkdocstrings
mkdocs-social-plugin
mkdocs-redirects
```
## Monitoring
- Check [GitHub Pages settings](https://github.com/jango-blockchained/advanced-homeassistant-mcp/settings/pages)
- Monitor build status in Actions tab
- Verify site accessibility

View File

@@ -0,0 +1,8 @@
# Getting Started
Welcome to the Advanced Home Assistant MCP getting started guide. Follow these steps to begin:
1. [Installation](installation.md)
2. [Configuration](configuration.md)
3. [Docker Setup](docker.md)
4. [Quick Start](quickstart.md)

View File

@@ -4,9 +4,18 @@ title: Home
nav_order: 1
---
# 🏠 MCP Server for Home Assistant
# Advanced Home Assistant MCP
Welcome to the Model Context Protocol (MCP) Server documentation! This guide will help you get started with integrating a lightweight automation tool with your Home Assistant setup.
Welcome to the Advanced Home Assistant Master Control Program documentation.
This documentation provides comprehensive information about setting up, configuring, and using the Advanced Home Assistant MCP system.
## Quick Links
- [Getting Started](getting-started/index.md)
- [API Reference](api/index.md)
- [Configuration Guide](getting-started/configuration.md)
- [Docker Setup](getting-started/docker.md)
## What is MCP Server?

1
docs/requirements.txt Normal file
View File

@@ -0,0 +1 @@

View File

@@ -1,23 +1,19 @@
site_name: Home Assistant MCP
site_description: A bridge between Home Assistant and Language Learning Models
site_url: https://jango-blockchained.github.io/advanced-homeassistant-mcp/
site_name: Advanced Home Assistant MCP
site_url: https://jango-blockchained.github.io/advanced-homeassistant-mcp
repo_url: https://github.com/jango-blockchained/advanced-homeassistant-mcp
repo_name: jango-blockchained/advanced-homeassistant-mcp
theme:
name: material
logo: assets/images/logo.png
favicon: assets/images/favicon.ico
palette:
- media: "(prefers-color-scheme: light)"
scheme: default
- scheme: default
primary: indigo
accent: indigo
toggle:
icon: material/brightness-7
name: Switch to dark mode
- media: "(prefers-color-scheme: dark)"
scheme: slate
- scheme: slate
primary: indigo
accent: indigo
toggle:
@@ -32,65 +28,52 @@ theme:
- search.suggest
- search.highlight
- content.code.copy
- content.tabs.link
- content.tooltips
- toc.integrate
markdown_extensions:
- admonition
- attr_list
- def_list
- footnotes
- meta
- toc:
permalink: true
- pymdownx.arithmatex:
generic: true
- pymdownx.betterem:
smart_enable: all
- pymdownx.caret
- pymdownx.details
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji
emoji_generator: !!python/name:material.extensions.emoji.to_svg
- pymdownx.highlight:
anchor_linenums: true
- pymdownx.inlinehilite
- pymdownx.keys
- pymdownx.magiclink
- pymdownx.mark
- pymdownx.smartsymbols
- pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_code_format
- pymdownx.tabbed:
alternate_style: true
- pymdownx.tasklist:
custom_checkbox: true
- pymdownx.tilde
- pymdownx.snippets
- pymdownx.superfences
- admonition
- pymdownx.details
- attr_list
- md_in_html
- pymdownx.emoji
- pymdownx.tasklist
- footnotes
- tables
plugins:
- search
- git-revision-date-localized:
type: date
- minify:
minify_html: true
- git-revision-date
- mkdocstrings:
default_handler: python
handlers:
python:
options:
show_source: true
- social
- tags
- redirects
- gh-deploy
nav:
- Home: index.md
- Usage: usage.md
- Configuration:
- Claude Desktop Config: claude_desktop_config.md
- Client Config: client_config.md
- Getting Started:
- Overview: getting-started.md
- Overview: getting-started/index.md
- Installation: getting-started/installation.md
- Configuration: getting-started/configuration.md
- Docker Setup: getting-started/docker.md
- Quick Start: getting-started/quickstart.md
- Usage: usage.md
- API Reference:
- Overview: api/index.md
- Core API: api.md
- Core API: api/core-api.md
- SSE API: api/sse.md
- Core Functions: api/core.md
- Tools:
@@ -118,6 +101,7 @@ nav:
- Interfaces: development/interfaces.md
- Tool Development: development/tools.md
- Testing Guide: testing.md
- Deployment Guide: deployment.md
- Architecture: architecture.md
- Contributing: contributing.md
- Troubleshooting: troubleshooting.md
@@ -136,6 +120,9 @@ extra:
property: !ENV GOOGLE_ANALYTICS_KEY
extra_css:
- assets/stylesheets/extra.css
- stylesheets/extra.css
copyright: Copyright &copy; 2024 Jango Blockchained
extra_javascript:
- javascripts/extra.js
copyright: Copyright &copy; 2025 jango-blockchained