The new cli uses :db/id as its primary id while the existing mcp uses
:block/uuid. These changes on list tools cause slow and sometimes breaking interactions
for updates. It also causes buggy/inconsistent mcp behavior b/n mcp cli and server as there
are different implentations being called. The new cli should use its own
thread-api/* fns and replace MCP when it can meet existing functionality - working
updates and provide a CLI interface.
Also fix mcp.tools dissoc bug which had been fixed in the newer list fns
* uuid, classes, properties, extends and description fields not visible
for human output even though data is available and users are asking
to display it with --with-* or --fields
* Also fix recent regression for property types no longer displaying by
default
* Also fix --with-extends, --with-properties and --with-classes
depending on undocumented --extra option. Options should be declarative and
not have hidden dependencies
- 4 visible fields couldn't be used with --fields
- Only print selected fields/columns. Previous behavior didn't make
sense as unspecified fields were still listed and took up horizontal space
- Allow --fields to work when --expand isn't used. Previous behavior
wasn't explained to user and needlessly limiting
Repo refers to internal identifiers that start with 'logseq_db_' and
used to start with 'logseq_local_'. The --repo option was not being
used in that way and was just a reference to a graph name. While it's
reasonable for internal CLIs like db-worker-node.js to use --repo, it is
needlessly confusing to introduce repo to users. Almost all of our apps and docs
label graphs as 'graph' and not 'repo'
--output was being used as a global and command option. This resulted in
buggy, coupled behavior e.g. unable to set a global output unless the
export file was named human, edn or json. `--ouput` was also
not listed as a command option which was confusing. Renamed the command
--ouput to --file for explicit and uncoupled behavior