Skip to main content
Glama
concavegit

App Store Connect MCP Server

by concavegit

list_analytics_reports

Retrieve available analytics reports for a specific report request in App Store Connect, filtering by category and controlling result quantity.

Instructions

Get available analytics reports for a specific report request

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reportRequestIdYesThe ID of the analytics report request
limitNoMaximum number of reports to return (default: 100)
filterNo

Implementation Reference

  • The main handler function that implements the core logic for the 'list_analytics_reports' tool. It validates inputs, builds query parameters, and calls the App Store Connect API to retrieve the list of analytics reports.
    async listAnalyticsReports(args: {
      reportRequestId: string;
      limit?: number;
      filter?: {
        category?: AnalyticsReportCategory;
      };
    }): Promise<ListAnalyticsReportsResponse> {
      const { reportRequestId, limit = 100, filter } = args;
      
      validateRequired(args, ['reportRequestId']);
    
      const params: Record<string, any> = {
        limit: sanitizeLimit(limit)
      };
    
      Object.assign(params, buildFilterParams(filter));
    
      return this.client.get<ListAnalyticsReportsResponse>(`/analyticsReportRequests/${reportRequestId}/reports`, params);
    }
  • The input schema definition for the 'list_analytics_reports' tool, registered in the MCP server's tool list. Defines parameters like reportRequestId, limit, and filter.
    name: "list_analytics_reports",
    description: "Get available analytics reports for a specific report request",
    inputSchema: {
      type: "object",
      properties: {
        reportRequestId: {
          type: "string",
          description: "The ID of the analytics report request"
        },
        limit: {
          type: "number",
          description: "Maximum number of reports to return (default: 100)",
          minimum: 1,
          maximum: 200
        },
        filter: {
          type: "object",
          properties: {
            category: {
              type: "string",
              enum: ["APP_STORE_ENGAGEMENT", "APP_STORE_COMMERCE", "APP_USAGE", "FRAMEWORKS_USAGE", "PERFORMANCE"],
              description: "Filter by report category"
            }
          }
        }
      },
      required: ["reportRequestId"]
    }
  • src/index.ts:1391-1392 (registration)
    The registration of the tool handler in the MCP server's callTool request handler switch statement. Maps the tool name to the AnalyticsHandlers.listAnalyticsReports method.
    case "list_analytics_reports":
      return { toolResult: await this.analyticsHandlers.listAnalyticsReports(args as any) };
  • TypeScript interface defining the response structure for the listAnalyticsReports API call, used in the handler's return type.
    export interface ListAnalyticsReportsResponse {
      data: AnalyticsReport[];
    }

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/concavegit/app-store-connect-mcp-server'

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