[ 
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]

Reply via email to