Skip to content

Commit 831cd7c

Browse files
jancurnclaude
andauthored
docs: improve grammar and clarity in README (#305)
Docs-only polish of README.md: fixes the awkward lone `# show server info` comment in the quickstart (now an aligned comment group) and cleans up grammar and phrasing throughout. - Fixed the broken sentence in Motivation ("and popular conclusion that:") - Removed the stale "one-shot command" mention in the bearer-token section (`--header` only applies to `connect`) - Added missing articles and fixed awkward wording in prose and code comments https://claude.ai/code/session_01B6AHhG3fcXY4h21J3CuWzT Co-authored-by: Claude <noreply@anthropic.com>
1 parent 8448433 commit 831cd7c

1 file changed

Lines changed: 22 additions & 22 deletions

File tree

README.md

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ MCP through the most universal interface there is: the UNIX shell.
5555

5656
Many AI agents misuse MCP. They treat tools as prompt-time function calls, repeatedly injecting
5757
tool definitions and results into the context. Tokens get wasted, context rots, the
58-
agent gets slower and less reliable, and popular conclusion that: _"MCP sucks, CLIs are better"_.
58+
agent gets slower and less reliable — hence the popular conclusion: _"MCP sucks, CLIs are better"_.
5959

6060
`mcpc` challenges that narrative. It maps every MCP operation to an intuitive CLI command that
6161
agents pick up from `--help` alone. Any agent with shell access gets full MCP support without
@@ -106,19 +106,19 @@ dbus-run-session -- bash -c "echo -n 'password' | gnome-keyring-daemon --unlock
106106
# List all active sessions and saved authentication profiles
107107
mcpc
108108

109-
# Login to remote MCP server and save OAuth credentials for future use
109+
# Log in to a remote MCP server and save OAuth credentials for future use
110110
mcpc login mcp.apify.com
111111

112112
# Create a persistent session and interact with it
113113
mcpc connect mcp.apify.com @test
114-
mcpc @test # show server info
115-
mcpc @test tools-list
114+
mcpc @test # show server info and capabilities
115+
mcpc @test tools-list # list available tools
116116
mcpc @test tools-call search-actors keywords:="website crawler"
117117

118118
# Use JSON mode for scripting
119119
mcpc --json @test tools-list
120120

121-
# Use a local MCP server package (stdio) referenced from config file
121+
# Use a local MCP server package (stdio) referenced from a config file
122122
mcpc connect ./.vscode/mcp.json:filesystem @fs
123123
mcpc @fs tools-list
124124
```
@@ -309,14 +309,14 @@ that are crashed or unavailable are shown with their status rather than silently
309309
The `grep` command is useful for **dynamic tool discovery**,
310310
also called [Tool search tool](https://www.anthropic.com/engineering/advanced-tool-use) by Anthropic
311311
or [Dynamic context discovery](https://cursor.com/blog/dynamic-context-discovery) by Cursor.
312-
Rather than loading all tools into AI agent's context, the agent can use `grep` to discover the right tool
312+
Rather than loading all tools into the AI agent's context, the agent can use `grep` to discover the right tool
313313
for the job, and only load the relevant tools into the context when needed to reduce token usage and improve accuracy.
314314

315315
<!-- TODO: explain this more, show diagram -->
316316

317317
### JSON mode
318318

319-
By default, `mcpc` prints output in Markdown-ish text format with colors, making it easy to read by both humans and AIs.
319+
By default, `mcpc` prints output in Markdown-ish text format with colors, making it easy for both humans and AIs to read.
320320

321321
With `--json` option, `mcpc` always emits only a single JSON object (or array), to enable [scripting](#scripting).
322322
**For all MCP commands, the returned objects are always consistent with the
@@ -334,8 +334,8 @@ To support these sessions, `mcpc` can start a lightweight **bridge process** tha
334334
This is more efficient than forcing every MCP command to reconnect and reinitialize,
335335
and enables long-term stateful sessions.
336336

337-
The sessions are given names prefixed with `@` (e.g. `@apify`),
338-
which then serve as unique reference in commands.
337+
Sessions are given names prefixed with `@` (e.g. `@apify`),
338+
which then serve as unique references in commands.
339339

340340
```bash
341341
# Create a persistent session
@@ -350,10 +350,10 @@ mcpc @apify tools-list
350350
# Restart the session (kills and restarts the bridge process)
351351
mcpc @apify restart # or: mcpc restart @apify
352352

353-
# Close the session, terminates bridge process
353+
# Close the session (terminates the bridge process)
354354
mcpc @apify close # or: mcpc close @apify
355355

356-
# ...now session name "@apify" is forgotten and available for future use
356+
# ...now the session name "@apify" is forgotten and available for future use
357357
```
358358

359359
### Session lifecycle
@@ -398,11 +398,11 @@ mcpc @test tools-list
398398

399399
For remote servers that require a Bearer token (but not OAuth), use the `--header` flag to pass the token.
400400
All headers are stored securely in the OS keychain for the session, but they are **not** saved as reusable
401-
[OAuth profiles](#oauth-profiles). This means `--header` needs to be provided whenever
402-
running a one-shot command or connecting new session.
401+
[OAuth profiles](#oauth-profiles). This means `--header` must be provided again
402+
whenever you connect a new session.
403403

404404
```bash
405-
# Create session with Bearer token (token saved to keychain for this session only)
405+
# Create a session with a Bearer token (token saved to keychain for this session only)
406406
mcpc connect https://mcp.apify.com @apify --header "Authorization: Bearer ${APIFY_TOKEN}"
407407

408408
# Use the session (Bearer token is loaded from keychain automatically)
@@ -419,9 +419,9 @@ discovery, all three [client registration approaches](#client-registration-appro
419419
refresh-token rotation.
420420

421421
The OAuth authentication **always** needs to be initiated by the user calling the `login` command,
422-
which opens a web browser with login screen. `mcpc` never opens the web browser on its own.
422+
which opens a web browser with a login screen. `mcpc` never opens the web browser on its own.
423423

424-
The OAuth credentials to specific servers are securely stored as **authentication profiles** - reusable
424+
The OAuth credentials for specific servers are securely stored as **authentication profiles** - reusable
425425
credentials that allow you to:
426426

427427
- Authenticate once, use credentials across multiple commands or sessions
@@ -533,7 +533,7 @@ mcpc connect mcp.apify.com @apify --x402
533533

534534
## MCP proxy
535535

536-
For stronger isolation, `mcpc` can expose an MCP session under a new local proxy MCP server using the `--proxy` option.
536+
For stronger isolation, `mcpc` can expose an MCP session as a new local proxy MCP server using the `--proxy` option.
537537
The proxy forwards all MCP requests to the upstream server but **never exposes the original authentication tokens** to the client.
538538
This is useful when you want to give someone or something MCP access without revealing your credentials.
539539
See also [AI sandboxes](#ai-sandboxes).
@@ -551,9 +551,9 @@ mcpc connect mcp.apify.com @open-relay --proxy 8080
551551
mcpc connect localhost:8080 @sandboxed
552552
mcpc @sandboxed tools-call search-actors keywords:="web scraper"
553553

554-
# Optionally protect proxy with bearer token for better security (stored in OS keychain)
554+
# Optionally protect the proxy with a bearer token (stored in the OS keychain)
555555
mcpc connect mcp.apify.com @secure-relay --proxy 8081 --proxy-bearer-token secret123
556-
# To use the proxy, caller needs to pass the bearer token in HTTP header
556+
# To use the proxy, the caller needs to pass the bearer token in the Authorization header
557557
mcpc connect localhost:8081 @sandboxed2 --header "Authorization: Bearer secret123"
558558
```
559559

@@ -598,7 +598,7 @@ interactive **tool calling** and **[code mode](https://www.anthropic.com/enginee
598598

599599
**Tool calling mode** - Agents call `mcpc` commands to dynamically explore and interact with MCP servers,
600600
using the default text output. This is similar to how MCP connectors in ChatGPT or Claude work,
601-
but CLI gives you more flexibility and longer operation timeouts.
601+
but the CLI gives you more flexibility and longer operation timeouts.
602602

603603
```bash
604604
# Discover available tools
@@ -669,7 +669,7 @@ The [proxy MCP server](#mcp-proxy) feature provides a security boundary for AI a
669669

670670
1. **Human creates authentication profile**: `mcpc login mcp.apify.com --profile ai-access`
671671
2. **Human creates session**: `mcpc connect mcp.apify.com @ai-sandbox --profile ai-access --proxy 8080`
672-
3. **AI runs inside a sandbox**: If sandbox has access limited to `localhost:8080`,
672+
3. **AI runs inside a sandbox**: If the sandbox's access is limited to `localhost:8080`,
673673
it can only interact with the MCP server through the `@ai-sandbox` session,
674674
without access to the original OAuth credentials, HTTP headers, or `mcpc` configuration.
675675

@@ -1026,7 +1026,7 @@ never executes hooks, scripts, or other frontmatter-declared behavior.
10261026
When connected via a [session](#sessions), `mcpc` automatically handles `list_changed`
10271027
notifications for tools, resources, and prompts.
10281028
The bridge process tracks when each notification type was last received.
1029-
The timestamps are available in JSON output of `mcpc @session --json` under the `_mcpc.notifications`
1029+
The timestamps are available in the JSON output of `mcpc @session --json` under the `_mcpc.notifications`
10301030
field - see [Server instructions](#server-instructions).
10311031

10321032
#### Server logs

0 commit comments

Comments
 (0)