Skip to main content

mcp-cli

Interface for MCP (Model Context Protocol) servers via CLI. Use when you need to interact with external tools, APIs, or data sources through MCP servers.

معلومات المصدر

المستودع
philschmid/mcp-cli
آخر نشاط في المصدر
٥ فبراير ٢٠٢٦ في ١٨:٣١
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
١٬٢٧٩
التفرعات
١٦٤

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
mcp-cli
description
Interface for MCP (Model Context Protocol) servers via CLI. Use when you need to interact with external tools, APIs, or data sources through MCP servers.
# MCP-CLI Access MCP servers through the command line. MCP enables interaction with external systems like GitHub, filesystems, databases, and APIs. ## Commands | Command | Output | |---------|--------| | `mcp-cli` | List all servers and tools | | `mcp-cli info <server>` | Show server tools and parameters | | `mcp-cli info <server> <tool>` | Get tool JSON schema | | `mcp-cli grep "<pattern>"` | Search tools by name | | `mcp-cli call <server> <tool>` | Call tool (reads JSON from stdin if no args) | | `mcp-cli call <server> <tool> '<json>'` | Call tool with arguments | **Both formats work:** `<server> <tool>` or `<server>/<tool>` ## Workflow 1. **Discover**: `mcp-cli` → see available servers 2. **Explore**: `mcp-cli info <server>` → see tools with parameters 3. **Inspect**: `mcp-cli info <server> <tool>` → get full JSON schema 4. **Execute**: `mcp-cli call <server> <tool> '<json>'` → run with arguments ## Examples ```bash # List all servers mcp-cli # With descriptions mcp-cli -d # See server tools mcp-cli info filesystem # Get tool schema (both formats work) mcp-cli info filesystem read_file mcp-cli info filesystem/read_file # Call tool mcp-cli call filesystem read_file '{"path": "./README.md"}' # Pipe from stdin (no '-' needed!) cat args.json | mcp-cli call filesystem read_file # Search for tools mcp-cli grep "*file*" # Output is raw text (pipe-friendly) mcp-cli call filesystem read_file '{"path": "./file"}' | head -10 ``` ## Advanced Chaining ```bash # Chain: search files → read first match mcp-cli call filesystem search_files '{"path": ".", "pattern": "*.md"}' \ | head -1 \ | xargs -I {} mcp-cli call filesystem read_file '{"path": "{}"}' # Loop: process multiple files mcp-cli call filesystem list_directory '{"path": "./src"}' \ | while read f; do mcp-cli call filesystem read_file "{\"path\": \"$f\"}"; done # Conditional: check before reading mcp-cli call filesystem list_directory '{"path": "."}' \ | grep -q "README" \ && mcp-cli call filesystem read_file '{"path": "./README.md"}' # Multi-server aggregation { mcp-cli call github search_repositories '{"query": "mcp", "per_page": 3}' mcp-cli call filesystem list_directory '{"path": "."}' } # Save to file mcp-cli call github get_file_contents '{"owner": "x", "repo": "y", "path": "z"}' > output.txt ``` **Note:** `call` outputs raw text content directly (no jq needed for text extraction) ## Options | Flag | Purpose | |------|---------| | `-d` | Include descriptions | | `-c <path>` | Specify config file | ## Common Errors | Wrong Command | Error | Fix | |---------------|-------|-----| | `mcp-cli server tool` | AMBIGUOUS_COMMAND | Use `call server tool` or `info server tool` | | `mcp-cli run server tool` | UNKNOWN_SUBCOMMAND | Use `call` instead of `run` | | `mcp-cli list` | UNKNOWN_SUBCOMMAND | Use `info` instead of `list` | | `mcp-cli call server` | MISSING_ARGUMENT | Add tool name | | `mcp-cli call server tool {bad}` | INVALID_JSON | Use valid JSON with quotes | ## Exit Codes - `0`: Success - `1`: Client error (bad args, missing config) - `2`: Server error (tool failed) - `3`: Network error
عرض على GitHub