Skip to content

Conversation

@GuanyiLi-Craig
Copy link
Contributor

  1. add config, user can config tool set
  2. improve decorator
  3. use fastmcp Tool to get input and description

Copilot AI review requested due to automatic review settings January 2, 2026 22:24
Copy link
Contributor

Copilot AI left a comment

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 refactors the tool registration system to use FastMCP's native Tool abstraction and adds YAML-based configuration for filtering tools. The key changes include:

  • Decorator improvements: Simplified @tool() decorator that marks functions with metadata instead of using a global registry
  • Config system: New YAML-based tool filtering with include/exclude rules and wildcard support
  • FastMCP integration: Leverages FastMCP's Tool for input schemas and descriptions instead of manual introspection

Reviewed changes

Copilot reviewed 46 out of 47 changed files in this pull request and generated no comments.

Show a summary per file
File Description
uv.lock Added types-pyyaml dependency for type checking
pyproject.toml Added types-pyyaml to dev dependencies, configured mypy for yaml module
src/humcp/decorator.py Refactored to use metadata attributes instead of global registry
src/humcp/config.py New file implementing YAML-based tool filtering with wildcard support
src/humcp/server.py Refactored tool discovery to use FastMCP Tool registration
src/humcp/routes.py Updated to use RegisteredTool and FastMCP Tool parameters
src/humcp/registry.py Deleted - functionality moved to decorator.py
src/tools/**/*.py Updated all tools to use simplified @tool() decorator
tests/**/*.py Updated tests to match new implementation
config/tools.yaml New configuration file with examples for tool filtering
README.md Updated documentation with config examples and improved structure

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

@GuanyiLi-Craig GuanyiLi-Craig merged commit aaf2ceb into main Jan 3, 2026
4 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