get_user_repositories
Retrieve and search repositories for a specific AtomGit user, enabling repository discovery and management with pagination support.
Instructions
Search for AtomGit user repositories
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | Search query username | |
| per_page | No | Page number for pagination (default: 1) | |
| page | No | Number of results per page (default: 10) | |
| search | No | Search query content |
Implementation Reference
- operations/repository.ts:43-62 (handler)Core implementation of get_user_repositories tool: constructs API URL for user's repositories with pagination and search params, calls atomGitRequest, returns raw response.export async function getUserRepositories( username: string, per_page: number = 10, page: number = 1, search?: string ) { let url = `https://api.atomgit.com/users/${encodeURIComponent(username)}/repos`; const params = new URLSearchParams(); if (per_page) params.append('per_page', per_page.toString()); if (page) params.append('page', page.toString()); if (search) params.append('search', search); const queryString = params.toString(); if (queryString) { url += `?${queryString}`; } const response = await atomGitRequest(url.toString()); return response; }
- operations/repository.ts:15-20 (schema)Zod input schema defining parameters for get_user_repositories: username (required), per_page, page, search (optional).export const getUserRepositoriesSchema = z.object({ username: z.string().describe("Search query username"), per_page: z.number().optional().describe("Page number for pagination (default: 1)"), page: z.number().optional().describe("Number of results per page (default: 10)"), search: z.string().optional().describe("Search query content"), });
- index.ts:112-115 (registration)MCP tool registration in listTools response: defines name, description, and converts Zod schema to JSON schema.name: "get_user_repositories", description: "Search for AtomGit user repositories", inputSchema: zodToJsonSchema(repository.getUserRepositoriesSchema), },
- index.ts:231-242 (handler)Dispatcher in CallToolRequest handler: parses input arguments with schema, calls implementation function, formats response as MCP content.case "get_user_repositories": { const args = repository.getUserRepositoriesSchema.parse(request.params.arguments); const results = await repository.getUserRepositories( args.username, args.per_page, args.page, args.search, ); return { content: [{ type: "text", text: JSON.stringify(results, null, 2) }], }; }