Skip to content

Conversation

@stainless-app
Copy link
Contributor

@stainless-app stainless-app bot commented Dec 1, 2025

Automated Release PR

3.0.0-rc.1 (2025-12-18)

Full Changelog: v2.3.3-rc.1...v3.0.0-rc.1

⚠ BREAKING CHANGES

  • mcp: remove deprecated tool schemes
  • mcp: Migration: To migrate, simply modify the command used to invoke the MCP server. Currently, the only supported tool scheme is code mode. Now, starting the server with just node /path/to/mcp/server or npx package-name will invoke code tools: changing your command to one of these is likely all you will need to do.

Features

  • mcp: add typescript check to code execution tool (7ecde82)
  • mcp: handle code mode calls in the Stainless API (a705a1b)
  • mcp: return logs on code tool errors (76551d3)

Bug Fixes

  • mcp: add client instantiation options to code tool (761c3b1)
  • mcp: correct code tool API endpoint (6cd6857)
  • mcp: pass base url to code tool (59063c0)
  • mcp: return correct lines on typescript errors (c7e0c9b)
  • mcp: return tool execution error on api error (b62c6ba)

Chores

  • internal: codegen related update (5958ab9)
  • internal: codegen related update (30d1025)
  • internal: upgrade eslint (4ae73b1)
  • mcp: remove deprecated tool schemes (e376d65)
  • mcp: update lockfile (8d1106e)
  • use latest @modelcontextprotocol/sdk (08d8625)

This pull request is managed by Stainless's GitHub App.

The semver version number is based on included commit messages. Alternatively, you can manually set the version number in the title of this pull request.

For a better experience, it is recommended to use either rebase-merge or squash-merge when merging this pull request.

🔗 Stainless website
📚 Read the docs
🙋 Reach out for help or questions

@pullrequest
Copy link

pullrequest bot commented Dec 1, 2025

HackerOne Code Security Review

🟢 Scan Complete: 23 Issue(s)
🟢 Validation Complete: Any Issues detected were validated by one of our engineers. None were determined to require immediate action.

Here's how the code changes were interpreted and info about the tools used for scanning.

📖 Summary of Changes The update involves a minor release candidate revision from 2.3.3-rc.1 to 2.3.3-rc.2. The primary change is enhanced error handling across multiple tool files in the MCP server package, specifically adding checks for Writer.APIError. These modifications improve error detection and reporting mechanisms, with version numbers consistently updated across configuration and source files.
File Summary
.release-please-manifest.json The version number in the file has been updated from 2.3.3-rc.1 to 2.3.3-rc.2, indicating a minor release candidate revision.
CHANGELOG.md The changelog now includes a new version 2.3.3-rc.2 with a single bug fix for MCP tool execution error handling. The primary change is returning a tool execution error when an API error occurs.
package.json The only change is the version number, which was updated from "2.3.3-rc.1" to "2.3.3-rc.2", indicating a minor release candidate update.
packages/mcp-server/package.json The only change in the package.json file is the version number, which was updated from "2.3.3-rc.1" to "2.3.3-rc.2". No other modifications were made to the file.
packages/mcp-server/src/server.ts The version number for the 'writer_sdk_api' was updated from '2.3.3-rc.1' to '2.3.3-rc.2' in the newMcpServer function definition. No other changes were observed in the file.
packages/mcp-server/src/tools/graphs/add-file-to-graph-graphs.ts The file contains a minor modification to the error handling in the handler function, specifically adding a check for Writer.APIError in addition to the existing isJqError check when returning an error result.
packages/mcp-server/src/tools/applications/graphs/list-applications-graphs.ts The file's error handling in the handler function was updated to include an additional check for Writer.APIError before calling isJqError, expanding the error handling conditions for the API call.
packages/mcp-server/src/tools/applications/graphs/update-applications-graphs.ts The file's error handling in the handler function was updated to include an additional check for Writer.APIError before calling asErrorResult, expanding the error handling capabilities of the function.
packages/mcp-server/src/tools/translation/translate-translation.ts The file's handler function was updated to include an additional error check for Writer.APIError in the catch block, allowing for more comprehensive error handling while maintaining the same overall structure and functionality.
packages/mcp-server/src/tools/applications/jobs/list-applications-jobs.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, allowing it to return an error result for API-specific errors in addition to jq filtering errors.
packages/mcp-server/src/tools/applications/jobs/retrieve-applications-jobs.ts The file's handler function was updated to include an additional error check for Writer.APIError, allowing for more comprehensive error handling when retrieving application jobs.
packages/mcp-server/src/tools/tools/parse-pdf-tools.ts The file's handler function was updated to include an additional error check for Writer.APIError in the catch block, alongside the existing isJqError check, before returning an error result.
packages/mcp-server/src/tools/applications/list-applications.ts The file contains a minor modification in the error handling section of the handler function, adding a check for Writer.APIError in addition to the existing isJqError check before returning an error result.
packages/mcp-server/src/tools/chat/chat-chat.ts The changes include adding error handling in the handler function, specifically importing asErrorResult and wrapping the client.chat.chat call in a try-catch block to handle Writer.APIError and return an error result.
packages/mcp-server/src/tools/completions/create-completions.ts The file contains a minor modification to the error handling in the handler function, specifically adding a check for Writer.APIError in addition to the existing isJqError check before returning an error result.
packages/mcp-server/src/tools/files/delete-files.ts The file's handler function was updated to include an additional error check for Writer.APIError before calling asErrorResult, expanding the error handling logic for the delete files operation.
packages/mcp-server/src/tools/files/list-files.ts The only change is in the handler function's error handling, where an additional check for error instanceof Writer.APIError is added before the existing isJqError(error) check when returning an error result.
packages/mcp-server/src/tools/files/retrieve-files.ts The file contains a minor modification in the error handling section of the handler function, adding a check for Writer.APIError in addition to the existing isJqError check when returning an error result.
packages/mcp-server/src/tools/files/retry-files.ts The handler function was updated to include an additional error check for Writer.APIError in the catch block, allowing for more comprehensive error handling when retrying files.
packages/mcp-server/src/tools/files/upload-files.ts The primary change is in the error handling of the handler function, where an additional check for Writer.APIError is added before calling isJqError(error) when returning an error result.
packages/mcp-server/src/tools/graphs/create-graphs.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, allowing more comprehensive error handling while maintaining the same overall structure and functionality.
packages/mcp-server/src/tools/graphs/delete-graphs.ts The file's handler function was updated to include an additional error check for Writer.APIError in the catch block, expanding the error handling logic while maintaining the overall structure of the code.
packages/mcp-server/src/tools/graphs/list-graphs.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, allowing more comprehensive error handling when making API calls.
packages/mcp-server/src/tools/graphs/question-graphs.ts The file now includes error handling in the handler function, adding a try-catch block that catches Writer.APIError and converts it to an error result using asErrorResult, while also importing asErrorResult from the types module.
packages/mcp-server/src/tools/graphs/remove-file-from-graph-graphs.ts The only change is in the error handling of the handler function, where an additional check for error instanceof Writer.APIError is added before calling isJqError(error) when returning an error result.
packages/mcp-server/src/tools/graphs/retrieve-graphs.ts The file contains a minor change in the error handling of the handler function, specifically adding a check for Writer.APIError in addition to the existing isJqError check when returning an error result.
packages/mcp-server/src/tools/graphs/update-graphs.ts The file's handler function was updated to include an additional error check for Writer.APIError before returning an error result, while maintaining the overall structure and functionality of the code.
packages/mcp-server/src/tools/models/list-models.ts The file's handler function was updated to include an additional error check for Writer.APIError, expanding the error handling logic when catching and processing errors during the models list operation.
packages/mcp-server/src/tools/tools/ai-detect-tools.ts The file's handler function was updated to include an additional error check for Writer.APIError in the catch block, alongside the existing isJqError check. No other changes were observed in the file.
packages/mcp-server/src/tools/tools/comprehend/medical-tools-comprehend.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, allowing it to return an error result for API-specific errors in addition to existing jq filter errors.
packages/mcp-server/src/tools/tools/context-aware-splitting-tools.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, which will now be caught and returned as an error result alongside existing jq errors.
packages/mcp-server/src/tools/tools/web-search-tools.ts The file's handler function was updated to include an additional error check for Writer.APIError in the catch block, expanding the error handling logic for the web search tool.
packages/mcp-server/src/tools/vision/analyze-vision.ts The file's handler function was updated to include an additional error handling condition for Writer.APIError, which will now be caught and returned as an error result alongside existing jq error handling.
src/version.ts The version number was incremented from '2.3.3-rc.1' to '2.3.3-rc.2', indicating a minor release candidate update.
ℹ️ Issues Detected

NOTE: These may not require action!

Below are unvalidated results from the Analysis Tools that ran during the latest scan for transparency. We investigate each of these for accuracy and relevance before surfacing them as a potential problem.

How will I know if something is a problem?
When validation completes, any concerns that warrant attention prior to merge will be posted as inline comments. These will show up in 2 ways:

  • Expert review (most cases): Issues will be posted by experts who manually reviewed and validated them. These are real HackerOne engineers (not bots) reviewing through an integrated IDE-like tool. You can communicate with them like any other reviewer. They'll stay assigned and get notified with commit & comment updates.
  • Automatically: In cases where our validation checks have highest confidence the problem is legitimate and urgent. These will include a description of contextual reasoning why & actionable next steps.
File & Line Issue
packages/mcp-server/src/tools/files/list-files.ts Line 81 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/files/upload-files.ts Line 53 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/graphs/delete-graphs.ts Line 47 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/graphs/question-graphs.ts Line 184 The code change adds proper error handling for API errors from the Writer SDK. Previously, the code only handled jq filter errors in other files but had no error handling at all in this file. Now it properly catches Writer.APIError instances and returns the error message to the user instead of letting the error propagate uncaught, which could potentially expose sensitive information or cause the application to crash.
packages/mcp-server/src/tools/models/list-models.ts Line 44 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/translation/translate-translation.ts Line 83 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/files/retrieve-files.ts Line 47 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/jobs/create-applications-jobs.ts Line 70 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/jobs/retrieve-applications-jobs.ts Line 46 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/files/retry-files.ts Line 49 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/graphs/list-applications-graphs.ts Line 48 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/tools/ai-detect-tools.ts Line 46 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/graphs/add-file-to-graph-graphs.ts Line 51 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/tools/parse-pdf-tools.ts Line 50 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/jobs/list-applications-jobs.ts Line 61 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/graphs/update-applications-graphs.ts Line 56 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/chat/chat-chat.ts Line 940 The error handling has been improved to catch Writer.APIError instances and return them as error results, but it still re-throws all other errors without proper handling. This could potentially expose sensitive error information or cause the application to crash when encountering unexpected errors. A more comprehensive error handling approach would catch and properly format all errors.
packages/mcp-server/src/tools/graphs/create-graphs.ts Line 52 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/graphs/remove-file-from-graph-graphs.ts Line 52 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/files/delete-files.ts Line 47 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/vision/analyze-vision.ts Line 73 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/applications/jobs/retry-applications-jobs.ts Line 44 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
packages/mcp-server/src/tools/tools/context-aware-splitting-tools.ts Line 52 The error handling has been modified to catch Writer.APIError instances, but the error message is directly passed to asErrorResult without proper sanitization or validation. This could potentially expose sensitive information from API errors to the client.
🧰 Analysis tools

⏱️ Latest scan covered changes up to commit 2f53634 (latest)

@pullrequest
Copy link

pullrequest bot commented Dec 1, 2025

✅ Graham C reviewed all the included code changes and associated automation findings and determined that there were no immediately actionable security flaws. Note that they will continue to be notified of any new commits or comments and follow up as needed throughout the duration of this pull request's lifecycle.

Image of Graham C Graham C


Reviewed with ❤️ by PullRequest

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 2f53634 to 1de5612 Compare December 1, 2025 22:15
@stainless-app stainless-app bot changed the title release: 2.3.3-rc.2 release: 2.4.0-rc.1 Dec 1, 2025
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 1de5612 to 531372d Compare December 1, 2025 22:15
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 531372d to 54bc237 Compare December 2, 2025 13:04
@pullrequest
Copy link

pullrequest bot commented Dec 2, 2025

PullRequest reviewed the updates made to #239 up until the latest commit (54bc237). No further issues were found.

Reviewed by:

Image of Graham C Graham C

@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 54bc237 to 3b15158 Compare December 4, 2025 15:31
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 3b15158 to c6ec4f0 Compare December 4, 2025 21:25
Moves the code-mode execution to an endpoint in the Stainless API.
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from c6ec4f0 to f206eb5 Compare December 5, 2025 18:04
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from f206eb5 to 6571fab Compare December 5, 2025 20:42
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 6571fab to 1d77e94 Compare December 5, 2025 21:19
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 1d77e94 to ad4def7 Compare December 5, 2025 23:39
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from ad4def7 to 805002d Compare December 5, 2025 23:52
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 805002d to b29456b Compare December 10, 2025 18:02
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from b29456b to 746d834 Compare December 10, 2025 19:16
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 746d834 to 5c0a748 Compare December 17, 2025 21:31
This removes all tool schemes except for "code mode" tools. Specifically, this removes "all tools" and "dynamic tools" schemes. Additionally, this removes support for resource filtering, tags, jq filtering, and compatibility controls in MCP servers, as they are no longer necessary when using code mode.

# Migration

To migrate, simply modify the command used to invoke the MCP server. Currently, the only supported tool scheme is code mode. Now, starting the server with just `node /path/to/mcp/server` or `npx package-name` will invoke code tools: changing your command to one of these is likely all you will need to do.

Specifically, you must remove all flags including things like --resources, --tags, --client, --tools=dynamic, etc from your invocation command. The only supported flags are now `--port`, `--transport`, `--socket`, and `--tools=docs` (specifically for "docs"). These are also the only options available for http servers.

migration-effort: small
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from 5c0a748 to f6fb481 Compare December 18, 2025 20:58
@stainless-app stainless-app bot changed the title release: 2.4.0-rc.1 release: 3.0.0-rc.1 Dec 18, 2025
@stainless-app stainless-app bot force-pushed the release-please--branches--main--changes--next--components--writer-sdk branch from f6fb481 to 587d164 Compare December 18, 2025 20:59
@pullrequest
Copy link

pullrequest bot commented Dec 27, 2025

PullRequest reviewed the updates made to #239 up until the latest commit (587d164). No further issues were found.

Reviewed by:

Image of Graham C Graham C

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant