@mp-consulting/homebridge-mcp-server
Provides tools to control Homebridge accessories, manage plugins, edit configuration, and monitor server status.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@mp-consulting/homebridge-mcp-serverTurn off the living room lights"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@mp-consulting/homebridge-mcp-server
MCP (Model Context Protocol) server for Homebridge — control your smart home accessories, manage plugins, edit configuration, and monitor your Homebridge server from AI assistants like Claude.
Features
Accessories — List, inspect, and control all your Homebridge accessories (lights, switches, thermostats, sensors, etc.)
Server Management — Check status, restart Homebridge, view pairing info, manage cached accessories
Configuration — Read and update your
config.jsonPlugins — List installed plugins, search npm, view config schemas and changelogs
System Info — CPU, memory, OS, and network details of the host machine
Related MCP server: hass-mcp-server
Prerequisites
Homebridge with homebridge-config-ui-x installed (provides the REST API)
Node.js 18+
Installation
npm install -g @mp-consulting/homebridge-mcp-serverConfiguration
The server requires three environment variables:
Variable | Description | Example |
| URL of your Homebridge UI |
|
| Homebridge UI login username |
|
| Homebridge UI login password |
|
Usage
Claude Desktop
Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"homebridge": {
"command": "homebridge-mcp-server",
"env": {
"HOMEBRIDGE_URL": "http://192.168.1.100:8581",
"HOMEBRIDGE_USERNAME": "admin",
"HOMEBRIDGE_PASSWORD": "your-password"
}
}
}
}Claude Code
claude mcp add homebridge -- homebridge-mcp-serverThen set the environment variables in your shell or .env file.
MCP Inspector (for testing)
HOMEBRIDGE_URL=http://192.168.1.100:8581 \
HOMEBRIDGE_USERNAME=admin \
HOMEBRIDGE_PASSWORD=your-password \
npx @modelcontextprotocol/inspector homebridge-mcp-serverAvailable Tools
Accessories
Tool | Description |
| List all accessories with current state. Supports filtering by |
| Get detailed info for a specific accessory |
| Control an accessory (on/off, brightness, temperature, etc.) |
| Get the room layout from the Homebridge UI |
Server
Tool | Description |
| Check if Homebridge is running |
| Get server version, uptime, Node.js version, OS details, and instance ID |
| Restart the Homebridge service |
| Get HomeKit pairing code / QR info |
| List cached accessories |
| Remove a specific cached accessory |
| Reset all cached accessories |
Configuration
Tool | Description |
| Read the current config.json |
| Update config.json (full replacement) |
Plugins
Tool | Description |
| List installed plugins |
| Search npm for Homebridge plugins |
| Get details about a specific plugin |
| Get available versions for a plugin |
| Get the configuration schema for a plugin |
| Get the changelog for a plugin |
System
Tool | Description |
| Get host system information (CPU, memory, OS) |
Example Prompts
Once configured, you can ask Claude things like:
"List all my smart home accessories and their current status"
"Turn off the living room lights"
"Set the bedroom thermostat to 21 degrees"
"What plugins are installed on my Homebridge?"
"Show me the Homebridge config"
"Is Homebridge running? What version?"
"Search for a Homebridge plugin for Philips Hue"
Development
git clone https://github.com/mp-consulting/homebridge-mcp-server.git
cd homebridge-mcp-server
npm install
npm run buildnpm run dev # Run with auto-reload (tsx)
npm test # Run tests
npm run test:watch # Run tests in watch modeLicense
MIT
Available Tools
20 toolsget_accessoryA
Get detailed information about a specific accessory by its uniqueId. Use list_accessories first to find the uniqueId.
| Name | Required | Description | Default |
|---|---|---|---|
| uniqueId | Yes | The unique identifier of the accessory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It implies a read operation via 'Get detailed information' but does not state read-only, permissions, or expected response structure. Adequate but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core purpose, and no extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, so description should hint at response content. It vaguely says 'detailed information' without specifics. For a simple single-param tool, it's adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear description. The description adds value by explaining how to obtain the uniqueId parameter via list_accessories, which goes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action: 'Get detailed information about a specific accessory by its uniqueId.' Distinguishes from sibling tools like list_accessories and set_accessory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to 'Use list_accessories first to find the uniqueId,' guiding the agent on prerequisite steps and which sibling to use for discovery.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_accessory_layoutA
Get the accessories room layout as configured in the Homebridge UI.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It states it gets layout data, implying a read-only operation without side effects. However, it does not disclose authentication needs, error behavior, or return format. For a simple getter, this is adequate but lacks the richness expected for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that contains no extraneous information. Every word contributes to clarifying the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no parameters and no output schema. The description explains what it does but does not describe the return value or structure. Given that no output schema exists, the description would ideally mention what the layout object contains or its format. This gap makes it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema description coverage is trivially 100%. With no parameters, the description does not need to add meaning beyond the schema. The baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'accessories room layout', specifying the source as 'configured in the Homebridge UI'. This distinguishes it from sibling tools like get_accessory (single accessory) and list_accessories (list without layout).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like list_accessories or get_config. However, with zero parameters and a clear purpose, the usage is implied: call it to retrieve the room layout. The lack of comparative context lowers the score to 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_cached_accessoriesA
List all cached accessories stored by Homebridge. These persist across restarts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It reveals that cached accessories persist across restarts, which is a key behavioral trait. However, it does not state whether the operation is read-only or require authentication.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, no fluff. Every word adds value: lists the action, the resource, and a notable property (persistence).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description covers the core purpose and an important behavioral detail. It could mention the return format, but this is not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, and schema description coverage is 100%. The description does not need to add parameter details; a baseline of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and identifies the resource ('cached accessories stored by Homebridge'), clearly distinguishing it from sibling tools like 'list_accessories' (general list) or 'get_accessory' (single item).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for viewing cached data but lacks explicit guidance on when to use this versus alternatives. However, given the tool's simplicity (no parameters), the implied context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_configA
Read the current Homebridge config.json file content. Returns the full configuration including bridge settings, accessories, and platforms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description clearly states it is a read operation and specifies the return contents (full configuration including bridge settings, accessories, and platforms), which adds behavioral context beyond the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no unnecessary detail; every sentence provides essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description adequately explains the return value for a simple read tool; it could be slightly more detailed about the structure but is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, the description adds value by explaining what the returned configuration contains, compensating for the lack of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the specific verb 'Read' and the resource 'current Homebridge config.json file content', clearly distinguishing it from sibling tools that focus on accessories, plugins, or status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or not use this tool compared to alternatives like get_system_info or get_homebridge_status; usage is implied from the purpose but not clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_homebridge_statusA
Check if Homebridge is running and get its current status (up/down, version, plugins status).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description takes full burden. It accurately describes a read-only, non-destructive operation that checks status. While it doesn't elaborate on side effects or auth needs, none are expected for a simple status check. It is transparent enough for safe invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence of 15 words with no waste. Every phrase adds value: 'Check if Homebridge is running' immediately communicates purpose, followed by specifics.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description covers the key aspects of the status returned. For a tool with zero parameters, it is sufficiently complete to inform an agent about what to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. The description adds value by explaining the output aspects (up/down, version, plugins status) beyond the empty schema. Baseline 4 is appropriate for 0 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Check' and specifies the resource 'Homebridge running status' with details (up/down, version, plugins status). It distinguishes from sibling tools like get_server_status and get_system_info by focusing on Homebridge-specific operational status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (when Homebridge status is needed) but does not provide explicit guidance on when not to use or alternatives among the many sibling tools. No exclusions or context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pairing_infoA
Get the HomeKit pairing information (setup code, QR code URL) for this Homebridge instance.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only states the action and output but does not disclose any behavioral traits such as being read-only, permissions needed, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and a simple readonly operation, the description is mostly complete. It mentions the return fields. However, it lacks details about potential errors or usage context, but this is acceptable for a simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and the schema coverage is 100% (trivially). The description adds no parameter information, but none is needed. Baseline for zero parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get'), the resource ('HomeKit pairing information'), and specifies the output (setup code, QR code URL). It distinguishes itself from sibling get_* tools by focusing on pairing info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_plugin_changelogB
Get the CHANGELOG.md content for an installed Homebridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| pluginName | Yes | The npm package name of the plugin (e.g. 'homebridge-hue') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description alone must disclose behavior, but it only states the basic function without mentioning what happens if the plugin lacks a changelog, performance implications, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words, efficiently conveying the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with one parameter and no output schema, the description is adequate but leaves uncertainty about edge cases (e.g., missing changelog) and does not specify the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides a complete description of 'pluginName' (100% coverage), so the description adds only minor context by specifying 'installed' and an example, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Get') and resource ('CHANGELOG.md content for an installed Homebridge plugin'), distinguishing it from sibling tools that retrieve other types of information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_plugin_versions' or 'lookup_plugin', nor does it mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_plugin_config_schemaA
Get the config.schema.json for a plugin, which describes how to configure it in Homebridge.
| Name | Required | Description | Default |
|---|---|---|---|
| pluginName | Yes | The npm package name of the plugin (e.g. 'homebridge-hue') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states 'Get' which implies read-only, and describes the retrieval of a schema file. It does not elaborate on authentication or side effects, but for a read operation it is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words. It front-loads the action and resource, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with one fully-described parameter and no output schema, the description provides all necessary context to understand the tool's purpose and usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description adds no additional meaning beyond the schema description for the parameter. Baseline 3 is appropriate as the schema already documents the parameter well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the verb 'Get' and resource 'config.schema.json for a plugin' and explains its purpose ('describes how to configure it in Homebridge'). It clearly distinguishes from siblings like get_config or get_plugin_changelog.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to get configuration schema for a plugin) but provides no explicit guidance on when not to use or alternatives. Given the tool's simple nature, it is adequate but lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_plugin_versionsA
Get available versions and dist-tags for a specific Homebridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| pluginName | Yes | The npm package name of the plugin (e.g. 'homebridge-hue') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the full burden. It implies a read operation and mentions the resource, but does not disclose any potential side effects, response format, or additional behavioral traits. For a simple tool, this is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the key information, and contains no unnecessary words. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is minimally complete. However, it lacks context on the return value and usage guidance relative to siblings, which would help the agent use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% coverage with a clear description for pluginName. The tool description adds no extra meaning beyond what the schema already provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'available versions and dist-tags for a specific Homebridge plugin'. It distinguishes itself from sibling tools like get_plugin_changelog or get_plugin_config_schema by specifying versions and dist-tags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. Among 20 sibling tools, there are several other 'get_*' tools, but the description does not mention when this one is appropriate or when another should be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_server_statusA
Get Homebridge server information including version, Node.js version, uptime, OS details, and Homebridge instance ID.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description only implies read-only behavior via 'get', but does not disclose permissions, side effects, or performance characteristics. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words, front-loads the purpose and lists key data points efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output schema, return value structure not described. Adequate for a simple read tool but could hint at response format or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline 4 applies automatically. The description adds no parameter information but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Homebridge server information and lists specific data fields (version, Node.js version, uptime, OS details, instance ID), distinguishing it from sibling tools like get_system_info or get_homebridge_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives; lacks explicit context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_system_infoA
Get system information for the machine running Homebridge (CPU, memory, OS, network interfaces, uptime).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosure. It clearly indicates a read-only operation and lists the categories of information returned, providing adequate transparency for a simple info tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence of 15 words with no redundancy. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description sufficiently covers what the tool does by listing the categories of information. It could mention return format but is complete enough for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The description adds value by specifying the types of system information returned, exceeding the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves system information (CPU, memory, OS, network interfaces, uptime) for the Homebridge machine, distinguishing it from sibling tools that focus on accessories, plugins, or configuration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when system-level info is needed but does not provide explicit guidance on when to use vs. alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_accessoriesB
List all Homebridge accessories with their current state (on/off, brightness, temperature, etc.)
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Filter by service name (case-insensitive, contains match) | |
| room | No | Filter by room name (case-insensitive) | |
| type | No | Filter by accessory type (e.g. 'Lightbulb', 'Switch', 'Thermostat') | |
| manufacturer | No | Filter by manufacturer (case-insensitive, contains match) | |
| excludeManufacturer | No | Exclude accessories from this manufacturer (case-insensitive, contains match) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It only states the tool's basic function without disclosing important behaviors like performance implications for large numbers of accessories, authentication needs, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys the core purpose without unnecessary words. Every part is meaningful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description mentions the output includes state details, which is helpful given the absence of an output schema. However, it lacks information about pagination, limits, default behavior with no filters, or potential errors.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all 5 parameters with clear descriptions (e.g., 'case-insensitive, contains match'), so the description adds no further semantic value. Schema coverage is 100%, meeting the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all Homebridge accessories with current state, which is a specific verb-resource pair. However, it does not explicitly distinguish from sibling tools like get_accessory or get_cached_accessories, leaving some ambiguity for an AI agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. The agent has no context to decide between list_accessories and other list or get tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_pluginsA
List all currently installed Homebridge plugins with their versions and update status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that the tool lists installed plugins with versions and update status, implying read-only behavior. However, it does not mention permissions, rate limits, or return format, which are missing for a tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no wasted words. It efficiently communicates the tool's purpose and output.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description partially explains return values (versions and update status). For a simple, parameterless list operation, it is mostly complete, though it could clarify the structure (e.g., array of objects).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters (schema coverage 100% by default). The rubric sets a baseline of 4 for 0 parameters, and the description does not need to add parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('all currently installed Homebridge plugins') and clearly states what is returned ('their versions and update status'). It distinguishes from sibling tools like list_accessories or get_plugin_versions by focusing on installed plugins with version and update info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., when to use list_plugins vs get_plugin_versions or search_plugins). The agent must infer based on the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_pluginA
Get detailed information about a specific Homebridge plugin from the npm registry.
| Name | Required | Description | Default |
|---|---|---|---|
| pluginName | Yes | The npm package name of the plugin (e.g. 'homebridge-hue') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility. It only states it gets info from npm registry, which is read-only, but omits details like rate limits, authentication, or what 'detailed information' includes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that immediately communicates the tool's purpose. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter, but the description is vague about what 'detailed information' contains. Without an output schema, it should hint at fields like version or author.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers 100% of parameters, and the description adds an example and clarifies the parameter is the npm package name, adding value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'detailed information about a specific Homebridge plugin', and the source 'from the npm registry'. This distinguishes it from sibling tools like search_plugins and list_plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when detailed info on a specific plugin is needed, but does not explicitly contrast with sibling tools or provide when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_cached_accessoryA
Remove a specific cached accessory by its UUID. Useful for cleaning up stale accessories.
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | Yes | The UUID of the cached accessory to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It states the action but discloses no behavioral traits such as whether removal is permanent, the effect on other data, error handling for invalid UUIDs, or safety considerations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no unnecessary words. The action is front-loaded, and the purpose is immediately clear. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool without output schema, the description is adequate but incomplete. It does not mention return values or success/failure indicators, which are helpful for an agent to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the 'uuid' parameter. The description adds 'by its UUID', which restates the schema purpose without adding new semantics like format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Remove', the object 'cached accessory', and the method 'by its UUID'. It also provides a use case ('cleaning up stale accessories'), making it distinct from siblings like 'reset_cached_accessories'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for removing stale accessories but does not explicitly state when to use this tool versus alternatives (e.g., 'reset_cached_accessories' for bulk removal). No exclusions or when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reset_cached_accessoriesA
Reset ALL cached accessories. WARNING: This removes all cached accessories and requires a Homebridge restart.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It explicitly warns that the action removes all cached accessories and requires a Homebridge restart, disclosing destructive behavior and a necessary post-condition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first states the function, the second provides a critical warning. Every word is necessary, and the warning is front-loaded for visibility.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and a simple destructive action, the description sufficiently explains what happens (removes, requires restart). It could mention if a response is returned, but the essential information is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the schema coverage is 100%. The description adds no parameter information, which is acceptable. Baseline score of 4 for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Reset') and the resource ('ALL cached accessories'), with the word 'ALL' distinguishing it from the sibling tool 'remove_cached_accessory' which likely removes a single accessory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by stating 'Reset ALL' but does not explicitly guide when to use this tool versus the sibling 'remove_cached_accessory' (which probably removes one). It also lacks context about when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restart_homebridgeA
Restart the Homebridge service. This will temporarily make all accessories unavailable.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses a key behavioral trait: temporary unavailability of accessories. However, it does not cover other aspects like authentication needs or potential duration.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: the first states the purpose, the second adds important context. No extraneous information, efficiently structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is largely complete. It covers the action and the primary side effect. Could optionally mention if the restart is instantaneous or asynchronous.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is 100%. The description adds no parameter-specific meaning, which is acceptable per the baseline of 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Restart the Homebridge service') with a specific verb and resource. Among siblings, which are mostly read-only or configuration tools, this is the only restart operation, making it distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the impact (accessories unavailable) but provides no explicit guidance on when to use or when not to use this tool. It lacks alternatives or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_pluginsB
Search the npm registry for Homebridge plugins matching a query.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (e.g. 'hue', 'camera', 'thermostat') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states behavior as searching; lacks disclosure on rate limits, authentication, error handling, or return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, clear sentence with no wasted words. Front-loaded with verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should explain return values, pagination, or error conditions. It does not, leaving the agent without essential information for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a description for the query parameter. The description adds no extra meaning beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Search', resource 'npm registry for Homebridge plugins', and condition 'matching a query'. It effectively differentiates from sibling tools like list_plugins and lookup_plugin.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs siblings (e.g., list_plugins, lookup_plugin). Does not mention prerequisites, expected input types, or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_accessoryA
Control a Homebridge accessory — turn it on/off, set brightness, color temperature, etc. Use list_accessories first to find the uniqueId and available characteristicTypes.
| Name | Required | Description | Default |
|---|---|---|---|
| value | Yes | The value to set (e.g. true/false for On, 0-100 for Brightness) | |
| uniqueId | Yes | The unique identifier of the accessory | |
| characteristicType | Yes | The characteristic to set (e.g. 'On', 'Brightness', 'ColorTemperature', 'Hue', 'Saturation', 'TargetTemperature', 'TargetDoorState') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions controlling accessories but lacks details on side effects, required permissions, error handling, or reversibility. Basic mutation behavior is implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words: first states the general purpose, second provides actionable prerequisite. Highly efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters, no output schema, and no annotations, the description is fairly complete. It covers purpose, prerequisite, and parameter examples. Lacks return value info but not critical for a control tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. The description adds value by providing examples for the value parameter (true/false for On, 0-100 for Brightness) and listing characteristic types, which clarifies usage beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: controlling a Homebridge accessory with specific examples (on/off, brightness, color temperature). It distinguishes from sibling tools like list_accessories or get_accessory by being a mutation tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises using list_accessories first to get the uniqueId and characteristicTypes, providing clear prerequisite guidance. It implies when to use but does not explicitly state when not to use or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_configA
Update the Homebridge config.json file. You must provide the FULL config object — it replaces the entire file. Use get_config first to read the current config, then modify and pass back the complete object.
| Name | Required | Description | Default |
|---|---|---|---|
| config | Yes | The complete config.json object to write |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although no annotations are provided, the description discloses that the tool replaces the entire config file, implying destructive behavior. It does not mention authentication or rate limits, but given the context, the key behavioral trait is communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. The purpose is front-loaded, and the important usage instruction follows immediately. Very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool that replaces an entire config file, the description adequately covers the input requirement and the need to read first. No output schema is present, but a return value is not critical. Could be slightly more complete by mentioning that the operation is irreversible, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with one parameter described as 'The complete config.json object to write'. The description adds critical context: 'You must provide the FULL config object — it replaces the entire file', emphasizing the requirement for completeness beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'Homebridge config.json file'. It distinguishes from sibling tools like get_config, which is a read operation, and other siblings that deal with accessories or plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit instructions: 'You must provide the FULL config object — it replaces the entire file. Use get_config first to read the current config, then modify and pass back the complete object.' This tells when to use it and mentions the prerequisite sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
20 tool updates
v1.0.5- First observed
get_accessory - First observed
get_accessory_layout - First observed
get_cached_accessories - First observed
get_config - First observed
get_homebridge_status - First observed
get_pairing_info - First observed
get_plugin_changelog - First observed
get_plugin_config_schema - First observed
get_plugin_versions - First observed
get_server_status - First observed
get_system_info - First observed
list_accessories - First observed
list_plugins - First observed
lookup_plugin - First observed
remove_cached_accessory - First observed
reset_cached_accessories - First observed
restart_homebridge - First observed
search_plugins - First observed
set_accessory - First observed
update_config
TDQS
Most tools are clearly distinct, but get_homebridge_status and get_server_status overlap on version and status info, which could cause minor confusion. Overall, the descriptions and different scopes mitigate ambiguity.
All tools follow a consistent verb_noun pattern in snake_case (e.g., get_config, list_accessories, restart_homebridge), making the naming predictable and easy to navigate.
With 20 tools, the set is well-scoped for managing a Homebridge server, covering configuration, accessories, plugins, and system operations without being overwhelming.
The tool surface covers core operations like config management, accessory control, plugin info, and server status. Minor gaps include lack of plugin install/uninstall and layout modification, but essential workflows are supported.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
An MCP server that integrates with Discord to provide AI-powered features.
- ZapierOAuthcom.zapier
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
MCP server for AI dialogue using various LLM models via AceDataCloud
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn MCP server and Home Assistant add-on that enables AI assistants to manage smart homes by creating automations, designing dashboards, and interacting with entities. It features native access to Home Assistant APIs, built-in Git versioning for safe rollbacks, and full management of HACS integrations.619MIT
- AlicenseAqualityCmaintenanceMCP server for full Home Assistant control, enabling AI agents to manage dashboards, automations, files, apps, entities, and more via REST API, WebSocket, and SSH.6692MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI assistants to control Home Assistant via natural language, including device control, automation management, and system configuration.MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that provides tools for inspecting and controlling Apple HomeKit accessories, scenes, automations, and more via the HomeClaw app, enabling natural language interaction with your smart home.13MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mp-consulting/homebridge-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server