npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@yektoo/cli

v0.1.7

Published

Yekto CLI — manage your customer support helpdesk from the terminal

Downloads

486

Readme

Yekto CLI & MCP Server

Manage your Yektoo customer support helpdesk from the terminal — or let AI agents do it for you.

npm install -g @yektoo/cli
yektoo login
yektoo inbox --status open

What's Included

| Package | Purpose | |---|---| | @yektoo/cli | Terminal commands for managing your helpdesk | | @yektoo/mcp-server | MCP server that gives AI agents access to your helpdesk |

Both packages share the same authentication — log in once with the CLI, and the MCP server uses the same session.


Quick Start

1. Install

# Install globally
npm install -g @yektoo/cli

# Or run without installing
npx @yektoo/cli login

2. Log In

yektoo login
# Enter your Yektooo email and password when prompted

# Or non-interactive (for CI/scripts)
yektoo login -e [email protected] -p yourpassword

3. Start Using

yektoo inbox                           # List all conversations
yektoo inbox --status open             # Open tickets only
yektoo read <email-id>                 # Read a conversation thread
yektoo reply <email-id> "Your order has shipped!"
yektoo close <email-id>                # Close the ticket

CLI Commands

Authentication

| Command | Description | |---|---| | yektoo login | Log in with email and password (interactive) | | yektoo login -e EMAIL -p PASS | Log in non-interactively | | yektoo logout | Clear stored session | | yektoo whoami | Show current user and business | | yektoo setup-mcp --target <tool> | Configure the MCP server for an AI tool |

Setup MCP

yektoo setup-mcp --target claude-desktop   # Claude Desktop
yektoo setup-mcp --target cursor           # Cursor
yektoo setup-mcp --target claude-code      # Claude Code (pi)

This automatically adds the Yektoo MCP server to the tool's config file. Restart the AI tool after running.

Accounts

| Command | Description | |---|---| | yektoo email-accounts | List connected IMAP / Outlook email accounts | | yektoo shopify-accounts | List Shopify stores and their linked email accounts |

Inbox & Conversations

| Command | Description | |---|---| | yektoo inbox | List all conversations (newest first, 20 per page) | | yektoo inbox --status open | Filter by status: open, resolved, pending | | yektoo inbox --store <id> | Filter by email account | | yektoo inbox --search "refund" | Search by subject or sender | | yektoo inbox --tag <id> | Filter by tag (use list-tags to find IDs) | | yektoo inbox --tag <id1> <id2> | Filter by multiple tags (OR logic) | | yektoo inbox --from 2026-03-01 --to 2026-03-31 | Filter by date range | | yektoo inbox --page 2 | Go to page 2 | | yektoo inbox --limit 50 | Show 50 results per page | | yektoo open-tickets --store <id> | Open tickets for a specific email account | | yektoo read <email-id> | Read full conversation thread (emails + replies + notes) |

Actions

| Command | Description | |---|---| | yektoo reply <email-id> "message" | Send a reply (auto-routes to IMAP or Outlook) | | yektoo reply-and-close <email-id> "message" | Reply and close the ticket in one step | | yektoo close <email-id> | Close/resolve a ticket (entire thread) | | yektoo open <email-id> | Reopen a closed ticket | | yektoo note <email-id> "internal note" | Add an internal note (not visible to customer) |

Customer & Shopify

| Command | Description | |---|---| | yektoo customer <email> | Look up a customer in Shopify — profile, orders, tracking |

Tags & Templates

| Command | Description | |---|---| | yektoo list-tags | List all email tags (AI Auto Tags + custom) | | yektoo list-templates | List all reply templates | | yektoo get-template <id> | View full template content and detected variables |

Reports

| Command | Description | |---|---| | yektoo csat | CSAT survey report (last 30 days) | | yektoo csat --days 90 | CSAT report for last 90 days |

Help

| Command | Description | |---|---| | yektoo guide | Detailed usage guide with examples | | yektoo --help | List all commands | | yektoo <command> --help | Help for a specific command |


JSON Output

Every command supports --json for machine-readable output:

# Pipe to jq
yektoo --json inbox --status open | jq '.[].id'

# Use in scripts
OPEN_COUNT=$(yektoo --json inbox --status open | jq 'length')
echo "You have $OPEN_COUNT open tickets"

# Get customer data as JSON
yektoo --json customer [email protected]

Examples

Daily workflow

# Check open tickets
yektoo inbox --status open

# Read a ticket
yektoo read abc123-def456

# Look up the customer
yektoo customer [email protected]

# Reply and close
yektoo reply-and-close abc123-def456 "Your refund has been processed. Have a great day!"

Filter by tag

# List available tags
yektoo list-tags

# Show all refund-related conversations
yektoo inbox --tag aeb5a381-fea0-444f-950e-e66b54559d42

# Combine filters
yektoo inbox --status open --tag <urgent-tag-id> --store <store-id>

Use templates

# Browse templates
yektoo list-templates

# View a template's content
yektoo get-template 3adcdc58-7df4-4480-b19a-8b7d6f881b8a

# Use the template content in a reply
yektoo reply <email-id> "$(yektoo --json get-template <template-id> | jq -r '.content')"

Date range queries

# Last week's conversations
yektoo inbox --from 2026-03-25 --to 2026-03-31

# Open tickets from this month
yektoo inbox --status open --from 2026-04-01

MCP Server for AI Agents

The MCP server lets AI agents (Claude, Cursor, Windsurf, etc.) interact with your helpdesk using natural language.

Setup

Prerequisite: Log in with the CLI first (one-time):

npx @yektoo/cli login

Then configure automatically:

npx @yektoo/cli setup-mcp --target claude-desktop   # Claude Desktop
npx @yektoo/cli setup-mcp --target cursor           # Cursor
npx @yektoo/cli setup-mcp --target claude-code      # Claude Code (pi)

Restart the AI tool after running. The Yektoo tools will be available immediately.

Or configure manually — add to the tool's MCP config file:

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "yektoo": {
      "command": "npx",
      "args": ["-y", "@yektoo/mcp-server@latest"]
    }
  }
}

Cursor

Edit .cursor/mcp.json in your project root:

{
  "mcpServers": {
    "yektoo": {
      "command": "npx",
      "args": ["-y", "@yektoo/mcp-server@latest"]
    }
  }
}

Claude Code (pi)

Edit .mcp.json in your project root:

{
  "mcpServers": {
    "yektoo": {
      "command": "npx",
      "args": ["-y", "@yektoo/mcp-server@latest"]
    }
  }
}

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "yektoo": {
      "command": "npx",
      "args": ["-y", "@yektoo/mcp-server@latest"]
    }
  }
}

After adding the config, restart the AI tool. The Yektoo tools will be available immediately.

Available MCP Tools

| Tool | Description | Parameters | |---|---|---| | list_email_accounts | Connected IMAP/Outlook accounts | — | | list_shopify_accounts | Shopify stores + linked email accounts | — | | list_conversations | Threaded inbox with filters | store_id?, status?, search?, date_from?, date_to?, tag_ids?, limit?, page? | | list_open_tickets | Open tickets for an email account | store_id, search?, date_from?, date_to?, tag_ids?, limit?, page? | | read_thread | Full conversation timeline | email_id | | send_reply | Send a reply to a customer | email_id, content | | reply_and_close | Reply and close in one step | email_id, content | | close_ticket | Resolve/close entire thread | email_id | | reopen_ticket | Reopen a closed ticket | email_id | | add_note | Add internal note (invisible to customer) | email_id, content | | lookup_customer | Shopify customer lookup | customer_email | | list_tags | Email tags (AI Auto Tags + custom) | — | | list_templates | Reply templates | — | | get_template | Full template content + variables | template_id | | get_csat_report | CSAT survey report | days? |

What AI Agents Can Do

Once connected, you can ask your AI agent things like:

  • "Show me all open tickets"
  • "Read the conversation with [email protected]"
  • "Reply to this customer saying their order shipped with tracking number 123456"
  • "Close all resolved tickets tagged as 'refund'"
  • "Look up this customer's Shopify orders"
  • "What's our CSAT score this month?"
  • "Use the 'shipping delay' template to reply to this ticket"

Troubleshooting

"Not logged in"

Run yektoo login to authenticate. Your session persists across terminal sessions.

"Session expired"

Run yektoo login again to refresh your tokens.

"No business found"

Your Yektoo account isn't associated with a business. Log in to app.yektoo.com and complete the setup.

MCP server not showing tools

  1. Make sure you ran npx @yektoo/cli login first
  2. Restart your AI tool after editing the config
  3. Check that the config file path is correct for your OS

Reply not delivered

Replies are queued and processed asynchronously (same as the web app). Check your Yektooo inbox in a few seconds — the reply will appear in the thread once delivered.


Development

# CLI
cd cli
npm install
npm run dev -- inbox --status open    # Run in dev mode

# MCP Server
cd mcp-server
npm install
npm run dev                           # Run in dev mode

License

MIT