@pimzino/agentic-tools-mcp
Version:
A comprehensive MCP server for task management and agent memories with JSON file storage
48 lines (47 loc) • 1.68 kB
JavaScript
/**
* List all projects
*
* @param storage - Storage instance
* @returns MCP tool handler for listing projects
*/
export function createListProjectsTool(storage) {
return {
name: 'list_projects',
description: 'View all projects in the task management system',
inputSchema: {},
handler: async () => {
try {
const projects = await storage.getProjects();
if (projects.length === 0) {
return {
content: [{
type: 'text',
text: 'No projects found. Create your first project to get started!'
}]
};
}
const projectList = projects.map(project => {
return `**${project.name}** (ID: ${project.id})
Description: ${project.description}
Created: ${new Date(project.createdAt).toLocaleString()}
Updated: ${new Date(project.updatedAt).toLocaleString()}`;
}).join('\n\n');
return {
content: [{
type: 'text',
text: `Found ${projects.length} project(s):\n\n${projectList}`
}]
};
}
catch (error) {
return {
content: [{
type: 'text',
text: `Error listing projects: ${error instanceof Error ? error.message : 'Unknown error'}`
}],
isError: true
};
}
}
};
}