--- summary: 'Five-minute walk through listing MCP servers, calling a tool, and emitting a typed client.' --- # Quickstart This walkthrough assumes you already have an MCP server configured in Cursor, Claude Code/Desktop, Codex, Windsurf, OpenCode, or VS Code. If not, copy [`config/mcporter.example.json`](https://github.com/steipete/mcporter/blob/main/config/mcporter.example.json) into `~/.mcporter/mcporter.json` and edit it — see [Configuration](config.md) for the full schema. ## 1. List the servers mcporter sees ```bash npx mcporter list ``` You get one row per server with auth status, transport type, and tool count. Add `--json` for machine output, `--quiet` for a silent health gate, or `--verbose` to see which config files registered each server. ## 2. Inspect a single server ```bash npx mcporter list linear ``` Single-server output reads like a TypeScript header file: dimmed `/** … */` doc comments above each `function name(...)` signature, with optional parameters summarised so the screen stays scannable. Add flags to drill in: - `--brief` (alias `--signatures`) — compact signatures only. - `--all-parameters` — show every optional parameter inline. - `--schema` — pretty-print the JSON schema for each tool. - `--json` — machine-readable schema payload. - `--status` — concise status only, without tool docs. `mcporter list shadcn.io/api/mcp.getComponents` works too — bare URLs (with or without a `.tool` suffix or scheme) auto-resolve. ## 3. Call a tool ```bash # Colon-delimited flags (shell-friendly). npx mcporter call linear.create_comment issueId:ENG-123 body:'Looks good!' # Function-call style copy/pasted from `mcporter list`. npx mcporter call 'linear.create_comment(issueId: "ENG-123", body: "Looks good!")' # Anything after `--` is a literal positional value. npx mcporter call docs.fetch -- --raw-string-with-leading-dashes ``` Pick the output format with `--output text|markdown|json|raw`. Use `--save-images