Skip to main content
Glama

Github Project Manager

2025-03-19.md11.2 kB
# Changes Log - 2025-03-19 ## Reimplemented MCP Gmail client with improved architecture - 10:30 AM - Refactored the Gmail MCP implementation to follow standardized project structure - Added proper type definitions in separate files for better maintainability - Improved error handling with custom error classes - Added environment configuration with support for both CLI args and env vars - Implemented clean separation of concerns with utilities and tools in different modules - Added support for SSE transport alongside standard stdio transport - Updated package.json with correct metadata and dependencies - Enhanced documentation with JSDoc comments throughout the codebase - Improved OAuth authentication flow with better error messaging ## Updated README with Fork Attribution - 2:40 PM - Added clear attribution to the original Gmail MCP Server repository - Included comprehensive project documentation with setup instructions - Added detailed feature list and usage guidelines - Included security notes and contribution guidelines - Added acknowledgments section crediting original author ## Restructured README for Monsoft Solutions Brand - 2:55 PM - Reorganized README to align with Monsoft Solutions' repository structure - Integrated Gmail MCP documentation into main README as first available MCP - Updated installation and setup instructions for monorepo structure - Corrected all paths and commands to reflect package location - Enhanced configuration examples with accurate paths and package names - Maintained consistent branding and professional tone throughout ## Added TODO List of Additional Gmail API Tools - 3:45 PM - Added a comprehensive list of potential new Gmail API tools - Categorized tools into logical groups (Attachment, Thread, Draft Management, etc.) - Defined clear purpose and description for each proposed tool - Identified key functionality gaps in current implementation - Provided a roadmap for future Gmail MCP development ## Implemented search_advanced_filters for Gmail MCP - 4:30 PM - Added new searchWithFilters method to GmailTools class for structured email filtering - Implemented search_advanced_filters tool with comprehensive filtering options - Added support for date range filtering (afterDate, beforeDate) - Implemented content filtering options (hasWords, doesNotHaveWords) - Added message attribute filters (isRead, isStarred, hasAttachment) - Included size filtering with minSize and maxSize parameters - Implemented folder and label-based filtering - Updated README with comprehensive documentation and example usage ## Gmail API Integration Testing for Email Summary - 5:15 PM - Successfully tested Gmail MCP integration with email retrieval capabilities - Verified connectivity and authentication with Gmail API - Retrieved and analyzed recent emails from the past 3 weeks - Successfully filtered out emails containing "subscribe" in content - Tested email content extraction and parsing capabilities - Generated comprehensive summary of important emails - Validated proper functioning of search_emails and read_email tools - Tested date-based filtering and content-based search features ## Updated Gmail MCP Tool Names for Better Clarity - 6:30 PM - Renamed all Gmail MCP tools to include 'gmail\_' prefix for better identification - Updated tool 'send_email' to 'gmail_send_email' - Updated tool 'draft_email' to 'gmail_draft_email' - Updated tool 'read_email' to 'gmail_read_email' - Updated tool 'list_emails' to 'gmail_list_emails' - Updated tool 'list_emails_with_advanced_filters' to 'gmail_list_emails_with_advanced_filters' - Updated tool 'modify_email' to 'gmail_modify_email' - Updated tool 'delete_email' to 'gmail_delete_email' - Updated tool 'list_email_labels' to 'gmail_list_email_labels' - Updated documentation in README to reflect the new tool names - Validated and built the package to ensure functionality with new tool names ## Improved Gmail MCP Server Name and Version - 7:15 PM - Updated the server name from generic 'gmail' to more descriptive 'Gmail Email Integration MCP' - Synchronized server version with package.json version (0.2.0) - Updated both stdio and SSE server instances to use the same descriptive name and version - Validated changes and built the package to ensure proper functionality - Enhanced server identification for client connections and debugging purposes ## Gmail MCP Tools Refactoring and Additional Tools - 4:00 PM - Refactored the Gmail MCP tools structure for better organization and maintainability - Split the monolithic gmail-tools.ts into multiple specialized modules: - base-gmail-tool.ts - Base class with common functionality - email-operations.ts - Send, draft, and read emails - search-operations.ts - Search and filter emails - label-operations.ts - Label management - message-management.ts - Message actions (delete, archive, trash) - Implemented additional tools: - gmail_mark_as_read - Mark emails as read - gmail_mark_as_unread - Mark emails as unread - gmail_archive_email - Move emails to archive - gmail_move_to_trash - Move emails to trash - gmail_recover_from_trash - Restore emails from trash - Updated README.md to document the new tools ## Implemented Batch Email Operations - 7:45 PM - Added a new module for batch email operations (batch-operations.ts) - Implemented six new batch operation tools: - gmail_batch_delete - Delete multiple emails in a single operation - gmail_batch_modify - Apply or remove labels from multiple emails at once - gmail_batch_mark_as_read - Mark multiple emails as read in a single operation - gmail_batch_mark_as_unread - Mark multiple emails as unread in a single operation - gmail_batch_archive - Archive multiple emails in a single operation - gmail_batch_move_to_trash - Move multiple emails to trash in a single operation - Updated README.md with comprehensive documentation for batch operations - Added code examples and usage instructions for each batch operation - Updated the TODO section to mark batch operations as completed ## Separated GSuite MCP Request into Independent Issues - 6:30 PM - Updated issue #7 to focus solely on Gmail MCP implementation - Created new issue #15 for Google Calendar MCP implementation - Restructured issue templates to follow standardized format - Enhanced clarity by separating concerns between email and calendar functionality - Updated related issues sections to link between the two issues ## Slack MCP Implementation - 06:32 PM - Created initial Slack MCP server implementation with full support for Slack API - Implemented channel operations (list channels, get history) - Implemented message operations (post message, reply to thread, add reaction, get thread replies) - Implemented user operations (list users, get user profile) - Added support for both stdio and SSE server transports - Set up proper error handling with custom error classes - Created comprehensive type definitions for Slack objects ## Extended Slack MCP Message Operations - 05:15 PM - Added rich message posting with blocks and attachments support - Implemented message updating capability for existing messages - Added message deletion functionality - Implemented scheduled message posting for future delivery - Updated documentation in README.md to reflect new capabilities - Reorganized numbering of tools in documentation for clarity ## Updated Slack MCP Bot Token Scopes - 05:45 PM - Added `chat:write.customize` scope for rich message formatting - Added `chat:write.public` scope for posting in public channels without invitation - Added `chat:update` scope for the message update functionality - Added `chat:delete` scope for the message deletion functionality - Added `chat:schedule` scope for the scheduled message posting - Updated README.md setup instructions with comprehensive scopes list ## Improved Slack Tool Parameter Schema Descriptions - 06:45 PM - Updated the Zod schema description for `blocks` parameter with examples and type information - Enhanced the `attachments` parameter description with usage context and format examples - Added cross-references between tools to avoid duplication in parameter descriptions - Clarified the `post_at` timestamp format for scheduled messages - Standardized parameter description format across all message management tools ## Implemented Slack File Operations Tools - 07:30 PM - Created FileOperationsTool class for handling file-related operations - Implemented 8 new file operation tools: - slack_upload_file - Upload a file from a local path to Slack - slack_upload_file_content - Upload string content as a file to Slack - slack_get_file_info - Get information about a specific file - slack_share_file - Share an existing file to a channel - slack_enable_public_url - Enable a public URL for a file - slack_disable_public_url - Disable the public URL for a file - slack_list_files - List files with optional filtering by channel or user - slack_delete_file - Delete a file from Slack - Added comprehensive type definitions for Slack file objects - Created detailed FileType type definition for supporting various file formats - Updated README.md with documentation and examples for all file operations ## Improved Slack File Operations Type Safety and Descriptions - 08:15 PM - Updated the file_type parameter in slack_upload_file and slack_upload_file_content tools to use z.enum instead of z.string - Explicitly referenced all possible file types from FileType definition for better type safety and IDE autocompletion - Improved parameter descriptions throughout all file operation tools: - Added format hints for file and channel IDs (e.g., starts with "F" or "C") - Clarified default values and behaviors for optional parameters - Added examples for complex parameters - Enhanced descriptions with additional context (e.g., permanent actions) - Added notes about maximum limits for pagination parameters - Fixed a minor linter error related to the file-type.js import path ## Refactored FileType Implementation with Zod Enum - 08:45 PM - Converted the FileType definition to use a Zod enum (FileTypeEnum) for better type safety and reusability - Refactored file-type.ts to export both the Zod enum schema and the TypeScript type (using z.infer) - Updated file operation tools in index.ts to use the centralized FileTypeEnum - Eliminated duplicate enum declarations across multiple tools, reducing code duplication - Improved maintainability by centralizing the file type definitions in a single location - Enhanced type safety by ensuring consistent type usage between runtime validation and TypeScript definitions ## Implemented Slack Channel Management Features - 02:40 PM - Added functionality to create new public and private Slack channels - Implemented channel archiving and unarchiving capabilities - Added support for inviting users to channels - Implemented comprehensive channel information retrieval - Updated documentation to reflect new channel management features - Added proper input validation and error handling for all new operations

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/Monsoft-Solutions/model-context-protocols'

If you have feedback or need assistance with the MCP directory API, please join our Discord server