get-agent-members
Retrieve agent members from the Consul MCP Server to monitor and manage cluster participants effectively.
Instructions
Get agent members
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/consulTools.ts:676-696 (handler)Handler function for the 'get-agent-members' tool. Calls consul.agent.members() to retrieve agent members and formats the response.server.tool( "get-agent-members", "Get agent members", {}, async () => { try { // @ts-ignore - The Consul type definitions are incomplete const members = await consul.agent.members() as AgentMember[]; if (!members || members.length === 0) { return { content: [{ type: "text", text: "No agent members found" }] }; } const membersText = members.map(member => `Name: ${member.Name}, Address: ${member.Address}, Status: ${member.Status}` ).join("\n"); return { content: [{ type: "text", text: `Agent Members:\n\n${membersText}` }] }; } catch (error) { console.error("Error getting agent members:", error); return { content: [{ type: "text", text: "Error getting agent members" }] }; } } );
- src/tools/consulTools.ts:676-696 (registration)Registration of the 'get-agent-members' tool using server.tool, including empty input schema and handler.server.tool( "get-agent-members", "Get agent members", {}, async () => { try { // @ts-ignore - The Consul type definitions are incomplete const members = await consul.agent.members() as AgentMember[]; if (!members || members.length === 0) { return { content: [{ type: "text", text: "No agent members found" }] }; } const membersText = members.map(member => `Name: ${member.Name}, Address: ${member.Address}, Status: ${member.Status}` ).join("\n"); return { content: [{ type: "text", text: `Agent Members:\n\n${membersText}` }] }; } catch (error) { console.error("Error getting agent members:", error); return { content: [{ type: "text", text: "Error getting agent members" }] }; } } );
- src/tools/consulTools.ts:54-66 (schema)Type definition (schema) for AgentMember used in the get-agent-members tool response handling.interface AgentMember { Name: string; Address: string; Port: number; Tags: Record<string, string>; Status: number; ProtocolMin: number; ProtocolMax: number; ProtocolCur: number; DelegateMin: number; DelegateMax: number; DelegateCur: number; }