@striderlabs/mcp-zipcar 1.0.0

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/README.md ADDED
@@ -0,0 +1,136 @@
1
+ # @striderlabs/mcp-zipcar
2
+
3
+ A Model Context Protocol (MCP) server for automating Zipcar car sharing tasks via stealth browser automation using [patchright](https://github.com/Kaliiiiiiiiii-Vinyzu/patchright).
4
+
5
+ ## Tools
6
+
7
+ | Tool | Description |
8
+ |------|-------------|
9
+ | `search_cars` | Find available Zipcars near a location for a given time period |
10
+ | `get_car_details` | Get vehicle info: type, features, seating, fuel, hourly/daily rates |
11
+ | `reserve_car` | Book a Zipcar for a specific time slot (requires login) |
12
+ | `extend_reservation` | Add time to an existing reservation |
13
+ | `end_trip` | End an active rental session and get a trip summary |
14
+ | `get_reservation_history` | View past and upcoming reservations |
15
+
16
+ ## Installation
17
+
18
+ ```bash
19
+ npm install
20
+ npm run build
21
+ ```
22
+
23
+ ## Usage
24
+
25
+ ### With Claude Desktop
26
+
27
+ Add to your `claude_desktop_config.json`:
28
+
29
+ ```json
30
+ {
31
+ "mcpServers": {
32
+ "zipcar": {
33
+ "command": "npx",
34
+ "args": ["-y", "@striderlabs/mcp-zipcar"]
35
+ }
36
+ }
37
+ }
38
+ ```
39
+
40
+ Or if installed globally:
41
+
42
+ ```json
43
+ {
44
+ "mcpServers": {
45
+ "zipcar": {
46
+ "command": "striderlabs-mcp-zipcar"
47
+ }
48
+ }
49
+ }
50
+ ```
51
+
52
+ ### With Claude Code
53
+
54
+ ```bash
55
+ claude mcp add zipcar -- npx -y @striderlabs/mcp-zipcar
56
+ ```
57
+
58
+ ## Authentication
59
+
60
+ Tools that require authentication (`reserve_car`, `extend_reservation`, `end_trip`, `get_reservation_history`) require you to be logged in to Zipcar in a browser session. The server shares a persistent browser context across requests within the same session.
61
+
62
+ If not logged in, you will receive an `auth_required` response with instructions to log in manually.
63
+
64
+ ## Tool Examples
65
+
66
+ ### Search for cars
67
+
68
+ ```json
69
+ {
70
+ "tool": "search_cars",
71
+ "arguments": {
72
+ "location": "Brooklyn, NY",
73
+ "start_time": "2025-08-15T09:00:00",
74
+ "end_time": "2025-08-15T13:00:00"
75
+ }
76
+ }
77
+ ```
78
+
79
+ ### Reserve a car
80
+
81
+ ```json
82
+ {
83
+ "tool": "reserve_car",
84
+ "arguments": {
85
+ "car_id": "car-12345",
86
+ "start_time": "2025-08-15T09:00:00",
87
+ "end_time": "2025-08-15T13:00:00",
88
+ "plan": "hourly"
89
+ }
90
+ }
91
+ ```
92
+
93
+ ### Get reservation history
94
+
95
+ ```json
96
+ {
97
+ "tool": "get_reservation_history",
98
+ "arguments": {
99
+ "filter": "upcoming",
100
+ "limit": 10
101
+ }
102
+ }
103
+ ```
104
+
105
+ ### Extend a reservation
106
+
107
+ ```json
108
+ {
109
+ "tool": "extend_reservation",
110
+ "arguments": {
111
+ "reservation_id": "res-98765",
112
+ "new_end_time": "2025-08-15T15:00:00"
113
+ }
114
+ }
115
+ ```
116
+
117
+ ### End a trip
118
+
119
+ ```json
120
+ {
121
+ "tool": "end_trip",
122
+ "arguments": {
123
+ "reservation_id": "res-98765"
124
+ }
125
+ }
126
+ ```
127
+
128
+ ## Notes
129
+
130
+ - Browser automation targets zipcar.com and may break if Zipcar updates their website structure.
131
+ - Patchright is used for stealth browser automation to avoid bot detection.
132
+ - A headless Chromium instance is launched on first tool call and reused for the session.
133
+
134
+ ## License
135
+
136
+ MIT — Strider Labs <hello@striderlabs.ai>
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}