Skip to main content
Glama
vandreus

UniFi MCP Server

by vandreus

get_device

Retrieve detailed information about UniFi network devices to monitor status, configure settings, and manage network infrastructure.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Handler function that executes the 'get_device' tool logic: calls unifi.getDevice with hostId and deviceId, then returns the device data as JSON-formatted text content.
    handler: async ({ hostId, deviceId }) => {
      const device = await unifi.getDevice(hostId, deviceId);
      return {
        content: [{ type: 'text', text: JSON.stringify(device, null, 2) }]
      };
    }
  • Zod input schema validation for the 'get_device' tool requiring hostId and deviceId as strings.
    schema: z.object({
      hostId: z.string().describe('The host ID'),
      deviceId: z.string().describe('The device ID or MAC address')
    }),
  • src/server.js:28-32 (registration)
    Registration of the deviceTools module (containing get_device) via registerToolsFromModule in the MCP server setup.
    registerToolsFromModule(networkTools);
    registerToolsFromModule(deviceTools);
    registerToolsFromModule(clientTools);
    registerToolsFromModule(protectTools);
    registerToolsFromModule(accessTools);
  • Helper function getDevice that makes the actual UniFi Cloud API request to retrieve specific device details.
    export async function getDevice(hostId, deviceId) {
      const response = await cloudApi.get(`/v1/hosts/${hostId}/devices/${deviceId}`);
      return response.data;
    }

Latest Blog Posts

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/vandreus/Unifi-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server