Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Parknyc

БесплатноНе проверен

Enables managing NYC parking sessions, vehicles, and zones through MCP clients using the ParkNYC/Flowbird API.

GitHubEmbed

Описание

Enables managing NYC parking sessions, vehicles, and zones through MCP clients using the ParkNYC/Flowbird API.

README

MCP server for ParkNYC (Flowbird) -- manage your NYC parking sessions, vehicles, and zones from any MCP client (Claude Code, Claude Desktop, etc.).

Note: The Flowbird consumer API is undocumented. This server was built by reverse-engineering the ParkNYC web app JavaScript bundles. No public API docs exist.

Setup

1. Install and build

git clone <repo-url> parknyc-mcp
cd parknyc-mcp
npm install
npm run build

2. Get your session cookies

The API authenticates via browser cookies. You need three: PHPSESSID, server, and user.

  1. Open my.nyc.flowbirdapp.com in Chrome and log in. Check "Keep me logged in" to extend cookie lifetime from ~30 minutes to days/weeks.
  2. Open DevTools (Cmd+Option+I) and go to the Network tab
  3. Filter for customer/get and refresh the page
  4. Click the customer/get request
  5. Under Request Headers, find the Cookie line
  6. Copy the full value -- it will look something like:
    server=.apachen2; PHPSESSID=abc123...; user=def456...
    

Important: Do not include the g_state cookie if present -- it contains JSON braces that break the config file. You only need PHPSESSID, server, and user.

3. Configure your MCP client

Claude Code

Add a .mcp.json file to your project root:

{
  "mcpServers": {
    "parknyc": {
      "command": "node",
      "args": ["/path/to/parknyc-mcp/dist/index.js"],
      "env": {
        "PARKNYC_COOKIES": "server=.apachen2; PHPSESSID=your_session_id; user=your_user_cookie"
      }
    }
  }
}

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "parknyc": {
      "command": "node",
      "args": ["/path/to/parknyc-mcp/dist/index.js"],
      "env": {
        "PARKNYC_COOKIES": "server=.apachen2; PHPSESSID=your_session_id; user=your_user_cookie"
      }
    }
  }
}

4. Session expiry

Cookies expire periodically. If you checked "Keep me logged in", they should last days to weeks. Without it, sessions expire in ~30 minutes. When you start getting 401 errors, repeat step 2 to get fresh cookies and update your config.

Environment Variables

Variable Required Description
PARKNYC_COOKIES Yes Full cookie string from browser (must include PHPSESSID, server, user)
PARKNYC_LANGUAGE No Language code for API responses (default: en)

Available Tools

Read

Tool Description
get_account Get your account profile (name, email, phone, address)
get_active_sessions Get currently active/ongoing parking sessions
get_parking_history Get past parking sessions with pagination
get_order Get details of a specific parking order by ID
get_vehicles List all registered vehicles
search_zone Search for a parking zone by number
get_zone_info Get zone details (facility ID or POS number)
get_bookmarks Get saved/favorite parking locations
get_payment_accounts Get payment methods on file (cards, e-wallet)

Write

Tool Description
start_parking Start a new parking session at a zone
stop_parking Stop an active parking session early
extend_parking Extend an active parking session
cancel_parking Cancel a parking order
add_vehicle Register a new vehicle
delete_vehicle Remove a vehicle from your account
add_bookmark Save a parking zone as a favorite
delete_bookmark Remove a saved favorite

Example Usage

> Show my parking history from this week
> Do I have any active parking sessions?
> What vehicles are on my account?
> Search for zone 12345
> How much have I spent on parking this month?
> Start 15 minutes of parking at zone 12345 with my car

How It Works

The Flowbird/ParkNYC web app at my.nyc.flowbirdapp.com is a PHP-backed Angular SPA. This MCP server mimics the browser's API calls:

  • Auth: Three cookies (PHPSESSID for PHP session, server for load balancer affinity, user for the auth identity token)
  • Headers: X-MPP-Brand: parknyc on every request
  • Params: platform=nyc, version=2.0.21+1792, and rt=<timestamp> on every request
  • History: Uses /api/search/order/ with x-api-caller: customer header
  • Parking: Two-step flow -- order/create (proposal) then order/confirm (payment)

Limitations

  • No programmatic login: The login endpoint requires reCAPTCHA, so cookies must be obtained manually from a browser session
  • Cookie expiry: PHP sessions and the user cookie expire; you'll need to refresh them periodically
  • Start parking: The start_parking tool needs the zone's usertype value which varies by zone. This is still being refined and may not work for all zones
  • Rate limits: Rapid API calls may trigger 503 responses from the server

License

MIT

from github.com/ltyu/parknyc-mcp

Установка Parknyc

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/ltyu/parknyc-mcp

FAQ

Parknyc MCP бесплатный?

Да, Parknyc MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Parknyc?

Нет, Parknyc работает без API-ключей и переменных окружения.

Parknyc — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Parknyc в Claude Desktop, Claude Code или Cursor?

Открой Parknyc на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Parknyc with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development