Skip to content

Fix vulnerability https://github.com/smartsheet-platform/smar-mcp/security/dependabot/16#84

Open
smar-imran-khawaja wants to merge 7 commits into
mainfrom
fix-vulnerability
Open

Fix vulnerability https://github.com/smartsheet-platform/smar-mcp/security/dependabot/16#84
smar-imran-khawaja wants to merge 7 commits into
mainfrom
fix-vulnerability

Conversation

@smar-imran-khawaja

Copy link
Copy Markdown
Contributor

Fixes https://github.com/smartsheet-platform/smar-mcp/security/dependabot/16 and updates logging to prevent errors shown in Claude and other MCP clients

The most important changes are:

Dependency Updates:

  • Updated dependencies in package.json, including @modelcontextprotocol/sdk, zod, @semantic-release/npm, and semantic-release to their latest versions.

Logging Changes:

Description

Related Issue

Type of Change

  • Bug fix
  • New feature
  • Documentation update
  • Code refactoring
  • Other (please describe): Vulnerability fix

How Has This Been Tested?

Checklist

  • My code follows the code style of this project
  • I have added tests that prove my fix is effective or that my feature works
  • I have updated the documentation accordingly
  • My changes generate no new warnings or errors

…25.0

Fixes https://github.com/smartsheet-platform/smar-mcp/security/dependabot/16

BREAKING CHANGE: Requires Node.js 16+ and zod ^3.25.0 for MCP SDK compatibility
Changed all console.info() calls to console.error() so log messages
go to stderr instead of stdout. MCP uses stdout exclusively for
JSON-RPC messages, and any non-JSON output breaks the protocol.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses a Dependabot security vulnerability and modifies logging behavior across the codebase. While the dependency updates appear appropriate for security remediation, the logging changes introduce semantic inconsistencies that may cause operational issues.

Key Changes:

  • Updated four dependencies to newer versions, including major version bumps for semantic-release packages
  • Replaced all console.info statements with console.error across tool modules, API classes, and the main server file

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
package.json Updates @modelcontextprotocol/sdk, zod, @semantic-release/npm, and semantic-release to newer versions for security remediation
src/index.ts Changes server startup and configuration logs from console.info to console.error
src/apis/smartsheet-api.ts Changes API request logging from console.info to console.error
src/apis/smartsheet-sheet-api.ts Changes sheet copy result logging from console.info to console.error
src/tools/smartsheet-workspace-tools.ts Changes workspace operation logs from console.info to console.error
src/tools/smartsheet-user-tools.ts Changes user operation logs from console.info to console.error
src/tools/smartsheet-update-request-tools.ts Changes update request logs from console.info to console.error
src/tools/smartsheet-sheet-tools.ts Changes sheet operation logs from console.info to console.error
src/tools/smartsheet-search-tools.ts Changes search operation logs from console.info to console.error
src/tools/smartsheet-folder-tools.ts Changes folder operation logs from console.info to console.error
src/tools/smartsheet-discussion-tools.ts Changes discussion operation logs from console.info to console.error

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/index.ts Outdated
Comment thread src/tools/smartsheet-workspace-tools.ts Outdated
Comment thread src/apis/smartsheet-api.ts Outdated
}

console.info(`API Request: ${method} ${url.toString()}`);
console.error(`API Request: ${method} ${url.toString()}`);

Copilot AI Jan 7, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent logging approach across the codebase. This file uses console.error for informational messages, while src/apis/smartsheet-sheet-api.ts still uses console.debug for similar operational logs (lines 147, 151, 155). The codebase also uses console.warn in src/tools/smartsheet-sheet-tools.ts (lines 340, 397). This mix of console.error, console.debug, and console.warn makes it difficult to properly filter and monitor logs. Consider establishing a consistent logging strategy.

Copilot uses AI. Check for mistakes.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot open a new pull request to apply changes based on this feedback

Comment thread package.json
smar-imran-khawaja and others added 2 commits January 7, 2026 10:39
Replaced all console.log/info/warn/error calls with a centralized logger
that uses MCP's sendLoggingMessage API to send logs through the protocol.

- Added src/utils/logger.ts with debug/info/warning/error levels
- Falls back to stderr before server connection
- After connection, logs are sent via MCP notifications
- Claude Desktop displays these in its MCP logs

Copilot AI commented Jan 8, 2026

Copy link
Copy Markdown

@smar-imran-khawaja I've opened a new pull request, #85, to work on those changes. Once the pull request is ready, I'll request review from you.

Copilot AI and others added 3 commits January 8, 2026 00:07
- Updated package.json engines to require Node.js ^22.14.0 || >=24.10.0
- Updated npm requirement to >=10.0.0
- Created comprehensive upgrade documentation in docs/SEMANTIC_RELEASE_UPGRADE.md
- Updated README.md prerequisites section with new requirements
- Verified .releaserc.json configuration is compatible with v25
- Confirmed GitHub Actions workflow already uses Node.js 22

Co-authored-by: smar-imran-khawaja <174051013+smar-imran-khawaja@users.noreply.github.com>
- Clarified that Node.js 22 will use latest 22.x version (>= 22.14.0)
- Added note about setup-node@v3 being functional but recommended to update to v4

Co-authored-by: smar-imran-khawaja <174051013+smar-imran-khawaja@users.noreply.github.com>
fix: update Node.js requirements for semantic-release v25 compatibility
Copilot AI mentioned this pull request Jan 8, 2026
9 tasks

Copilot AI commented Jan 8, 2026

Copy link
Copy Markdown

@smar-imran-khawaja I've opened a new pull request, #86, to work on those changes. Once the pull request is ready, I'll request review from you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants