Meko CLI

Install and use the Meko CLI

The Meko CLI (meko) is the primary tool for managing datapacks from the command line.

Install meko CLI

Pre-built binaries are published as GitHub Releases for every tagged version. Download the archive for your platform from the latest GitHub Releases.

Platform Archive
macOS (Apple Silicon) meko_<VERSION>_darwin_arm64.tar.gz
macOS (Intel) meko_<VERSION>_darwin_amd64.tar.gz
Linux x86_64 meko_<VERSION>_linux_amd64.tar.gz
Linux ARM64 meko_<VERSION>_linux_arm64.tar.gz

Example install on macOS

To install Meko CLI on macOS (Apple Silicon), do the following:

  1. Download the compiled Meko binary tar file that's compatible with your machine from the Releases website.

  2. Unzip the file (double click the tar file).

  3. Move meko to /usr/local/bin/, and make it executable as follows:

    sudo mv meko /usr/local/bin/ && sudo chmod +x /usr/local/bin/meko
    
  4. Verify the installation:

    meko --version
    

Commands

Command Description
meko login Authenticate with the Meko API server.
meko logout Remove locally stored tokens.
meko help Help with Meko CLI command or sub-command.
meko datapack create Create a new datapack.
meko datapack list List all datapacks.
meko datapack status View datapack summary.
meko datapack delete Permanently delete a datapack.

Basics of Meko CLI

Login

You must sign in to the Meko platform before you can use the CLI.

meko login

Enter your email and password when prompted. Alternatively, you can use flags:

meko login --email user@example.com --password secret

Logout

To end your session, run:

meko logout

This removes locally stored tokens.

Help

To view all available commands and options, run:

meko help

For help with a specific command, use the --help or -h flag:

meko [ <command> ] -h

Global flags

These flags can be used with any meko datapack subcommand.

Flag Description
--json Output raw JSON instead of formatted text
--verbose, -v Enable verbose logging

Datapack commands

All meko datapack subcommands require you to be signed in. If you are not signed in, the commands will fail with the following error:

Error: not logged in - run `meko login` first

datapack create

When you sign in, a default datapack named meko_default_datapack is automatically assigned to your account.

To create a new datapack, use datapack create to provision a new datapack with a dedicated database, MCP server endpoint, and database access credentials as follows:

meko datapack create --name my-datapack

The request typically takes a few seconds.

You should see an output similar to the following, and you should save them somewhere safe for future reference:

 ✅ Datapack Created

  Name             <my-datapack-name>
  Datapack ID      <my-datapack-id>
  Agent ID         <my-agent-id>

  ────────────────────────────────────────────────────────
  MCP Server
  ────────────────────────────────────────────────────────
  URL              <my-mcp-server-url>
  API Key          <my-mcp-server-api-key>

  ────────────────────────────────────────────────────────
  Database Access
  ────────────────────────────────────────────────────────
  User             <my-db-user-name>
  Password         <my-db-password>
  Connection String  <postgres-sql-connection-string>

For machine-readable output, use the --json flag:

meko datapack create --name my-datapack --json

Example JSON output:

{
  "datapack_id": "<my-datapack-id>",
  "agent_id": "<my-agent-id>",
  "name": "my-datapack",
  "mcp_user_name": "<my-mcp-user-name>",
  "mcp_server": {
    "url": "<my-mcp-server-url>",
    "api_key": "<my-mcp-server-api-key>"
  },
  "db_access": {
    "user_name": "<my-db-user-name>",
    "password": "<my-db-password>",
    "conn_str": "<postgres-sql-connection-string>"
  }
}

datapack list

Display a table of all datapacks, including their name, ID, and creation date:

meko datapack list

For machine-readable output, use the --json flag:

meko datapack list --json

datapack status

Display summary information including name, ID, agent count, knowledge base count, and creation date:

meko datapack status --name my-datapack

For machine-readable output, use the --json flag:

meko datapack status --name my-datapack --json

datapack delete

Delete a specific datapack.

meko datapack delete --name my-datapack

You will be prompted to re-type the datapack name to confirm.

To skip the confirmation prompt (useful for scripts), use the --force flag:

meko datapack delete --name my-datapack --force

Logging

The CLI writes structured logs to ~/var/meko/logs/. Use --verbose to enable debug-level output. Log files are useful for diagnosing authentication or network errors.

meko [command] --verbose