list_projects
Retrieve all projects from your Azure DevOps organization to manage development workflows and access repositories.
Instructions
List all projects in the Azure DevOps organization
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/project/list.ts:5-29 (handler)The core handler function that initializes the Azure DevOps connection, fetches projects using the Core API, and returns them as JSON text content.export async function listProjects(args: Record<string, unknown> | undefined, config: AzureDevOpsConfig) { AzureDevOpsConnection.initialize(config); const connection = AzureDevOpsConnection.getInstance(); const coreApi = await connection.getCoreApi(); try { const projects = await coreApi.getProjects(); return { content: [ { type: 'text', text: JSON.stringify(projects, null, 2), }, ], }; } catch (error: unknown) { if (error instanceof McpError) throw error; const errorMessage = error instanceof Error ? error.message : 'Unknown error'; throw new McpError( ErrorCode.InternalError, `Failed to list projects: ${errorMessage}` ); } }
- src/tools/project/index.ts:8-12 (schema)Input schema definition for the list_projects tool, specifying an empty object with no required properties.inputSchema: { type: 'object', properties: {}, required: [], },
- src/tools/project/index.ts:4-14 (registration)Tool definition registration including name, description, and schema, exported for use in the project tools module.const definitions = [ { name: 'list_projects', description: 'List all projects in the Azure DevOps organization', inputSchema: { type: 'object', properties: {}, required: [], }, }, ];
- src/index.ts:153-155 (registration)Switch case in the main tool call handler that dispatches to the listProjects function for the 'list_projects' tool.case 'list_projects': result = await tools.project.listProjects(request.params.arguments); break;