central-mcp-server
Click on "Deploy 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., "@central-mcp-servershow me all offline access points"
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.
central-mcp-server
Community MCP server for HPE Aruba Networking Central. This exposes your Central data as tools that AI assistants can query directly.
Unofficial Community Project
This is not an officially supported product of HPE. It is provided as-is, with no warranty or guarantee of fitness for any purpose.
Review your organization's corporate device and data policies before connecting this server to any AI assistant.
Never share credentials (API secrets, API keys) with AI model providers unless your security policy explicitly permits it.
All read operations query live data from your HPE Aruba Networking Central instance. Recommended to test MCP server use in non-production or lab environments where possible before running on production.
Table of Contents
Related MCP server: API-Central
Overview
central-mcp-server wraps Central REST APIs and exposes them as MCP (Model Context Protocol) tools — 12 MCP tools across inventory, monitoring, events, alerts, and troubleshooting. Once configured, AI assistants like Claude or GitHub Copilot can answer questions like:
"Which sites have poor health scores right now?"
"Show me all failed wireless clients at HQ in the last 24 hours."
"Show me all online access points at the Chicago office."
"What events happened on switch SW-CORE-01 yesterday?"
See the full overview guide for a deeper look at capabilities, limitations, and how the server works.
Getting Started
Getting Your Credentials
You need three values to connect this server to Central's REST APIs: CENTRAL_BASE_URL, CENTRAL_CLIENT_ID, and CENTRAL_CLIENT_SECRET.
API Gateway Base URL (CENTRAL_BASE_URL)
The API gateway base URL for your Central account (e.g. https://us5.api.central.arubanetworks.com).
For instructions on how to locate your base URL, see Finding Your Base URL in Central.
API Client Credentials (CENTRAL_CLIENT_ID & CENTRAL_CLIENT_SECRET)
OAuth credentials created through the HPE GreenLake Platform:
Log in to your HPE GreenLake account and open Manage Workspace.
Click Personal API clients.
Click Create Personal API client.
Give it a nickname (e.g.
central-mcp-server) and select your HPE Aruba Networking Central instance from the service dropdown.Click Create personal API client.
Copy both the Client ID and Client Secret immediately. The platform does not store the secret and it cannot be retrieved later.
Full guide: Generating and Managing Access Tokens
Installation
Install uv if you haven't already. It's the only prerequisite.
Using an MCP client (Claude Desktop, Claude Code, GitHub Copilot)?
No install command needed. Jump to MCP Client Configuration, the client fetches and runs the server automatically via uvx.
Want the server as a persistent CLI tool on your PATH?
uv tool install --prerelease=allow central-mcp-server
--prerelease=allowis required because this server depends onpycentral, which currently only has a pre-release version on PyPI. uv skips pre-releases by default.
See the full setup guide for prerequisites, troubleshooting, and step-by-step instructions.
MCP Client Configuration
Replace the placeholder values with your actual credentials in all examples below.
Optional: Code Mode Transform (DYNAMIC_TOOLS)
DYNAMIC_TOOLS is optional and only affects startup behavior:
Code Mode is enabled only when
DYNAMIC_TOOLSis set totrue(case-insensitive).Code Mode is disabled when
DYNAMIC_TOOLSis not set or set to any other value.Variable name is strict: use
DYNAMIC_TOOLS(plural).DYNAMIC_TOOLis ignored.
When enabled, the server starts with CodeMode() and exposes Code Mode meta-tools to the client. When disabled, the server runs without the transform and exposes the normal registered tool catalog directly. Recommended to use CodeMode() when you have multiple MCP servers running to preserve your context window.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"central-mcp": {
"command": "uvx",
"args": ["--prerelease=allow", "central-mcp-server"],
"env": {
"CENTRAL_BASE_URL": "your-central-base-url",
"CENTRAL_CLIENT_ID": "your-client-id",
"CENTRAL_CLIENT_SECRET": "your-client-secret"
}
}
}
}See the Claude Desktop setup guide for full steps and troubleshooting.
Claude Code
claude mcp add central-mcp \
-e CENTRAL_BASE_URL=your-central-base-url \
-e CENTRAL_CLIENT_ID=your-client-id \
-e CENTRAL_CLIENT_SECRET=your-client-secret \
-- uvx --prerelease=allow central-mcp-serverSee the Claude Code setup guide for full steps and troubleshooting.
GitHub Copilot (VS Code)
Add .vscode/mcp.json to your workspace root and add that path to .gitignore to keep credentials out of version control:
{
"servers": {
"central-mcp": {
"type": "stdio",
"command": "uvx",
"args": ["--prerelease=allow", "central-mcp-server"],
"env": {
"CENTRAL_BASE_URL": "your-central-base-url",
"CENTRAL_CLIENT_ID": "your-client-id",
"CENTRAL_CLIENT_SECRET": "your-client-secret"
}
}
}
}Add to .gitignore:
.vscode/mcp.jsonSee the GitHub CoPilot setup guide for full steps and troubleshooting.
HTTP Transport (Streamable HTTP)
By default the server runs over stdio, which is the right choice for most MCP clients. If you need to run the server as a persistent HTTP process — for example, to share it across multiple clients or to connect via a remote URL — you can switch to the streamable-http transport.
Step 1 — Install the server as a CLI tool (if you haven't already):
uv tool install --prerelease=allow central-mcp-server
--prerelease=allowis required because this server depends onpycentral, which currently only has a pre-release version on PyPI.
Step 2 — Create a .env file in your working directory with your credentials and transport settings:
CENTRAL_BASE_URL=your-central-base-url
CENTRAL_CLIENT_ID=your-client-id
CENTRAL_CLIENT_SECRET=your-client-secret
MCP_TRANSPORT=http
MCP_HOST=127.0.0.1
MCP_PORT=8000Variable | Default | Description |
|
| Transport mode: |
|
| Host to bind when using HTTP transport |
|
| Port to listen on when using HTTP transport |
Step 3 — Start the server:
# If installed via uv tool install:
central-mcp-server
# If running from source:
python server.pyThe MCP endpoint will be available at http://<MCP_HOST>:<MCP_PORT>/mcp.
Step 4 — Connect your MCP client to the running server:
claude mcp add central-mcp --transport http --url http://127.0.0.1:8000/mcpOr add it to your MCP client config:
{
"mcpServers": {
"central-mcp": {
"type": "http",
"url": "http://127.0.0.1:8000/mcp"
}
}
}Note: Credentials must be set in the server's environment (via
.envor OS env vars) before starting it. They are not passed through the HTTP client config.
Supported Capabilities
The server covers eleven capability categories across the new Central REST API families (Network Monitoring, Network Notifications, Network Troubleshooting):
Category | What you can ask about |
Sites & network health | Fleet-wide health overview, per-site metrics |
Device inventory | All devices, find one by serial/MAC/name |
Access points | AP lists, per-AP detail, radio/port trends |
Switches | Switch lists, per-switch detail, hardware/interface trends |
Gateways | Gateway lists, detail, clusters, capacity trends |
WLANs | Configured WLANs, per-WLAN throughput |
Clients | Connected/failed clients, find one by MAC |
Client analytics | Usage, roaming, and onboarding experience (assoc/auth/dhcp/dns) |
Alerts | Active alerts per site, by severity/category |
Events | Event history and counts for a site, device, or client |
Live troubleshooting | Ping-style tests, show commands, port bounce (with confirmation) |
See the Capability Reference for every tool in each category, the Central API family it uses, and scope/limitations.
What You Can Ask
Once connected, you can ask your AI assistant questions like:
"Give me a health overview of all sites."
"Which sites are in poor health right now?"
"Show me all access points at the Chicago office."
"List the switches in the London campus and show CPU and PoE trends for SG34L5002Y."
"How healthy is the BLR gateway cluster, and what's its client capacity trend?"
"What critical alerts are active across the network?"
"Find all failed wireless clients at HQ in the last 24 hours."
"How is client onboarding doing today, and why are clients failing authentication?"
"What events happened on switch SW-CORE-01 yesterday?"
"Ping 8.8.8.8 from switch SW-CORE-01."
"Run 'show version' and 'show interfaces brief' on switch SG43KN5017."
"Bounce PoE on port 1/1/6 of switch SG43KN5017."
See Central MCP Server in Action for real query examples across all supported clients.
Example Queries
New to driving an AI assistant over your network? See What You Can Ask — a guided tour of real questions across every tool category (site health, devices, APs, switches, gateways, WLANs, clients, alerts, events, and live diagnostics), each shown with the answer it returns and a list of related questions to try.
Tool Categories
%%{init: {'theme':'base', 'themeVariables': {'background': '#0b0f1a'}}}%%
graph TD
MCP["Central MCP Server"] --> Sites["Sites"]
MCP --> Devices["Device Inventory"]
MCP --> Clients["Clients"]
MCP --> Alerts["Alerts"]
MCP --> Events["Events"]
MCP --> DevMon["Device Monitoring"]
MCP --> WLAN["WLAN"]
MCP --> Troubleshooting["Troubleshooting"]
classDef mcp fill:#05cc93,color:#001b14,stroke:#000000,stroke-width:2px;
classDef tool fill:#0070f8,color:#ffffff,stroke:#000000,stroke-width:1.5px;
class MCP mcp;
class Sites,Devices,DevMon,Clients,Alerts,Events,WLAN,Troubleshooting tool;
linkStyle default stroke:#ffffff,stroke-width:2px;Tools
The 0.2.x surface folds related operations into 13 tools. Envelope-returning reads default to response_format="concise"; use "detailed" for full item fields.
Tool | Description |
| Browse inventory or family monitoring data; exact serial/name lookup is supported. |
| Retrieve AP, switch, or gateway detail with family-specific includes. |
| Retrieve bounded AP, switch, or gateway time-series samples. |
| Browse filtered clients or look up one exact MAC address. |
| Client usage, roam trail, or per-stage onboarding analytics ( |
| Retrieve summary or detailed site health views. |
| List WLANs or add throughput to one exact SSID. |
| Retrieve cluster members, health, and optional capacity/resources. |
| Retrieve event records ( |
| Retrieve filtered active, cleared, or deferred alerts for a site. |
| Run a live network diagnostic (ping, traceroute, http, https, tcp, nslookup) against a device — device family resolved automatically from serial number |
| Execute show commands on a device; auto-validates against the device's supported command catalog and returns the catalog on any mismatch |
| Bounce ports or toggle PoE on CX/AOS-S switches and gateways — fetches live interface state and requires user confirmation before executing |
LLM Workflow for Events
Use this sequence for faster, lower-token event investigations:
For site-level queries, call events tools with
site_idonly.For device/client queries, pass
site_idpluscontext_typeandcontext_identifier.Call
central_get_eventswithmode="facets"andresponse_mode="compact"to get ranked event names, source types, and categories.Pick the top category/source/event name as your likely starting point.
Call
central_get_eventswithmode="records"and targeted filters to fetch detailed records.Use
mode="facets",response_mode="full"only when exact per-value counts are required.
Guided Prompts
The server includes 12 built-in prompts to help AI assistants run common workflows:
Prompt | Description |
| Full network health overview across all sites |
| Deep-dive troubleshooting for a specific site |
| Investigate connectivity status for a client by MAC address |
| Review recent events for a specific device |
| Summarize all events at a site within a time window |
| Find and diagnose all failed clients at a site |
| Overview of client connectivity at a site |
| Health check for all devices of a specific type at a site |
| Identify dominant event drivers at a site and pull supporting evidence |
| Review all active critical alerts across the network |
| Assess WLAN health using client failures and related events over a time window |
| Compare health metrics side-by-side across multiple sites |
Dev Setup
git clone <Github Server URL>
cd central-mcp-serverCreate and activate a virtual environment, then install dependencies:
python3 -m venv .venv
source .venv/bin/activate
uv syncCreate .env with your credentials:
CENTRAL_BASE_URL=your-central-base-url
CENTRAL_CLIENT_ID=your-client-id
CENTRAL_CLIENT_SECRET=your-client-secretRun the server:
python3 server.pyTo install and test the package locally before publishing:
uv tool install .This server cannot be deployed
Maintenance
Related MCP Connectors
Connects AI assistants to CloudQuell multi-cloud and AI cost, savings, anomaly, and budget data.
Ask questions in plain language, get answers from your business database. No SQL required.
Ask data questions in natural language. Get SQL, insights, and charts from your databases.
Query your SEO data in plain language: rankings, audits, backlinks, competitors and AI visibility.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceExposes 90 production-grade tools for interacting with the complete HPE Aruba Networking Central REST API surface, including network inventory, configuration, and security management. It features enterprise-ready OAuth2 handling and semantic tool filtering for optimized performance with both hosted and local LLMs.-
- AlicenseAqualityAmaintenanceEnables conversational automation of HPE Aruba Central network operations through Claude Code. Provides 88 tools across monitoring, configuration, and operations domains for device migration, SSID management, switch provisioning, and GreenLake Platform integration.162MIT
- FlicenseNot gradedqualityDmaintenanceEnables natural language management of Juniper Apstra datacenter networks, including blueprints, virtual networks, connectivity templates, and deployment.2-
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to manage Cisco Meraki networks through natural language, including organizations, networks, devices, switches, wireless, and appliances.1GPL 3.0