mcpc

bởi apify

Sử dụng CLI mcpc để tương tác với máy chủ MCP - gọi công cụ, đọc tài nguyên, lấy lời nhắc. Sử dụng khi làm việc với máy chủ Giao thức Ngữ cảnh Mô hình, gọi MCP…

npx skills add https://github.com/apify/mcpc --skill mcpc

mcpc: MCP command-line client

mcpc maps every MCP operation to a shell command. For agents this is often more efficient than function calling: discover the right tool on demand, then generate shell commands (ideally with --json) instead of carrying tool definitions in context.

Mental model

  1. Connect once to a server — this creates a persistent, named @session. A background bridge process keeps the connection (and its state) alive.
  2. Run commands against the @session: list/call tools, read resources, get prompts, run async tasks. There is no one-shot mcpc <url> tools-list — connect first.
  3. Default output is human-readable; add --json for machine-readable, MCP-spec shaped output that composes with jq and shell pipelines (code mode).

Everything is self-documenting — when unsure, ask the CLI:

mcpc --help                       # all commands + global options
mcpc help connect                 # help for one command
mcpc @apify tools-call foo --help # that tool's details + schema

First steps

mcpc                                   # list sessions + auth profiles (start here)
mcpc connect mcp.apify.com @apify      # connect, create the @apify session
mcpc @apify                            # server info, capabilities, tools overview
mcpc @apify tools-list                 # list tools
mcpc @apify tools-call <tool> q:="hi"  # call a tool

Connecting

Server formats accepted by connect:

  • mcp.example.com — remote HTTP server (https:// is added automatically)
  • localhost:8080 or 127.0.0.1:8080 — local HTTP server (http:// is the default for localhost and 127.0.0.1)
  • ~/.vscode/mcp.json:filesystem — a single entry from a config file (file:entry)
  • ~/.vscode/mcp.json — connect every entry in a config file
  • (no server) — auto-discover standard configs and connect all of them
mcpc connect mcp.apify.com @apify        # remote server, explicit session name
mcpc connect mcp.apify.com               # auto-name the session → @apify
mcpc connect ./.vscode/mcp.json:fs @fs   # one config entry (stdio or http)
mcpc connect                             # discover standard configs + connect everything
  • @session is optional — omit it to auto-generate a name from the server (mcp.apify.com@apify). A matching session (same server + auth) is reused.
  • Stdio (command-based) entries launch a local process on connect — only connect to configs you trust. Bulk connects skip stdio entries unless you pass --stdio.
  • login / logout only accept an MCP server URL (a bare host or full http(s):// URL) — not config files or auto-discovery.

Sessions

mcpc                     # list all sessions and their state
mcpc @apify              # session details, capabilities, tools (also reports the
                         # negotiated protocol version and stateful vs stateless)
mcpc restart @apify      # restart (after server updates, or to recover an 'expired' session)
mcpc close @apify        # tear the session down

Session states:

  • 🟢 live — ready to use
  • 🟡 connecting / reconnecting — transient; retry in a moment
  • 🟡 disconnected — bridge alive but the server has gone quiet; retry to reconnect
  • 🟡 crashed — bridge process died; auto-restarts on next use
  • 🔴 unauthorized — auth failed; run mcpc login <server> then mcpc restart @session
  • 🔴 expired — server dropped the session; run mcpc restart @session

Discovering and inspecting tools

mcpc @apify tools-list                  # compact list with inline param signatures
mcpc @apify tools-list --full           # full JSON schemas
mcpc @apify tools-get <tool>            # one tool's details + schema
mcpc @apify tools-call <tool> --help    # shortcut for tools-get: that tool's details + schema

mcpc grep "search"                      # search tools + instructions across ALL sessions
mcpc @apify grep "actor" --resources    # search one session
# grep filters: --tools/--resources/--prompts/--instructions, -E regex, -s case-sensitive, -m <n> max

Prefer progressive discovery: grep to find the right tool, then tools-get for its schema. This keeps token use low instead of dumping every tool definition.

Calling tools (passing arguments)

Arguments go after the tool name. Three interchangeable styles:

# 1) key:=value — values are auto-parsed as JSON, falling back to string
mcpc @apify tools-call search query:="hello world" limit:=10 enabled:=true
mcpc @apify tools-call search config:='{"nested":"value"}' items:='[1,2,3]'
mcpc @apify tools-call search id:='"123"'          # force a string with JSON quotes

# 2) inline JSON — when the first arg starts with { or [
mcpc @apify tools-call search '{"query":"hello","limit":10}'

# 3) stdin — auto-detected when piped and no positional args are given
echo '{"query":"hello"}' | mcpc @apify tools-call search

JSON output (code mode)

Add --json for machine-readable output: results on stdout, errors on stderr, shaped strictly per the MCP spec.

mcpc --json @apify tools-list | jq -r '.[].name'
mcpc --json @apify tools-call search query:="test" | jq -r '.content[0].text'

# chain tools across calls/sessions
mcpc --json @apify tools-call search-actors keywords:="scraper" \
  | jq -r '.content[0].text | fromjson | .items[0].id' \
  | xargs -I{} mcpc --json @apify tools-call get-actor actorId:="{}"

mcpc --json with no command returns { "sessions": [...], "profiles": [...] }.

Resources and prompts

mcpc @apify resources-list
mcpc @apify resources-read "file:///path/to/file"   # -o <file> to save (binary-safe), --raw to pipe
mcpc @apify resources-templates-list
mcpc @apify resources-subscribe <uri> <file>        # keep local <file> in sync with the resource
mcpc @apify resources-unsubscribe <uri>             # stop syncing, keep the file

mcpc @apify prompts-list
mcpc @apify prompts-get <name> arg1:=value1         # same argument syntax as tools-call (values coerced to strings)

Async tasks (long-running tools)

mcpc @apify tools-call <tool> --task <args>     # run as a task with a progress spinner; Ctrl+C (or
                                                # ESC) leaves it running and prints the task ID.
                                                # Falls back to a normal sync call if the server has no task support.
mcpc @apify tools-call <tool> --detach <args>   # start and return the task ID immediately
mcpc @apify tasks-list
mcpc @apify tasks-get <taskId>                  # status
mcpc @apify tasks-result <taskId>               # block until the final result is ready
mcpc @apify tasks-cancel <taskId>

Authentication

# OAuth — interactive browser login, saved as a reusable profile
mcpc login mcp.apify.com                    # "default" profile
mcpc login mcp.apify.com --profile work     # a named profile (multiple accounts per server)
mcpc connect mcp.apify.com @apify --profile work
mcpc logout mcp.apify.com

# Bearer token — not stored as a profile; kept per-session
mcpc connect mcp.apify.com @s -H "Authorization: Bearer $TOKEN"
mcpc @s tools-list

With no auth flags, mcpc uses the default profile if one exists, otherwise it connects anonymously. Use --no-profile to force an anonymous connection, or --profile <name> to require a specific one.

Proxy for AI isolation

Expose an authenticated session as a local MCP server, so sandboxed AI code can use it without ever seeing your real credentials:

# Human: authenticated session + proxy listening on :8080
mcpc connect mcp.apify.com @ai-proxy --profile ai-access --proxy 8080

# AI in a sandbox limited to localhost: no access to the original tokens
mcpc connect localhost:8080 @sandboxed
mcpc @sandboxed tools-list

A proxy does not make an untrusted server safe — stdio servers still touch your system, and HTTP servers still hold your credentials. Only connect to servers you trust.

Server-published skills (experimental)

Distinct from this guide: some MCP servers publish their own agent skills (draft MCP extension, SEP-2640). Read them with:

mcpc @apify skills-list
mcpc @apify skills-get <name> --raw    # print the SKILL.md markdown (pipe to a file or an LLM)

(mcpc help --skill documents mcpc itself; skills-list / skills-get fetch skills from the server.)

Global flags worth knowing

--json                  # machine-readable, MCP-spec-shaped output (code mode)
--verbose               # protocol-level debug logging (JSON-RPC, transport)
--profile <name>        # OAuth profile to use ("default" if omitted)
--timeout <seconds>     # request timeout in seconds (default: 60)
--max-chars <n>         # truncate human-readable output to n chars (ignored with --json)
--insecure              # skip TLS verification (self-signed certs only)

(--no-profile, --stdio, --proxy, and -H are options of connect, not global flags.)

mcpc also has experimental --x402 auto-payment for paid MCP tools — see mcpc help x402.

Debugging

mcpc --verbose @apify tools-call <tool>   # protocol-level detail (JSON-RPC, transport)
mcpc @apify logs                          # bridge log; -n <N>, --follow, --since 1h
mcpc @apify ping                          # round-trip health check
mcpc clean                                # tidy stale sessions/logs (also: mcpc clean all)

Exit codes

  • 0 — success
  • 1 — client error (invalid arguments, unknown command)
  • 2 — server error (tool failed, resource not found)
  • 3 — network error
  • 4 — authentication error

Thêm skills từ apify

bug-triage
apify
Phân loại các vấn đề lỗi đang mở trên apify/apify-mcp-server. Phân tích, soạn phản hồi, xin phê duyệt, đăng tải.
official
dig
apify
Kỹ năng linh hoạt để khám phá, lập kế hoạch và xác định thông số công việc trên máy chủ Apify MCP. KHÔNG chỉnh sửa tệp nguồn — kỹ năng này chỉ dành cho việc hiểu và lập kế hoạch.
official
apify-actor-development
apify
Tạo, gỡ lỗi và triển khai các chương trình đám mây không máy chủ để thu thập dữ liệu web, tự động hóa và xử lý dữ liệu. Hỗ trợ các mẫu JavaScript, TypeScript và Python với các thư viện Crawlee, Playwright và Cheerio tích hợp cho việc thu thập dữ liệu qua HTTP và trình duyệt. Bao gồm kiểm thử cục bộ qua apify run với bộ nhớ cách ly, xác thực lược đồ cho đầu vào/đầu ra và triển khai lên nền tảng Apify qua apify push. Yêu cầu xác thực Apify CLI và siêu dữ liệu generatedBy bắt buộc trong .actor/actor.json cho AI...
official
apify-actorization
apify
Chuyển đổi các dự án hiện có thành Apify Actors không máy chủ với tích hợp SDK theo ngôn ngữ cụ thể. Hỗ trợ JavaScript/TypeScript (với Actor.init() / Actor.exit()), Python (trình quản lý ngữ cảnh bất đồng bộ) và bất kỳ ngôn ngữ nào thông qua trình bao bọc CLI. Cung cấp quy trình làm việc có cấu trúc: apify init để tạo khung, áp dụng bao bọc SDK, cấu hình lược đồ đầu vào/đầu ra, kiểm thử cục bộ với apify run, sau đó triển khai với apify push. Bao gồm xác thực lược đồ đầu vào và đầu ra, đóng gói Docker và tùy chọn thanh toán theo sự kiện...
official
apify-audience-analysis
apify
Trích xuất nhân khẩu học đối tượng, mô hình tương tác và dữ liệu hành vi từ Facebook, Instagram, YouTube và TikTok. Hỗ trợ hơn 18 Actor chuyên biệt bao gồm nhân khẩu học người theo dõi, chỉ số tương tác, bình luận và phân tích hồ sơ trên cả bốn nền tảng. Cung cấp ba định dạng đầu ra: hiển thị trò chuyện nhanh, xuất CSV hoặc xuất JSON để phân tích tiếp theo. Yêu cầu mã thông báo Apify và công cụ CLI mcpc; sử dụng tính năng lấy lược đồ động để điều chỉnh đầu vào theo yêu cầu của từng Actor. Bao gồm cấu trúc...
official
apify-brand-reputation-monitoring
apify
Giám sát danh tiếng thương hiệu trên Google Maps, Booking.com, TripAdvisor, Facebook, Instagram, YouTube và TikTok. Hỗ trợ hơn 16 Apify Actor chuyên dụng bao gồm đánh giá, xếp hạng, bình luận và đề cập trên tất cả các nền tảng chính. Định dạng đầu ra linh hoạt: hiển thị kết quả trong chat, xuất ra CSV hoặc lưu dưới dạng JSON để phân tích tiếp theo. Yêu cầu mã thông báo Apify và Node.js 20.6+; sử dụng CLI mcpc để tự động tìm nạp lược đồ Actor và tham số đầu vào. Quy trình làm việc hướng dẫn người dùng chọn nền tảng,...
official
apify-competitor-intelligence
apify
Phân tích đối thủ đa nền tảng qua Apify Actors cho Google Maps, Booking.com, Facebook, Instagram, YouTube và TikTok. Bao gồm hơn 25 Actors chuyên biệt trên bảy nền tảng, mỗi Actor được tối ưu hóa cho các loại phân tích cụ thể: trích xuất dữ liệu doanh nghiệp, so sánh đánh giá, giám sát chiến lược quảng cáo, hiệu suất nội dung và thông tin chi tiết về khán giả. Yêu cầu token Apify, Node.js 20.6+ và công cụ CLI mcpc để tìm nạp lược đồ Actor và chạy phân tích động. Hỗ trợ ba định dạng đầu ra: hiển thị chat nhanh,...
official
apify-content-analytics
apify
Phân tích nội dung đa nền tảng qua Apify Actors cho Instagram, Facebook, YouTube và TikTok. Hỗ trợ hơn 17 Actor chuyên biệt bao gồm bài đăng, reel, story, bình luận, hashtag, người theo dõi và quảng cáo trên cả bốn nền tảng. Tự động lấy lược đồ Actor bằng mcpc CLI để xác định đầu vào cần thiết và trường đầu ra khả dụng. Xuất kết quả dưới ba định dạng: hiển thị nhanh trong chat, xuất CSV hoặc xuất JSON với số lượng kết quả tùy chỉnh. Yêu cầu token Apify trong tệp .env và Node.js 20.6+...
official