Skip to content

fix: mcp UI resources typo#866

Merged
suluyana merged 12 commits intomodelscope:mainfrom
suluyana:feat/mcp_ui_resources
Feb 9, 2026
Merged

fix: mcp UI resources typo#866
suluyana merged 12 commits intomodelscope:mainfrom
suluyana:feat/mcp_ui_resources

Conversation

@suluyana
Copy link
Collaborator

@suluyana suluyana commented Feb 9, 2026

Change Summary

Related issue number

Checklist

  • The pull request title is a good summary of the changes - it will be used in the changelog
  • Unit tests for the changes exist
  • Run pre-commit install and pre-commit run --all-files before git commit, and passed lint check.
  • Documentation reflects the changes where applicable

suluyan and others added 12 commits December 24, 2025 20:55
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
This reverts commit adae061.
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @suluyana, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses an issue where UI resources from MCP results were incorrectly typed and processed as simple strings. The changes update the Message class to correctly type these resources as a list of dictionaries and modify the call_tool function to parse the incoming resource content from JSON strings into structured dictionaries, ensuring data integrity and correct handling of UI resources.

Highlights

  • Resource Type Correction: The resources field within the Message class in ms_agent/llm/utils.py has been updated. Its type hint changed from List[str] to List[Dict[str, str]] to accurately represent its content as structured UI resources from MCP results.
  • Resource Processing Logic: The call_tool function in ms_agent/tools/mcp_client.py now correctly processes resource content. Instead of treating resources as simple strings, it converts them from a JSON string representation (using model_dump_json) into a dictionary using json5.loads, ensuring proper data handling and alignment with the updated type definition.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • ms_agent/llm/utils.py
    • Updated the type hint for the resources field in the Message class from List[str] to List[Dict[str, str]].
    • Modified the comment for the resources field to clarify its purpose as 'UI resources from mcp result'.
  • ms_agent/tools/mcp_client.py
    • Added an import for the json5 library.
    • Changed the logic for handling resource content: it now converts content.resource to a JSON string using model_dump_json and then parses it into a dictionary using json5.loads before appending to the resources list.
Activity
  • The pull request was created by suluyana. No further review comments or activities are available in the provided context.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

The pull request updates the type of UI resources to support structured data, which is a good improvement. I've found an area in ms_agent/tools/mcp_client.py that can be improved for performance and code style. My feedback includes a suggestion to make the code more efficient by avoiding an unnecessary serialization/deserialization cycle and to follow standard Python import conventions.

@suluyana suluyana merged commit a20dd8b into modelscope:main Feb 9, 2026
1 of 2 checks passed
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.

2 participants