Skip to content

Rename top-level src package to mcp_ynab #23

Description

@pragprogrammer

@
The wheel installs a top-level src package into site-packages:

[tool.hatch.build.targets.wheel]
packages = ["src"]

[project.scripts]
mcp-ynab = "src.server:main"

Any other distribution that does the same thing collides with us in a shared
environment, and src is a common enough choice that this is a real risk rather
than a theoretical one. Whichever package installs last wins, and the failure
mode is confusing import errors far from the cause.

Scope

Smaller than it looks:

  • The console script stays mcp-ynab, so anyone running uvx mcp-ynab or using
    a normal MCP client config is unaffected.
  • It breaks python -m src.server, which is documented in CLAUDE.md and would
    become python -m mcp_ynab.server.
  • The diff is wide but mechanical: src/ moves to mcp_ynab/, every
    from src.x import y is rewritten, plus tests and the entry point.

Deliberately kept out of #22 so the mcp 2.0.0 outage fix stayed reviewable. There
is a matching TODO in pyproject.toml.

Worth shipping as its own minor release.
@

Activity

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions