[
https://issues.apache.org/jira/browse/AMBARI-26532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18039797#comment-18039797
]
Nikita Pande commented on AMBARI-26532:
---------------------------------------
Hi [~call518] thanks for showing interest in the feature :)
I was working on a POC
[https://github.com/nikita15p/ambari-mcp-server.|https://github.com/nikita15p/ambari-mcp-server]
This has been tested with cline as MCP client and lists all the tools and
resources as part of MCP Servers.
Below is a table explicitly segregating *MCP tools* and the *MCP resources*
they manage, following your request and the ambari-mcp-server code/doc
structure:.
||MCP Tool Name||MCP Resource Operated On||
|ambari_clusters_getclusters|Cluster Collection|
|ambari_clusters_getcluster|Single Cluster|
|ambari_clusters_createcluster|Cluster|
|ambari_services_getservices|Cluster Services|
|ambari_services_getservice|Single Service|
|ambari_services_getservicestate|Service State|
|ambari_services_startservice|Service|
|ambari_services_stopservice|Service|
|ambari_services_getserviceswithstaleconfigs|Services (Stale Configs)|
|ambari_services_gethostcomponentswithstaleconfigs|Host Components (Stale
Configs)|
|ambari_services_restartservice|Service|
|ambari_services_restartcomponents|Component(s)|
|ambari_services_getrollingrestartstatus|Rolling Restart Status|
|ambari_services_enablemaintenancemode|Service/Component|
|ambari_services_disablemaintenancemode|Service/Component|
|ambari_services_runservicecheck|Service|
|ambari_services_isservicechecksupported|Service|
|ambari_services_getservicecheckstatus|Service Check|
|ambari_hosts_gethosts|Host Collection|
|ambari_hosts_gethost|Single Host|
|ambari_alerts_gettargets|Alert Targets|
|ambari_alerts_getalerts|Alerts|
|ambari_alerts_getalertsummary|Alert Summary|
|ambari_alerts_getalertdetails|Alert Definition|
|ambari_alerts_getalertdefinitions|Alert Definitions|
|ambari_alerts_updatealertdefinition|Alert Definition|
|ambari_alerts_getalertgroups|Alert Groups|
|ambari_alerts_createalertgroup|Alert Group|
|ambari_alerts_updatealertgroup|Alert Group|
|ambari_alerts_deletealertgroup|Alert Group|
|ambari_alerts_duplicatealertgroup|Alert Group|
|ambari_alerts_adddefinitiontogroup|Alert Group/Definition|
|ambari_alerts_removedefinitionfromgroup|Alert Group/Definition|
|ambari_alerts_getnotifications|Notification Targets|
|ambari_alerts_createnotification|Notification Target|
|ambari_alerts_updatenotification|Notification Target|
|ambari_alerts_deletenotification|Notification Target|
|ambari_alerts_addnotificationtogroup|Alert Group/Notification Target|
|ambari_alerts_removenotificationfromgroup|Alert Group/Notification Target|
|ambari_alerts_savealertsettings|Cluster Alert Settings|
* {*}MCP Tools{*}: The function/endpoints callable by the MCP client or AI via
the server.
* {*}MCP Resources{*}: The specific Ambari objects (clusters, hosts, services,
components, alert configs, notification targets, etc.) on which those tools
operate.
Limitations:
Currently, authentication details are managed and stored locally before being
passed to the system. Our roadmap includes implementing a full suite of
authentication and authorization mechanisms supported by Ambari, such as LDAP,
Kerberos, and Active Directory, etc integration, to enhance security and
flexibility.
> Add Model Context Protocol (MCP) Server for AI-Driven Cluster Management
> ------------------------------------------------------------------------
>
> Key: AMBARI-26532
> URL: https://issues.apache.org/jira/browse/AMBARI-26532
> Project: Ambari
> Issue Type: New Feature
> Reporter: Nikita Pande
> Assignee: Nikita Pande
> Priority: Major
>
> Integrating Ambari with MCP is not merely a technical exercise; it unlocks a
> new paradigm of cluster management, shifting from manual, UI-driven
> operations to conversational, automated, and ultimately autonomous control.
> This transformation enables a range of high-value use cases that can
> dramatically reduce operational overhead and democratize administrative
> expertise.
> * *Natural Language Diagnostics & Troubleshooting:* This is the most
> immediate and compelling use case. Administrators, regardless of their
> expertise level, can interact with the cluster in plain English to diagnose
> issues. Instead of navigating through multiple screens in the Ambari UI or
> crafting complex {{curl}} commands, they can simply ask questions. For
> instance:
> ** _"Why did the HDFS service health check fail on node '<nodeName>?"_
> ** _"Show me all CRITICAL alerts from the last 24 hours related to YARN."_
> ** _"What is the current heap usage of the NameNode, and how does it compare
> to yesterday?"_ To answer these, an AI agent would leverage MCP {{Resources}}
> to fetch health reports, alert histories, and performance metrics from
> Ambari, then use its reasoning capabilities to synthesize a coherent,
> human-readable answer.
> * *Automated and Agentic Remediation:* Moving beyond diagnosis, this
> integration empowers AI agents to take corrective actions. This creates a
> "self-healing" capability for the cluster. An agent can be instructed to
> execute complex remediation workflows that involve a chain of actions and
> checks. For example:
>
> ** _"The NameNode is in standby. Investigate the logs for critical errors.
> If none are found within the last 15 minutes, attempt a restart and confirm
> it becomes active. Notify the support channel in chat interface with the
> result."_ This workflow would require the agent to chain multiple MCP
> {{Tool}} calls: get logs ({{{}Resource{}}}), analyze them (LLM reasoning),
> restart the service ({{{}Tool{}}}), and check its status ({{{}Resource{}}}),
> demonstrating a sophisticated, agentic process.
> * *Conversational Configuration and Security Audits:* Complex configuration
> changes and security hardening are often error-prone. A conversational
> interface simplifies these tasks significantly.
>
> ** _"Increase the YARN NodeManager memory to 32GB on all worker nodes and
> then perform a rolling restart of the YARN service."_
> *
> ** _"Audit the cluster for security compliance. List all services that do
> not have Kerberos enabled and generate the sequence of API calls required to
> configure them."_ These commands would be translated by the agent into a
> series of {{updateServiceConfig}} and {{restartService}} tool calls, executed
> in the correct order.
> * *Declarative Provisioning via Conversation:* This use case represents an
> evolution of Ambari Blueprints, making cluster provisioning more accessible.
> An administrator could describe the desired cluster in high-level terms, and
> the AI agent would handle the low-level details of creating the Blueprint
> JSON.
>
> ** _"Provision a new 5-node test cluster using <stack name and version>. The
> cluster should include HDFS, YARN, and Spark. Designate 'master01' as the
> master node with the NameNode and ResourceManager, and the rest as worker
> nodes with DataNodes and NodeManagers."_ The agent would parse this request,
> generate the corresponding Blueprint, and use an MCP {{Tool}} to submit it to
> the Ambari API, initiating the cluster deployment.
> * *Proposed Solution:* This feature proposes the development and integration
> of a new, standalone {*}Ambari MCP Server{*}. This service will expose
> Ambari's rich management capabilities through the open and rapidly-adopted
> Model Context Protocol (MCP). By doing so, it will allow any MCP-compatible
> AI agent or host application (e.g., VS Code with Copilot, Claude Desktop) to
> securely discover and interact with the Ambari-managed cluster. The server
> will map Ambari's REST API endpoints to MCP's core primitives: state-changing
> operations will be exposed as {{{}Tools{}}}, read-only data queries as
> {{{}Resources{}}}, and complex, multi-step administrative tasks as
> {{{}Prompts{}}}. This will effectively transform Ambari from a passive
> management tool into an active, intelligent platform accessible via natural
> language and agentic workflows.
> *Key Benefits:*
> *Reduced Operational Overhead:* Enable administrators to diagnose issues,
> perform restarts, and modify configurations using simple, conversational
> commands, automating routine tasks.
> *Democratized Expertise:* Allow less experienced operators to perform complex
> administrative operations safely by leveraging pre-defined, reliable MCP
> Prompts that encapsulate expert workflows.
> *Enhanced Automation and Self-Healing:* Provide the foundation for building
> sophisticated, agentic systems that can proactively monitor cluster health,
> diagnose failures, and execute remediation plans autonomously.
> *Ecosystem Interoperability:* Position Ambari as a first-class citizen in the
> burgeoning ecosystem of AI development tools and agentic frameworks by
> adopting the MCP standard, ensuring its future relevance.
> *Roadmap:*
> *
> ** Read-Only Integration (The Observer) - Phase 1: Exposing all relevant
> cluster state, including service statuses, host information, component
> layouts, configurations, alert histories, and performance metrics.
> ** Actionable Tools (The Operator) - Phase 2: Enable direct, conversational
> control over the cluster. Administrators can now use the AI agent as a remote
> control for Ambari, issuing commands to operate the cluster.
> ** Abstracted Workflows (The Autonomous Agent) - Phase 3: Achieve true
> agentic behavior. This phase moves beyond simple command-and-control to a
> state where the AI can be delegated complex, long-running tasks, executing
> sophisticated strategies with minimal human intervention and unlocking the
> full potential of autonomous data platform management.
> Refer [https://modelcontextprotocol.io/]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]