@apify/mcpc 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -2
- package/README.md +171 -48
- package/dist/bridge/index.js +32 -40
- package/dist/bridge/index.js.map +1 -1
- package/dist/cli/commands/clean.d.ts.map +1 -1
- package/dist/cli/commands/clean.js +3 -2
- package/dist/cli/commands/clean.js.map +1 -1
- package/dist/cli/commands/connect.d.ts +63 -0
- package/dist/cli/commands/connect.d.ts.map +1 -0
- package/dist/cli/commands/connect.js +655 -0
- package/dist/cli/commands/connect.js.map +1 -0
- package/dist/cli/commands/logs.d.ts +8 -0
- package/dist/cli/commands/logs.d.ts.map +1 -0
- package/dist/cli/commands/logs.js +143 -0
- package/dist/cli/commands/logs.js.map +1 -0
- package/dist/cli/commands/sessions.d.ts +6 -59
- package/dist/cli/commands/sessions.d.ts.map +1 -1
- package/dist/cli/commands/sessions.js +37 -690
- package/dist/cli/commands/sessions.js.map +1 -1
- package/dist/cli/commands/skills.d.ts +20 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +160 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/x402.d.ts.map +1 -1
- package/dist/cli/commands/x402.js +14 -4
- package/dist/cli/commands/x402.js.map +1 -1
- package/dist/cli/index.js +117 -31
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/output.d.ts +13 -0
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js +113 -20
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/parser.d.ts +1 -1
- package/dist/cli/parser.d.ts.map +1 -1
- package/dist/cli/parser.js +25 -2
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/shell.js.map +1 -1
- package/dist/core/capabilities.d.ts +3 -0
- package/dist/core/capabilities.d.ts.map +1 -0
- package/dist/core/capabilities.js +14 -0
- package/dist/core/capabilities.js.map +1 -0
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/mcp-client.d.ts +4 -0
- package/dist/core/mcp-client.d.ts.map +1 -1
- package/dist/core/mcp-client.js +36 -12
- package/dist/core/mcp-client.js.map +1 -1
- package/dist/lib/bridge-client.d.ts +4 -1
- package/dist/lib/bridge-client.d.ts.map +1 -1
- package/dist/lib/bridge-client.js +29 -3
- package/dist/lib/bridge-client.js.map +1 -1
- package/dist/lib/bridge-manager.d.ts +3 -3
- package/dist/lib/bridge-manager.d.ts.map +1 -1
- package/dist/lib/bridge-manager.js +36 -20
- package/dist/lib/bridge-manager.js.map +1 -1
- package/dist/lib/cleanup.d.ts.map +1 -1
- package/dist/lib/cleanup.js +20 -19
- package/dist/lib/cleanup.js.map +1 -1
- package/dist/lib/config.d.ts +14 -0
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +41 -27
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.d.ts +0 -1
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +2 -4
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/log-reader.d.ts +28 -0
- package/dist/lib/log-reader.d.ts.map +1 -0
- package/dist/lib/log-reader.js +278 -0
- package/dist/lib/log-reader.js.map +1 -0
- package/dist/lib/session-client.d.ts +1 -1
- package/dist/lib/session-client.d.ts.map +1 -1
- package/dist/lib/session-client.js +6 -8
- package/dist/lib/session-client.js.map +1 -1
- package/dist/lib/stderr-tail.d.ts +10 -0
- package/dist/lib/stderr-tail.d.ts.map +1 -0
- package/dist/lib/stderr-tail.js +28 -0
- package/dist/lib/stderr-tail.js.map +1 -0
- package/dist/lib/types.d.ts +6 -1
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js +1 -0
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/utils.d.ts +1 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +12 -2
- package/dist/lib/utils.js.map +1 -1
- package/dist/lib/x402/fetch-middleware.d.ts +3 -2
- package/dist/lib/x402/fetch-middleware.d.ts.map +1 -1
- package/dist/lib/x402/fetch-middleware.js +37 -24
- package/dist/lib/x402/fetch-middleware.js.map +1 -1
- package/dist/lib/x402/signer.d.ts +7 -1
- package/dist/lib/x402/signer.d.ts.map +1 -1
- package/dist/lib/x402/signer.js +249 -5
- package/dist/lib/x402/signer.js.map +1 -1
- package/docs/README.md +1 -0
- package/docs/claude-skill/SKILL.md +150 -117
- package/docs/examples/company-lookup.sh +6 -6
- package/docs/vhs/README.md +79 -0
- package/docs/vhs/grep.tape +56 -0
- package/docs/vhs/mcpc-demo.tape +179 -0
- package/docs/vhs/proxy.tape +69 -0
- package/docs/vhs/quickstart.tape +59 -0
- package/docs/vhs/scripting.tape +69 -0
- package/docs/vhs/tools.tape +66 -0
- package/package.json +20 -20
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# mcpc demo — flagship overview
|
|
2
|
+
#
|
|
3
|
+
# Generate the GIF with VHS (https://github.com/charmbracelet/vhs):
|
|
4
|
+
#
|
|
5
|
+
# cd docs/vhs && vhs mcpc-demo.tape
|
|
6
|
+
#
|
|
7
|
+
# This produces mcpc-demo.gif in the current directory. To update the demo
|
|
8
|
+
# embedded in the main README, copy it to docs/images/mcpc-demo.gif.
|
|
9
|
+
#
|
|
10
|
+
# Prerequisites:
|
|
11
|
+
# - VHS: brew install vhs (or see https://github.com/charmbracelet/vhs#installation)
|
|
12
|
+
# - mcpc: npm install -g @apify/mcpc
|
|
13
|
+
# - jq: brew install jq (for the scripting section)
|
|
14
|
+
# - Auth: export APIFY_TOKEN=... (or remove the --header line to use anonymous access)
|
|
15
|
+
#
|
|
16
|
+
# This is a template — adapt the commands below for your own server,
|
|
17
|
+
# tools, and audience. Use the focused tapes in this folder
|
|
18
|
+
# (quickstart.tape, tools.tape, scripting.tape, grep.tape, proxy.tape)
|
|
19
|
+
# as a starting point for shorter, single-feature demos.
|
|
20
|
+
|
|
21
|
+
Output mcpc-demo.gif
|
|
22
|
+
|
|
23
|
+
Require mcpc
|
|
24
|
+
|
|
25
|
+
# Look & feel
|
|
26
|
+
Set Shell "bash"
|
|
27
|
+
Set FontFamily "JetBrains Mono"
|
|
28
|
+
Set FontSize 16
|
|
29
|
+
Set Width 1100
|
|
30
|
+
Set Height 650
|
|
31
|
+
Set Padding 20
|
|
32
|
+
Set TypingSpeed 50ms
|
|
33
|
+
Set PlaybackSpeed 1.0
|
|
34
|
+
Set Theme "Catppuccin Mocha"
|
|
35
|
+
Set WindowBar Colorful
|
|
36
|
+
Set WindowBarSize 32
|
|
37
|
+
Set BorderRadius 8
|
|
38
|
+
Set CursorBlink true
|
|
39
|
+
|
|
40
|
+
# Hidden setup: clean prompt, no scrollback, fresh state
|
|
41
|
+
Hide
|
|
42
|
+
Type "export PS1='$ '"
|
|
43
|
+
Enter
|
|
44
|
+
Type "mcpc @apify close 2>/dev/null; mcpc @fs close 2>/dev/null; true"
|
|
45
|
+
Enter
|
|
46
|
+
Type "clear"
|
|
47
|
+
Enter
|
|
48
|
+
Show
|
|
49
|
+
|
|
50
|
+
# 1. Discover mcpc
|
|
51
|
+
Type "# mcpc — a universal MCP CLI client"
|
|
52
|
+
Sleep 800ms
|
|
53
|
+
Enter
|
|
54
|
+
Sleep 600ms
|
|
55
|
+
|
|
56
|
+
Type "mcpc --help | head -25"
|
|
57
|
+
Sleep 400ms
|
|
58
|
+
Enter
|
|
59
|
+
Sleep 4s
|
|
60
|
+
|
|
61
|
+
Type "clear"
|
|
62
|
+
Enter
|
|
63
|
+
Sleep 300ms
|
|
64
|
+
|
|
65
|
+
# 2. List sessions and OAuth profiles
|
|
66
|
+
Type "# No sessions or profiles yet"
|
|
67
|
+
Sleep 600ms
|
|
68
|
+
Enter
|
|
69
|
+
Sleep 400ms
|
|
70
|
+
|
|
71
|
+
Type "mcpc"
|
|
72
|
+
Sleep 400ms
|
|
73
|
+
Enter
|
|
74
|
+
Sleep 3s
|
|
75
|
+
|
|
76
|
+
# 3. Connect to a remote MCP server
|
|
77
|
+
Type "# Connect to Apify's MCP server as session @apify"
|
|
78
|
+
Sleep 600ms
|
|
79
|
+
Enter
|
|
80
|
+
Sleep 400ms
|
|
81
|
+
|
|
82
|
+
Type 'mcpc connect mcp.apify.com @apify --header "Authorization: Bearer ${APIFY_TOKEN}"'
|
|
83
|
+
Sleep 400ms
|
|
84
|
+
Enter
|
|
85
|
+
Sleep 3s
|
|
86
|
+
|
|
87
|
+
# 4. Server info, capabilities, instructions
|
|
88
|
+
Type "# Show server capabilities and instructions"
|
|
89
|
+
Sleep 600ms
|
|
90
|
+
Enter
|
|
91
|
+
Sleep 400ms
|
|
92
|
+
|
|
93
|
+
Type "mcpc @apify"
|
|
94
|
+
Sleep 400ms
|
|
95
|
+
Enter
|
|
96
|
+
Sleep 4s
|
|
97
|
+
|
|
98
|
+
Type "clear"
|
|
99
|
+
Enter
|
|
100
|
+
Sleep 300ms
|
|
101
|
+
|
|
102
|
+
# 5. List available tools
|
|
103
|
+
Type "# List available tools"
|
|
104
|
+
Sleep 600ms
|
|
105
|
+
Enter
|
|
106
|
+
Sleep 400ms
|
|
107
|
+
|
|
108
|
+
Type "mcpc @apify tools-list | head -15"
|
|
109
|
+
Sleep 400ms
|
|
110
|
+
Enter
|
|
111
|
+
Sleep 4s
|
|
112
|
+
|
|
113
|
+
# 6. Dynamic tool discovery
|
|
114
|
+
Type "clear"
|
|
115
|
+
Enter
|
|
116
|
+
Type "# Find tools by keyword — useful for AI agents"
|
|
117
|
+
Sleep 600ms
|
|
118
|
+
Enter
|
|
119
|
+
Sleep 400ms
|
|
120
|
+
|
|
121
|
+
Type 'mcpc @apify grep "scraper"'
|
|
122
|
+
Sleep 400ms
|
|
123
|
+
Enter
|
|
124
|
+
Sleep 4s
|
|
125
|
+
|
|
126
|
+
# 7. Inspect a tool's schema
|
|
127
|
+
Type "clear"
|
|
128
|
+
Enter
|
|
129
|
+
Type "# Inspect a tool's input schema"
|
|
130
|
+
Sleep 600ms
|
|
131
|
+
Enter
|
|
132
|
+
Sleep 400ms
|
|
133
|
+
|
|
134
|
+
Type "mcpc @apify tools-get search-actors"
|
|
135
|
+
Sleep 400ms
|
|
136
|
+
Enter
|
|
137
|
+
Sleep 5s
|
|
138
|
+
|
|
139
|
+
# 8. Call a tool
|
|
140
|
+
Type "clear"
|
|
141
|
+
Enter
|
|
142
|
+
Type "# Call a tool with key:=value arguments"
|
|
143
|
+
Sleep 600ms
|
|
144
|
+
Enter
|
|
145
|
+
Sleep 400ms
|
|
146
|
+
|
|
147
|
+
Type 'mcpc @apify tools-call search-actors keywords:="web scraper" limit:=3'
|
|
148
|
+
Sleep 400ms
|
|
149
|
+
Enter
|
|
150
|
+
Sleep 5s
|
|
151
|
+
|
|
152
|
+
# 9. JSON mode + jq for scripting (code mode)
|
|
153
|
+
Type "clear"
|
|
154
|
+
Enter
|
|
155
|
+
Type "# JSON mode composes with jq for scripts and agents"
|
|
156
|
+
Sleep 600ms
|
|
157
|
+
Enter
|
|
158
|
+
Sleep 400ms
|
|
159
|
+
|
|
160
|
+
Type "mcpc --json @apify tools-list | jq -r '.[].name' | head -5"
|
|
161
|
+
Sleep 400ms
|
|
162
|
+
Enter
|
|
163
|
+
Sleep 4s
|
|
164
|
+
|
|
165
|
+
# 10. Close the session
|
|
166
|
+
Type "# Close the session when done"
|
|
167
|
+
Sleep 600ms
|
|
168
|
+
Enter
|
|
169
|
+
Sleep 400ms
|
|
170
|
+
|
|
171
|
+
Type "mcpc @apify close"
|
|
172
|
+
Sleep 400ms
|
|
173
|
+
Enter
|
|
174
|
+
Sleep 2s
|
|
175
|
+
|
|
176
|
+
Type "# Learn more: https://github.com/apify/mcpc"
|
|
177
|
+
Sleep 2s
|
|
178
|
+
Enter
|
|
179
|
+
Sleep 1500ms
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# mcpc proxy — AI sandbox: expose a credentialed session without leaking tokens
|
|
2
|
+
#
|
|
3
|
+
# cd docs/vhs && vhs proxy.tape
|
|
4
|
+
|
|
5
|
+
Output proxy.gif
|
|
6
|
+
|
|
7
|
+
Require mcpc
|
|
8
|
+
|
|
9
|
+
Set Shell "bash"
|
|
10
|
+
Set FontFamily "JetBrains Mono"
|
|
11
|
+
Set FontSize 16
|
|
12
|
+
Set Width 1200
|
|
13
|
+
Set Height 700
|
|
14
|
+
Set Padding 20
|
|
15
|
+
Set TypingSpeed 50ms
|
|
16
|
+
Set Theme "Catppuccin Mocha"
|
|
17
|
+
Set WindowBar Colorful
|
|
18
|
+
Set WindowBarSize 32
|
|
19
|
+
Set BorderRadius 8
|
|
20
|
+
|
|
21
|
+
Hide
|
|
22
|
+
Type "export PS1='$ '"
|
|
23
|
+
Enter
|
|
24
|
+
Type "mcpc @relay close 2>/dev/null; mcpc @sandbox close 2>/dev/null; true"
|
|
25
|
+
Enter
|
|
26
|
+
Type "clear"
|
|
27
|
+
Enter
|
|
28
|
+
Show
|
|
29
|
+
|
|
30
|
+
Type "# Human authenticates once and exposes a localhost MCP proxy"
|
|
31
|
+
Sleep 600ms
|
|
32
|
+
Enter
|
|
33
|
+
Type 'mcpc connect mcp.apify.com @relay --header "Authorization: Bearer ${APIFY_TOKEN}" --proxy 8080'
|
|
34
|
+
Sleep 400ms
|
|
35
|
+
Enter
|
|
36
|
+
Sleep 4s
|
|
37
|
+
|
|
38
|
+
Type "# The proxy forwards MCP traffic but hides the upstream token"
|
|
39
|
+
Sleep 600ms
|
|
40
|
+
Enter
|
|
41
|
+
Type "mcpc"
|
|
42
|
+
Sleep 400ms
|
|
43
|
+
Enter
|
|
44
|
+
Sleep 4s
|
|
45
|
+
|
|
46
|
+
Type "clear"
|
|
47
|
+
Enter
|
|
48
|
+
Type "# An AI agent (or another tool) connects to the proxy as a normal MCP server"
|
|
49
|
+
Sleep 600ms
|
|
50
|
+
Enter
|
|
51
|
+
Type "mcpc connect localhost:8080 @sandbox"
|
|
52
|
+
Sleep 400ms
|
|
53
|
+
Enter
|
|
54
|
+
Sleep 3s
|
|
55
|
+
|
|
56
|
+
Type "mcpc @sandbox tools-list | head -8"
|
|
57
|
+
Sleep 400ms
|
|
58
|
+
Enter
|
|
59
|
+
Sleep 5s
|
|
60
|
+
|
|
61
|
+
Type "clear"
|
|
62
|
+
Enter
|
|
63
|
+
Type "# Tear down both sides"
|
|
64
|
+
Sleep 500ms
|
|
65
|
+
Enter
|
|
66
|
+
Type "mcpc @sandbox close && mcpc @relay close"
|
|
67
|
+
Sleep 400ms
|
|
68
|
+
Enter
|
|
69
|
+
Sleep 2s
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# mcpc quickstart — first-time user flow
|
|
2
|
+
#
|
|
3
|
+
# A minimal demo of "install → connect → list tools → call tool".
|
|
4
|
+
# Best for the README hero / landing-page GIF.
|
|
5
|
+
#
|
|
6
|
+
# cd docs/vhs && vhs quickstart.tape
|
|
7
|
+
|
|
8
|
+
Output quickstart.gif
|
|
9
|
+
|
|
10
|
+
Require mcpc
|
|
11
|
+
|
|
12
|
+
Set Shell "bash"
|
|
13
|
+
Set FontFamily "JetBrains Mono"
|
|
14
|
+
Set FontSize 16
|
|
15
|
+
Set Width 1100
|
|
16
|
+
Set Height 600
|
|
17
|
+
Set Padding 20
|
|
18
|
+
Set TypingSpeed 50ms
|
|
19
|
+
Set Theme "Catppuccin Mocha"
|
|
20
|
+
Set WindowBar Colorful
|
|
21
|
+
Set WindowBarSize 32
|
|
22
|
+
Set BorderRadius 8
|
|
23
|
+
|
|
24
|
+
Hide
|
|
25
|
+
Type "export PS1='$ '"
|
|
26
|
+
Enter
|
|
27
|
+
Type "mcpc @apify close 2>/dev/null; true"
|
|
28
|
+
Enter
|
|
29
|
+
Type "clear"
|
|
30
|
+
Enter
|
|
31
|
+
Show
|
|
32
|
+
|
|
33
|
+
Type "# Connect to any MCP server, get a stateful session"
|
|
34
|
+
Sleep 600ms
|
|
35
|
+
Enter
|
|
36
|
+
Type 'mcpc connect mcp.apify.com @apify --header "Authorization: Bearer ${APIFY_TOKEN}"'
|
|
37
|
+
Sleep 400ms
|
|
38
|
+
Enter
|
|
39
|
+
Sleep 3s
|
|
40
|
+
|
|
41
|
+
Type "# List the tools the server exposes"
|
|
42
|
+
Sleep 500ms
|
|
43
|
+
Enter
|
|
44
|
+
Type "mcpc @apify tools-list | head -10"
|
|
45
|
+
Sleep 400ms
|
|
46
|
+
Enter
|
|
47
|
+
Sleep 4s
|
|
48
|
+
|
|
49
|
+
Type "# Call one of them with typed key:=value arguments"
|
|
50
|
+
Sleep 500ms
|
|
51
|
+
Enter
|
|
52
|
+
Type 'mcpc @apify tools-call search-actors keywords:="web scraper" limit:=3'
|
|
53
|
+
Sleep 400ms
|
|
54
|
+
Enter
|
|
55
|
+
Sleep 5s
|
|
56
|
+
|
|
57
|
+
Type "mcpc @apify close"
|
|
58
|
+
Enter
|
|
59
|
+
Sleep 2s
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# mcpc scripting — JSON mode + jq + pipelines (code mode)
|
|
2
|
+
#
|
|
3
|
+
# cd docs/vhs && vhs scripting.tape
|
|
4
|
+
|
|
5
|
+
Output scripting.gif
|
|
6
|
+
|
|
7
|
+
Require mcpc
|
|
8
|
+
Require jq
|
|
9
|
+
|
|
10
|
+
Set Shell "bash"
|
|
11
|
+
Set FontFamily "JetBrains Mono"
|
|
12
|
+
Set FontSize 16
|
|
13
|
+
Set Width 1200
|
|
14
|
+
Set Height 700
|
|
15
|
+
Set Padding 20
|
|
16
|
+
Set TypingSpeed 50ms
|
|
17
|
+
Set Theme "Catppuccin Mocha"
|
|
18
|
+
Set WindowBar Colorful
|
|
19
|
+
Set WindowBarSize 32
|
|
20
|
+
Set BorderRadius 8
|
|
21
|
+
|
|
22
|
+
Hide
|
|
23
|
+
Type "export PS1='$ '"
|
|
24
|
+
Enter
|
|
25
|
+
Type "mcpc connect mcp.apify.com @apify --header \"Authorization: Bearer ${APIFY_TOKEN}\" >/dev/null 2>&1 || true"
|
|
26
|
+
Enter
|
|
27
|
+
Type "clear"
|
|
28
|
+
Enter
|
|
29
|
+
Show
|
|
30
|
+
|
|
31
|
+
Type "# --json emits MCP-spec JSON to stdout, errors to stderr"
|
|
32
|
+
Sleep 600ms
|
|
33
|
+
Enter
|
|
34
|
+
Type "mcpc --json @apify tools-list | jq -r '.[].name' | head -5"
|
|
35
|
+
Sleep 400ms
|
|
36
|
+
Enter
|
|
37
|
+
Sleep 4s
|
|
38
|
+
|
|
39
|
+
Type "clear"
|
|
40
|
+
Enter
|
|
41
|
+
Type "# Chain tools across calls with jq + xargs"
|
|
42
|
+
Sleep 500ms
|
|
43
|
+
Enter
|
|
44
|
+
Type "mcpc --json @apify tools-call search-actors keywords:=\"scraper\" limit:=1 \\"
|
|
45
|
+
Sleep 200ms
|
|
46
|
+
Enter
|
|
47
|
+
Type ' | jq -r ".content[0].text | fromjson | .[0].name"'
|
|
48
|
+
Sleep 400ms
|
|
49
|
+
Enter
|
|
50
|
+
Sleep 5s
|
|
51
|
+
|
|
52
|
+
Type "clear"
|
|
53
|
+
Enter
|
|
54
|
+
Type "# Snapshot every tool's schema for CI / contract tests"
|
|
55
|
+
Sleep 500ms
|
|
56
|
+
Enter
|
|
57
|
+
Type "for tool in $(mcpc --json @apify tools-list | jq -r '.[].name' | head -3); do"
|
|
58
|
+
Sleep 200ms
|
|
59
|
+
Enter
|
|
60
|
+
Type ' mcpc --json @apify tools-get "$tool" > "/tmp/$tool.json"'
|
|
61
|
+
Sleep 200ms
|
|
62
|
+
Enter
|
|
63
|
+
Type " echo \"saved /tmp/$tool.json\""
|
|
64
|
+
Sleep 200ms
|
|
65
|
+
Enter
|
|
66
|
+
Type "done"
|
|
67
|
+
Sleep 400ms
|
|
68
|
+
Enter
|
|
69
|
+
Sleep 6s
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# mcpc tools — list / get / call
|
|
2
|
+
#
|
|
3
|
+
# cd docs/vhs && vhs tools.tape
|
|
4
|
+
|
|
5
|
+
Output tools.gif
|
|
6
|
+
|
|
7
|
+
Require mcpc
|
|
8
|
+
|
|
9
|
+
Set Shell "bash"
|
|
10
|
+
Set FontFamily "JetBrains Mono"
|
|
11
|
+
Set FontSize 16
|
|
12
|
+
Set Width 1100
|
|
13
|
+
Set Height 650
|
|
14
|
+
Set Padding 20
|
|
15
|
+
Set TypingSpeed 50ms
|
|
16
|
+
Set Theme "Catppuccin Mocha"
|
|
17
|
+
Set WindowBar Colorful
|
|
18
|
+
Set WindowBarSize 32
|
|
19
|
+
Set BorderRadius 8
|
|
20
|
+
|
|
21
|
+
Hide
|
|
22
|
+
Type "export PS1='$ '"
|
|
23
|
+
Enter
|
|
24
|
+
Type "mcpc connect mcp.apify.com @apify --header \"Authorization: Bearer ${APIFY_TOKEN}\" >/dev/null 2>&1 || true"
|
|
25
|
+
Enter
|
|
26
|
+
Type "clear"
|
|
27
|
+
Enter
|
|
28
|
+
Show
|
|
29
|
+
|
|
30
|
+
Type "# Browse the tools exposed by the server"
|
|
31
|
+
Sleep 600ms
|
|
32
|
+
Enter
|
|
33
|
+
Type "mcpc @apify tools-list | head -15"
|
|
34
|
+
Sleep 400ms
|
|
35
|
+
Enter
|
|
36
|
+
Sleep 4s
|
|
37
|
+
|
|
38
|
+
Type "clear"
|
|
39
|
+
Enter
|
|
40
|
+
Type "# Inspect a single tool's input schema and description"
|
|
41
|
+
Sleep 500ms
|
|
42
|
+
Enter
|
|
43
|
+
Type "mcpc @apify tools-get search-actors"
|
|
44
|
+
Sleep 400ms
|
|
45
|
+
Enter
|
|
46
|
+
Sleep 5s
|
|
47
|
+
|
|
48
|
+
Type "clear"
|
|
49
|
+
Enter
|
|
50
|
+
Type "# Call with auto-parsed key:=value arguments"
|
|
51
|
+
Sleep 500ms
|
|
52
|
+
Enter
|
|
53
|
+
Type 'mcpc @apify tools-call search-actors keywords:="web scraper" limit:=3'
|
|
54
|
+
Sleep 400ms
|
|
55
|
+
Enter
|
|
56
|
+
Sleep 5s
|
|
57
|
+
|
|
58
|
+
Type "clear"
|
|
59
|
+
Enter
|
|
60
|
+
Type "# Pass complex JSON inline or from stdin"
|
|
61
|
+
Sleep 500ms
|
|
62
|
+
Enter
|
|
63
|
+
Type 'echo '"'"'{"keywords":"crawler","limit":2}'"'"' | mcpc @apify tools-call search-actors'
|
|
64
|
+
Sleep 400ms
|
|
65
|
+
Enter
|
|
66
|
+
Sleep 5s
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apify/mcpc",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Universal command-line client for the Model Context Protocol (MCP).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -29,37 +29,37 @@
|
|
|
29
29
|
"node": ">=20.0.0"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@inquirer/input": "^5.0.
|
|
33
|
-
"@inquirer/select": "^5.
|
|
34
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
35
|
-
"@napi-rs/keyring": "^1.
|
|
32
|
+
"@inquirer/input": "^5.0.13",
|
|
33
|
+
"@inquirer/select": "^5.1.5",
|
|
34
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
35
|
+
"@napi-rs/keyring": "^1.3.0",
|
|
36
36
|
"chalk": "^5.6.2",
|
|
37
|
-
"commander": "^14.0.
|
|
38
|
-
"ora": "^9.
|
|
37
|
+
"commander": "^14.0.3",
|
|
38
|
+
"ora": "^9.4.0",
|
|
39
39
|
"proper-lockfile": "^4.1.2",
|
|
40
40
|
"qrcode-terminal": "^0.12.0",
|
|
41
|
-
"undici": "^7.
|
|
42
|
-
"uuid": "^
|
|
43
|
-
"viem": "^2.
|
|
41
|
+
"undici": "^7.25.0",
|
|
42
|
+
"uuid": "^14.0.0",
|
|
43
|
+
"viem": "^2.50.4"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@types/node": "^25.
|
|
46
|
+
"@types/node": "^25.9.1",
|
|
47
47
|
"@types/proper-lockfile": "^4.1.4",
|
|
48
48
|
"@types/qrcode-terminal": "^0.12.2",
|
|
49
49
|
"@types/uuid": "^11.0.0",
|
|
50
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
51
|
-
"@typescript-eslint/parser": "8.
|
|
52
|
-
"@vitest/coverage-v8": "4.1.
|
|
50
|
+
"@typescript-eslint/eslint-plugin": "8.59.4",
|
|
51
|
+
"@typescript-eslint/parser": "8.59.4",
|
|
52
|
+
"@vitest/coverage-v8": "4.1.7",
|
|
53
53
|
"c8": "^11.0.0",
|
|
54
|
-
"doctoc": "^2.
|
|
54
|
+
"doctoc": "^2.4.1",
|
|
55
55
|
"eslint": "^8.57.1",
|
|
56
56
|
"markdown-link-check": "^3.14.2",
|
|
57
57
|
"nyc": "^18.0.0",
|
|
58
|
-
"prettier": "^3.
|
|
59
|
-
"proxy-chain": "^
|
|
60
|
-
"tsx": "^4.
|
|
61
|
-
"typescript": "^
|
|
62
|
-
"vitest": "4.1.
|
|
58
|
+
"prettier": "^3.8.3",
|
|
59
|
+
"proxy-chain": "^3.0.0",
|
|
60
|
+
"tsx": "^4.22.3",
|
|
61
|
+
"typescript": "^6.0.3",
|
|
62
|
+
"vitest": "4.1.7"
|
|
63
63
|
},
|
|
64
64
|
"devEngines": {
|
|
65
65
|
"packageManager": {
|