Skip to main content
Glama
akuity
by akuity

get_application_managed_resources

Retrieve managed resources for a specific ArgoCD application by name, with optional filters to narrow results by kind, namespace, name, API version, group, application namespace, or project. This helps handle large applications efficiently while avoiding token limits.

Instructions

get_application_managed_resources returns managed resources for application by application name with optional filtering. Use filters to avoid token limits with large applications. Examples: kind="ConfigMap" for config maps only, namespace="production" for specific namespace, or combine multiple filters.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appNamespaceNoFilter by Argo CD application namespace
applicationNameYes
groupNoFilter by API group
kindNoFilter by Kubernetes resource kind (e.g., "ConfigMap", "Secret", "Deployment")
nameNoFilter by resource name
namespaceNoFilter by Kubernetes namespace
projectNoFilter by Argo CD project
versionNoFilter by resource API version

Implementation Reference

  • MCP tool registration for 'get_application_managed_resources', including description, Zod input schema with optional filters, and handler function that builds filter object from parameters and delegates to ArgoCD client's getApplicationManagedResources method.
    this.addJsonOutputTool( 'get_application_managed_resources', 'get_application_managed_resources returns managed resources for application by application name with optional filtering. Use filters to avoid token limits with large applications. Examples: kind="ConfigMap" for config maps only, namespace="production" for specific namespace, or combine multiple filters.', { applicationName: z.string(), kind: z .string() .optional() .describe( 'Filter by Kubernetes resource kind (e.g., "ConfigMap", "Secret", "Deployment")' ), namespace: z.string().optional().describe('Filter by Kubernetes namespace'), name: z.string().optional().describe('Filter by resource name'), version: z.string().optional().describe('Filter by resource API version'), group: z.string().optional().describe('Filter by API group'), appNamespace: z.string().optional().describe('Filter by Argo CD application namespace'), project: z.string().optional().describe('Filter by Argo CD project') }, async ({ applicationName, kind, namespace, name, version, group, appNamespace, project }) => { const filters = { ...(kind && { kind }), ...(namespace && { namespace }), ...(name && { name }), ...(version && { version }), ...(group && { group }), ...(appNamespace && { appNamespace }), ...(project && { project }) }; return await this.argocdClient.getApplicationManagedResources( applicationName, Object.keys(filters).length > 0 ? filters : undefined ); } );
  • Handler function for the MCP tool that processes input parameters into filters and calls the ArgoCD client method.
    async ({ applicationName, kind, namespace, name, version, group, appNamespace, project }) => { const filters = { ...(kind && { kind }), ...(namespace && { namespace }), ...(name && { name }), ...(version && { version }), ...(group && { group }), ...(appNamespace && { appNamespace }), ...(project && { project }) }; return await this.argocdClient.getApplicationManagedResources( applicationName, Object.keys(filters).length > 0 ? filters : undefined ); }
  • Zod schema defining the input parameters for the tool, including required applicationName and optional filters (kind, namespace, name, version, group, appNamespace, project).
    applicationName: z.string(), kind: z .string() .optional() .describe( 'Filter by Kubernetes resource kind (e.g., "ConfigMap", "Secret", "Deployment")' ), namespace: z.string().optional().describe('Filter by Kubernetes namespace'), name: z.string().optional().describe('Filter by resource name'), version: z.string().optional().describe('Filter by resource API version'), group: z.string().optional().describe('Filter by API group'), appNamespace: z.string().optional().describe('Filter by Argo CD application namespace'), project: z.string().optional().describe('Filter by Argo CD project') },
  • Core helper function in ArgoCD client class that executes the HTTP GET request to ArgoCD API `/api/v1/applications/${applicationName}/managed-resources` with optional filters as query parameters, returning the response body containing managed resources.
    public async getApplicationManagedResources( applicationName: string, filters?: { namespace?: string; name?: string; version?: string; group?: string; kind?: string; appNamespace?: string; project?: string; } ) { const { body } = await this.client.get<{ items: V1alpha1ResourceDiff[] }>( `/api/v1/applications/${applicationName}/managed-resources`, filters ); return body; }

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/akuity/argocd-mcp'

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