list_users
Retrieve and manage all registered users on your App Store Connect team with filtering, sorting, and pagination options for efficient team administration.
Instructions
Get a list of all users registered on your App Store Connect team
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of users to return (default: 100, max: 200) | |
| sort | No | Sort order for the results | |
| filter | No | ||
| include | No | Related resources to include in the response |
Implementation Reference
- src/handlers/users.ts:13-36 (handler)The core handler function that executes the list_users tool. It constructs query parameters from input args and calls the AppStoreConnectClient to GET /users endpoint.async listUsers(args: { limit?: number; sort?: UserSortOptions; filter?: UserFilters; include?: UserIncludeOptions[]; } = {}): Promise<ListUsersResponse> { const { limit = 100, sort, filter, include } = args; const params: Record<string, any> = { limit: sanitizeLimit(limit) }; if (sort) { params.sort = sort; } Object.assign(params, buildFilterParams(filter)); if (Array.isArray(include) && include.length > 0) { params.include = include.join(','); } return this.client.get<ListUsersResponse>('/users', params); }
- src/index.ts:1384-1386 (registration)MCP tool call dispatch registration that routes 'list_users' calls to the UserHandlers.listUsers method.case "list_users": return { toolResult: await this.userHandlers.listUsers(args as any) };
- src/index.ts:697-746 (schema)Tool metadata and input schema definition for 'list_users' provided to MCP ListTools request.{ name: "list_users", description: "Get a list of all users registered on your App Store Connect team", inputSchema: { type: "object", properties: { limit: { type: "number", description: "Maximum number of users to return (default: 100, max: 200)", minimum: 1, maximum: 200 }, sort: { type: "string", description: "Sort order for the results", enum: ["username", "-username", "firstName", "-firstName", "lastName", "-lastName", "roles", "-roles"] }, filter: { type: "object", properties: { username: { type: "string", description: "Filter by username" }, roles: { type: "array", items: { type: "string", enum: [ "ADMIN", "FINANCE", "TECHNICAL", "SALES", "MARKETING", "DEVELOPER", "ACCOUNT_HOLDER", "READ_ONLY", "APP_MANAGER", "ACCESS_TO_REPORTS", "CUSTOMER_SUPPORT" ] }, description: "Filter by user roles" }, visibleApps: { type: "array", items: { type: "string" }, description: "Filter by apps the user can see (app IDs)" } } }, include: { type: "array", items: { type: "string", enum: ["visibleApps"] }, description: "Related resources to include in the response" } } } },
- src/types/users.ts:27-29 (schema)TypeScript interface defining the expected response structure from the /users API endpoint.export interface ListUsersResponse { data: User[]; }
- src/index.ts:78-78 (registration)Instantiation of the UserHandlers class instance used for list_users tool execution.this.userHandlers = new UserHandlers(this.client);