Skip to content

Fix Smithery configuration: remove invalid config_schema parameter#133

Merged
jonpspri merged 1 commit into
mainfrom
smithery
Oct 10, 2025
Merged

Fix Smithery configuration: remove invalid config_schema parameter#133
jonpspri merged 1 commit into
mainfrom
smithery

Conversation

@jonpspri
Copy link
Copy Markdown
Owner

Summary

  • Removed config_schema=DatabeakSettings parameter from @smithery.server() decorator
  • Removed unused import of DatabeakSettings from core.settings

The Smithery platform doesn't support the config_schema parameter in the @smithery.server() decorator. This configuration parameter is specific to the FastMCP framework and doesn't apply to Smithery's deployment system. This change fixes the invalid configuration to ensure proper deployment to the Smithery platform.

Test plan

  • All pre-commit quality checks pass
  • All pytest unit tests pass (777 passed, 1 skipped)
  • Verified the decorator syntax is now correct for Smithery deployment

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings October 10, 2025 11:45
Copy link
Copy Markdown
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 fixes the Smithery configuration by removing an invalid config_schema parameter from the @smithery.server() decorator, as this parameter is not supported by the Smithery platform and is specific to FastMCP framework usage.

  • Removed the config_schema=DatabeakSettings parameter from the decorator
  • Removed the unused import of DatabeakSettings from core.settings

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@codecov
Copy link
Copy Markdown

codecov Bot commented Oct 10, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 84.74%. Comparing base (3c6ce7e) to head (076b3dc).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #133      +/-   ##
==========================================
- Coverage   84.75%   84.74%   -0.01%     
==========================================
  Files          27       27              
  Lines        3076     3075       -1     
  Branches      458      458              
==========================================
- Hits         2607     2606       -1     
  Misses        355      355              
  Partials      114      114              
Flag Coverage Δ
unittests 84.74% <100.00%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/databeak/server.py 96.87% <100.00%> (-0.05%) ⬇️

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3c6ce7e...076b3dc. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@claude
Copy link
Copy Markdown

claude Bot commented Oct 10, 2025

Code Review: Smithery Configuration Fix

Summary

This PR correctly removes the invalid config_schema parameter from the @smithery.server() decorator. The change is minimal, focused, and addresses the deployment configuration issue.

✅ Strengths

  1. Correct Fix: The config_schema parameter is indeed specific to FastMCP and doesn't apply to Smithery's deployment system. Removing it is the right solution.

  2. Clean Implementation: Properly removes the unused DatabeakSettings import after the parameter removal, avoiding dead code.

  3. Test Coverage: All 777 tests pass, and pre-commit quality checks pass. The change doesn't break existing functionality.

  4. Minimal Surface Area: Changes only what's necessary (2 deletions, 1 addition) - follows the principle of minimal change.

🔍 Code Quality Assessment

Type Safety: ✅ No type safety issues introduced. The decorator now has no parameters, which aligns with Smithery's expected signature.

Import Hygiene: ✅ Correctly removes unused import. This will satisfy ruff's unused import checks.

Server Composition: ✅ The change doesn't affect the server composition pattern. The create_server() function still properly mounts all specialized servers.

Settings Access: ✅ DatabeakSettings is still accessible where needed (e.g., system_server.py:21 imports it directly for actual use).

🔒 Security & Performance

  • Security: No security implications. This is a configuration decorator change.
  • Performance: No performance impact. The decorator metadata doesn't affect runtime behavior.

📋 Testing Considerations

The existing test suite at tests/unit/test_server.py covers:

  • Server creation via create_server() (line 434)
  • Server mounting (line 437-438)
  • Import verification (line 441-467)

These tests continue to pass, validating the change doesn't break server initialization.

Potential Test Enhancement (optional, not blocking): Consider adding a test that explicitly validates the @smithery.server() decorator is applied correctly without parameters. However, given this is deployment-specific configuration, integration testing during actual Smithery deployment is likely more valuable than unit tests here.

📝 Documentation

The PR description clearly explains:

  • What was changed
  • Why it was changed (Smithery platform limitation)
  • Verification steps taken

✅ Recommendation

APPROVE - This PR is ready to merge.

The change correctly addresses the Smithery deployment configuration issue with minimal, focused modifications. Code quality standards are maintained, tests pass, and the implementation follows DataBeak's established patterns.


Review conducted following DataBeak's quality standards from CLAUDE.md and style guidelines.

@jonpspri jonpspri merged commit 26d3a3c into main Oct 10, 2025
13 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