get_application_managed_resources
Retrieve Kubernetes resources managed by an Argo CD application, with optional filters for kind, namespace, name, and other attributes to handle large applications efficiently.
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
| Name | Required | Description | Default |
|---|---|---|---|
| applicationName | Yes | ||
| kind | No | Filter by Kubernetes resource kind (e.g., "ConfigMap", "Secret", "Deployment") | |
| namespace | No | Filter by Kubernetes namespace | |
| name | No | Filter by resource name | |
| version | No | Filter by resource API version | |
| group | No | Filter by API group | |
| appNamespace | No | Filter by Argo CD application namespace | |
| project | No | Filter by Argo CD project |
Implementation Reference
- src/argocd/client.ts:165-182 (handler)Core handler function in ArgoCDClient that executes the HTTP GET request to the ArgoCD API endpoint for retrieving managed resources, applying optional filters.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; }
- src/server/server.ts:85-118 (registration)MCP tool registration using addJsonOutputTool, including input schema (Zod), description, and thin wrapper handler that constructs filters and delegates to ArgoCDClient.getApplicationManagedResources.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 ); } );
- src/server/server.ts:88-102 (schema)Input schema definition using Zod for validating tool parameters: applicationName (required), and optional filters for 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') },