Skip to content

README documents get_work_package as a tool, but it isn't implemented (implement or remove from docs) #5

Description

@AndreaV-Lsi

Problem

The README documents a get_work_package tool (tool #12 in the catalog), but no such tool is
implemented
. The server exposes search_work_packages for lookups; get_work_package exists only
as an internal OpenProjectClient method (used by update_work_package to fetch the lock version),
not as an @mcp.tool.

Surfaced during live baseline testing against the instance (issue #1): a client that tried to call
get_work_package had no such tool and fell back to search_work_packages.

Options (pick one)

  1. Implement it — add a thin @mcp.tool async def get_work_package(work_package_id: int) in
    src/tools/work_packages.py that wraps the existing client.get_work_package(...) and formats
    with format_work_package_detail (the formatter already exists and is currently imported-but-
    unused in that module). Matches the README and the natural "get one by id" expectation.
  2. Remove it from the docs — drop the get_work_package entry from the README and point users
    to search_work_packages (query by id).

Option 1 is likely the better fit (the formatter and client method already exist, so it's a small,
high-value addition), but either resolves the mismatch.

Scope

  • Either src/tools/work_packages.py (+ README catalog) for option 1, or README.md only for
    option 2.

Out of scope

Acceptance criteria

  • The README tool catalog and the actual registered toolset agree about get_work_package.
  • If implemented: the tool returns details for a valid id and a clean error for a missing one;
    README updated; a small test added.

Type: small. Related: #1 (surfaced it), #4 (README fixups). Label: backlog.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlogLogged future work item, not yet scheduled

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions