Skip to content

Standardize the CLI's interactivity with the MCP tools #29

@chriscarrollsmith

Description

@chriscarrollsmith

Ideally we would have the CLI connected to the same server as the MCP client is connected to, but unfortunately this is not possible with our stdio transport MCP architecture.

Instead, we will have to instantiate the TaskManager directly in the CLI entrypoint and call its methods.

This creates a problem of configuration. If the user starts the MCP server with a custom file path env variable, they will need to make sure to set the same env variable is set for the CLI process, or else the CLI will be writing to a different file.

Probably we should strongly recommend against using a custom path, and we should make very clear in the docs that if they do use one, it needs to be set separately for both processes (or with a CLI argument/command, which we should make sure to support as well).

  1. Let's make sure the CLI is creating a TaskManager instance and calling the listProjects and listTasks methods directly rather than reading the file based on its own internal logic.
  2. Let's make sure the CLI supports custom file path via either an env variable or an argument.
  3. Let's make sure to explain in the README why using a custom file path might be a bad idea, and how to coordinate the custom file paths of the CLI and server entrypoints if the user opts to do this.

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