Skip to main content
Glama
concavegit
by concavegit

create_analytics_report_request

Generate analytics reports for App Store apps by specifying an app ID and choosing between ongoing daily data or one-time historical snapshots.

Instructions

Create a new analytics report request for an app

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
appIdYesThe ID of the app to generate analytics reports for
accessTypeNoAccess type for the analytics report (ONGOING for daily data, ONE_TIME_SNAPSHOT for historical data)ONE_TIME_SNAPSHOT

Implementation Reference

  • The handler function that implements the core logic: validates input, constructs the API request body, and calls the AppStoreConnectClient to POST to /analyticsReportRequests.
    async createAnalyticsReportRequest(args: { appId: string; accessType?: AnalyticsAccessType; }): Promise<AnalyticsReportRequestResponse> { const { appId, accessType = "ONE_TIME_SNAPSHOT" } = args; validateRequired(args, ['appId']); const requestBody: AnalyticsReportRequest = { data: { type: "analyticsReportRequests", attributes: { accessType }, relationships: { app: { data: { id: appId, type: "apps" } } } } }; return this.client.post<AnalyticsReportRequestResponse>('/analyticsReportRequests', requestBody); }
  • MCP tool JSON schema defining input parameters: appId (required string), accessType (optional enum with default). Part of the tools list returned by listTools.
    name: "create_analytics_report_request", description: "Create a new analytics report request for an app", inputSchema: { type: "object", properties: { appId: { type: "string", description: "The ID of the app to generate analytics reports for" }, accessType: { type: "string", enum: ["ONGOING", "ONE_TIME_SNAPSHOT"], description: "Access type for the analytics report (ONGOING for daily data, ONE_TIME_SNAPSHOT for historical data)", default: "ONE_TIME_SNAPSHOT" } }, required: ["appId"] }
  • src/index.ts:1388-1389 (registration)
    Tool call dispatch in the MCP CallToolRequest handler: maps the tool name to invocation of the analyticsHandlers.createAnalyticsReportRequest method.
    case "create_analytics_report_request": return { toolResult: await this.analyticsHandlers.createAnalyticsReportRequest(args as any) };
  • TypeScript type definitions for input (AnalyticsReportRequest) and output (AnalyticsReportRequestResponse), plus AnalyticsAccessType enum used in the handler.
    export type AnalyticsAccessType = 'ONGOING' | 'ONE_TIME_SNAPSHOT'; export interface AnalyticsReportRequest { data: { type: 'analyticsReportRequests'; attributes: { accessType: AnalyticsAccessType; }; relationships: { app: { data: { id: string; type: 'apps'; }; }; }; }; } export interface AnalyticsReportRequestResponse { data: { id: string; type: 'analyticsReportRequests'; attributes: { accessType: AnalyticsAccessType; stoppedDueToInactivity: boolean; }; relationships: { app: { data: { id: string; type: 'apps'; }; }; reports: { data: Array<{ id: string; type: 'analyticsReports'; }>; }; }; }; }

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