todo-app/mcp/todo_mcp/__init__.py
Krzysztof kuhy Rudnicki 5f29dfebf7
Some checks are pending
dependency freshness / dependencies on newest stable (push) Waiting to run
file-length / file length <= 250 lines (push) Waiting to run
md-naming / markdown naming convention (push) Waiting to run
release-apk / release (APK) (push) Waiting to run
Latest stable dependencies, and the gate that keeps them there
Three git-tag pins move (crdt_sync_dart v0.10.0 -> v0.11.1, design_system
v0.1.0 -> v0.2.1, github_device_auth v0.3.0 -> v0.3.1) and every caret in the
pubspec becomes an exact pin, flutter_secure_storage 10.3.1 -> 11.0.0 being
the one that matters. That version demands compileSdk 37, which needs AGP >
9.1.0, which needs Gradle >= 9.5.0, so those three move in this commit too.

**mcp 1.x -> 2.1.1 in the MCP subproject is a real breaking change.** FastMCP
was renamed MCPServer and moved to `mcp.server.mcpserver`; the decorator and
`run()` API are unchanged, so the migration is the import and the constructor.
Verified by driving the server over stdio: `initialize` and `tools/list` both
answer, all three tools still enumerate. 24 tests at 100% coverage.

`very_good_analysis` 10.3 adds a `cascade_invocations` finding on the
port-in-use message in bin/todo_desktop.dart. Fixed, not suppressed.

300 Dart tests green, `flutter analyze` clean, release APK builds.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CRykabMwPgDzFHcARoqpaK
2026-08-28 14:46:50 +02:00

18 lines
651 B
Python

"""Read-only MCP server package for the ``todo`` Flutter app's backlog.
The ``todo`` app is Dart/Flutter and stores notes in a ``sqlite_crdt`` database
that must never be touched from here (CRDT writes corrupt cross-device merge).
Instead, this package reads the app's exported ``BACKLOG.md`` file — the
canonical, human-exportable "NotesMarkdown" snapshot — and exposes it to MCP
clients (Claude Code and its subagents) as a handful of read-only tools.
See :mod:`todo_mcp._backlog` for the parser and :mod:`todo_mcp._mcp` for the
MCPServer stdio server.
"""
from __future__ import annotations
__all__ = ["__version__"]
__version__ = "1.0.0"