Skip to content
Back to skills

Mcp Cli

ASecurity

Use MCP server tools (GitHub, filesystem, Slack, databases, browsers and any other server configured in mcp-compression-proxy) through the mcp-cli command instead of loading them as MCP tools. Use whenever a task needs a capability an MCP server provides, or when asked to compress, rewrite or improve MCP tool descriptions.

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 23, 2026
ai-agentsshellbashgitdatabasebackend

Works with

  • cli
  • mcp

Security analysis

A92/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 2 files and shows the line behind each finding

Scanned September 23, 2026

npx -y skills add kdpa-llc/mcp-compression-proxy --skill mcp-cli --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Mcp Cli?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Mcp Cli
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kdpa-llc-mcp-cli/badge)](https://www.skillsdirectory.com/skills/kdpa-llc-mcp-cli)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: mcp-cli
description: Use MCP server tools (GitHub, filesystem, Slack, databases, browsers and any other server configured in mcp-compression-proxy) through the mcp-cli command instead of loading them as MCP tools. Use whenever a task needs a capability an MCP server provides, or when asked to compress, rewrite or improve MCP tool descriptions.
---

# mcp-cli

`mcp-cli` reaches every MCP server configured for mcp-compression-proxy
through shell commands. Nothing is loaded into context until you ask for it:
search, read one tool's schema, call it.

If `mcp-cli` is missing, it is installed with `npm install -g mcp-compression-proxy`
and configured in `~/.mcp-compression-proxy/servers.json`. `mcp-cli doctor`
checks the setup.

## Find, inspect, call

```bash
mcp-cli search "what you want to do"        # ranked, best first
mcp-cli info <server>/<tool>                # description and input schema
mcp-cli call <server>/<tool> '<json args>'  # run it
```

- Search by what you want done, in plain words; exact tool names rank first.
  `--limit N` shows more results.
- Always run `info` before the first call to a tool, and build arguments from
  its `inputSchema`. Respect `required` and types.
- For awkward quoting, pipe the arguments: `echo '{"path":"/tmp/a"}' | mcp-cli call fs/read_file`.
- A tool whose `annotations.readOnlyHint` is false or absent may change
  things. Treat it like any other write: be sure it is what the user asked for.
- Not sure which tool fits? `mcp-cli suggest "<request>"` returns candidates
  with schemas, and a proposed call when a local model is configured. A
  proposal is a draft to check, never a decision.

## Keep large results out of context

Ask only for what you need:

```bash
mcp-cli call github/list_issues '{"owner":"o","repo":"r"}' \
  --want '{"items":[{"number":"integer","title":"string","user.login":"string?"}]}' \
  --where 'login failures' --limit 10
```

- `--want` is the shape of the answer: object keys to keep, `[x]` for a list
  of x, leaf types `string|number|integer|boolean|object|array|any`, `a|b` for
  one of those values, `?` for optional. JSON output is projected exactly;
  missing fields come back `null` and are listed in `meta.missing`.
- `--where` keeps the list items relevant to a topic; it may return none.
- The full output is saved; `source.id` is its payload ID.

Outputs over the size threshold come back as a payload ID instead of text:

```bash
mcp-cli output find <id> "text"             # search inside it
mcp-cli output read <id> [offset] [length]  # read a page
mcp-cli output shape <id> --want '...' --where '...'
```

Never `output read <id> 0 all` on a large payload unless you really need all of it.

## Several dependent calls

```bash
mcp-cli script '[{"id":"s","server":"docs","tool":"search","arguments":{"q":"x"}},
                 {"id":"r","server":"docs","tool":"read","arguments":{"url":{"$ref":"s#/results/0/url"}}}]'
```

Steps run in order; `{"$ref":"step#/json/pointer"}` passes a value from an
earlier step. Steps accept `want`/`where` too.

## When something fails

- `excluded by the excludeTools configuration`: the user has blocked that
  tool on purpose. Do not look for a way around it; tell the user.
- A backend error: `mcp-cli doctor`, then `mcp-cli daemon logs -n 50`.

## Compressing or rewriting tool descriptions

When asked to compress, rewrite, clean up or improve MCP tool descriptions,
follow [DESCRIBE.md](DESCRIBE.md). You write the new text yourself; the user
reviews it before anything is saved.

Files in this skill

  • DESCRIBE.md2.9 KB
  • SKILL.md3.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.