Skip to content

mcp>=1.0.0 unpinned causes crash with mcp 2.0.0 (AttributeError: 'Server' object has no attribute 'list_tools') #16

Closed

Description

@qwer36613698

Bug report

finmind-mcp fails to start when installed via both uvx finmind-mcp and pipx install finmind-mcp, because pyproject.toml declares mcp>=1.0.0 with no upper bound. The mcp SDK just released a breaking major version 2.0.0 (removed the old @app.list_tools() / @app.call_tool() decorator API on Server), so pip/uv resolve to mcp==2.0.0, and finmind_mcp/server.py (written against the 1.x API) crashes at import time:

Traceback (most recent call last):
  File ".../bin/finmind-mcp", line 3, in <module>
    from finmind_mcp.server import main
  File ".../site-packages/finmind_mcp/server.py", line 28, in <module>
    @app.list_tools()
AttributeError: 'Server' object has no attribute 'list_tools'

Repro

pip install finmind-mcp   # or uvx finmind-mcp / pipx install finmind-mcp
finmind-mcp

Installs mcp==2.0.0 and crashes as above.

Fix confirmed

Pinning mcp<2.0.0 (tested with mcp==1.29.0) resolves the issue — finmind_mcp.server imports cleanly.

Suggested fix

Pin the dependency in pyproject.toml, e.g. mcp>=1.0.0,<2.0.0, or update server.py to the new mcp 2.0 Server API.

Environment

  • finmind-mcp: 0.0.5 (latest on PyPI as of 2026-08-01)
  • mcp: 2.0.0 (also reproduced fix with 1.29.0)
  • Python: 3.10
  • Install methods tried: pip install, uvx finmind-mcp, pipx install finmind-mcp — all affected

Activity

  1. added a commit that references this issue on Aug 1, 2026
    a15a42b
  2. linsamtw commented on Aug 1, 2026

    @linsamtw
    Contributor

    Thanks for the detailed report and for confirming the fix with mcp==1.29.0 — much appreciated!

    You're right: mcp 2.0.0 removed the 1.x Server decorator API and our unpinned mcp>=1.0.0 picked it up. We've pinned mcp>=1.0.0,<2.0.0 (#18) and released finmind-mcp 0.0.6 to PyPI, so a fresh pip install / uvx finmind-mcp / pipx install finmind-mcp now resolves to mcp 1.x and starts cleanly.

    If you have an existing broken environment:

    pip install -U finmind-mcp        # or: pipx upgrade finmind-mcp / uvx finmind-mcp@latest
    

    Migrating server.py to the mcp 2.0 API is tracked separately in #20. Thanks again!

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions