nannylane-mcp
Unofficial Bun-based MCP server and TypeScript SDK for authenticated Nanny Lane dashboard data, enabling reading dashboard data, searching public nanny listings, inspecting messages, and preparing messages.
README
Nanny Lane MCP
Unofficial Bun-based MCP server and TypeScript SDK for authenticated Nanny Lane dashboard data.
This project lets an MCP client read Nanny Lane dashboard data, search public nanny directory listings, inspect message threads, fetch plan information, and prepare messages through a local server. Authentication is local-only: the server reads a browser Cookie header from environment variables or a private cookie file and never stores credentials in source.
What This Is
- A local MCP stdio server written in TypeScript and run with Bun.
- An importable TypeScript SDK for observed Nanny Lane dashboard, GraphQL, Next.js data, listing, plan, and message endpoints.
- A login helper that can either accept a pasted cookie header or import Nanny Lane cookies from local macOS browsers.
- A safety-first message tool that defaults to dry-run behavior.
What This Is Not
- Not an official Nanny Lane integration.
- Not an OAuth app.
- Not a credential broker.
- Not a hosted service.
- Not a tool that should be run against accounts you do not control.
Documentation
- Authentication: login helper, browser-cookie import, manual cookie setup, and environment variables.
- Browser Cookie Import: how Safari and Chrome-family cookie import work.
- SDK: importable TypeScript SDK entrypoint, client methods, and guardrails.
- MCP Setup: how to run the server from MCP clients.
- Tools: complete tool reference with inputs, side effects, and examples.
- Examples: common MCP tool-call workflows.
- Architecture: project structure, request flow, and design decisions.
- Endpoint Map: sanitized map of the Nanny Lane endpoints this server wraps.
- Troubleshooting: common auth, Cloudflare, browser import, and MCP issues.
- Development: local checks, repo hygiene, and contribution workflow.
- Release: release checklist, package verification, and publishing notes.
- Security: secret handling and side-effect policy.
Quick Start
Install dependencies:
bun install
Authenticate from Safari on macOS:
bun run login:safari
Or authenticate from Chrome:
bun run login:chrome
The login helper validates the session and writes a private cookie file to:
~/.config/nannylane-mcp/cookie
Run the MCP server:
bun run start
Run checks:
bun run check
Run full release checks:
bun run check:release
SDK Usage
import { createNannyLaneClient } from "nannylane-mcp";
const client = createNannyLaneClient();
const nannies = await client.findNannies({
citySlug: "atlanta",
stateSlug: "ga",
first: 10,
});
Useful SDK methods include:
findNannies()listingProfile()conversationSummaries()messageThread()sendMessage()plans()upgradeUrl()nextData()graphqlQuery()persistedGraphqlQuery()
See SDK for the complete public entrypoint.
MCP Client Config
From a source checkout, use an absolute path to src/server.ts:
{
"command": "bun",
"args": ["/absolute/path/to/nannylane-mcp/src/server.ts"]
}
After package installation, use the shipped bin:
{
"command": "nannylane-mcp"
}
If you use the default login helper path, no environment variables are required. To use a custom cookie file:
{
"command": "bun",
"args": ["/absolute/path/to/nannylane-mcp/src/server.ts"],
"env": {
"NANNYLANE_COOKIE_FILE": "/Users/you/.config/nannylane-mcp/cookie"
}
}
Available Tools
nannylane_conversationsnannylane_next_datanannylane_dashboard_page_datanannylane_conversations_page_datanannylane_family_profile_page_datanannylane_inbox_summarynannylane_persisted_graphqlnannylane_graphqlnannylane_peekaboo_bucketingnannylane_directory_page_datanannylane_find_nanniesnannylane_listing_profilenannylane_messagesnannylane_message_threadnannylane_send_messagenannylane_plansnannylane_upgrade_url
See Tools for exact input schemas and behavior.
Example Workflows
Find public nanny listings in Atlanta:
{
"citySlug": "atlanta",
"stateSlug": "ga",
"first": 10
}
Read messages for one listing before deciding whether to send:
{
"listingId": "listing-id-from-find-nannies"
}
Prepare a message without sending it:
{
"listingId": "listing-id-from-find-nannies",
"text": "Hi, I saw your profile and would like to learn more about your availability.",
"dryRun": true
}
See Examples for complete request/response-style workflows.
Safety Defaults
- Cookie files are expected outside the repository.
.env,.env.*,.cookies/,.tmp/,coverage/, anddist/are ignored.nannylane_send_messagedefaults todryRun: true.- The server starts without credentials so MCP clients can list tools before auth is configured.
- Credential loading is lazy and happens only when a tool call needs to contact Nanny Lane.
- The release gate verifies both MCP startup and SDK self-import.
Open-Source Hygiene
Before publishing a fork or opening a pull request:
bun run check:release
The release check runs tests, typecheck, Markdown link validation, MCP startup smoke, high-risk secret scanning, and a dry-run package build.
License
MIT. See LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.