{ "schema_version": 2, "entries": [ { "name": "adguard-home", "category": "monitoring", "api": "AdGuard Home", "description": "AdGuard Home REST-ish API. Our admin web interface is built on top of this REST-ish API.", "search_terms": [ "adguard-home", "AdGuard Home", "adguard-home-pp-cli", "DNS-level ad/tracker/malware blocking via AdGuard Home REST API for self-hosted network DNS management", "DNS Health Report", "health", "Summarize AdGuard Home health from locally synced data: protection status, block rate, top blocked domains, stale sync detection, and query volume trends", "Local Sync", "sync", "Sync API data to local SQLite for offline search and analysis with resumable incremental sync", "Full-Text Search", "search", "Full-text search across synced data or live API with auto mode that falls back to local on network failure", "Local Analytics", "analytics", "Analyze locally synced data with count, group-by, and summary operations", "Archive Workflow", "workflow archive", "Sync all resources to local store for offline access and search in one command", "Live Tail", "tail", "Stream live data changes by polling the API at configurable intervals, emitting NDJSON to stdout" ], "path": "library/monitoring/adguard-home", "printer": "e-jung", "printer_name": "Eric Jung", "creator": { "handle": "e-jung", "name": "Eric Jung" }, "mcp": { "binary": "adguard-home-pp-mcp", "transports": [ "stdio" ], "tool_count": 81, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "ADGUARD_HOME_USERNAME", "ADGUARD_HOME_PASSWORD" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "adminbyrequest", "category": "devices", "api": "Admin By Request", "description": "Sync Admin By Request audit, event, inventory, and elevation-request data for approvals, quota checks, and admin-risk reports.", "search_terms": [ "adminbyrequest", "Admin By Request", "adminbyrequest-pp-cli", "Sync Admin By Request audit, event, inventory, and elevation-request data for approvals, quota checks, and admin-risk reports.", "Repeat-Requestor Detection", "requests repeat-offenders", "Surface the top users by elevation-request count over a configurable window, so admins can spot patterns the portal does not visualize.", "Audit-to-Event Correlation", "correlate", "Given an audit log entry ID, join it to nearby events on the same computer to reconstruct a full elevation timeline.", "Agent-Version Drift", "inventory drift", "List endpoints whose AbR client version is older than a target version, useful for upgrade campaigns.", "Quota Usage Forecast", "quota forecast", "Track local API call count against the 100k-per-day quota and predict whether the current pace will exceed it before midnight.", "Denied-Reason Distribution", "requests denied-reasons", "Tokenize the free-text deniedReason field across all denied requests and emit a top-N word distribution.", "Compliance Report", "report compliance", "Render audit entries for a user or computer over a window in a format suitable for auditors (CSV or markdown).", "Endpoint Risk Score", "inventory risk-score", "Score each endpoint by elevation frequency, local-admin count, and AbR client version recency." ], "path": "library/devices/adminbyrequest", "printer": "joltsconsulting", "printer_name": "joltsconsulting", "creator": { "handle": "joltsconsulting", "name": "joltsconsulting" }, "mcp": { "binary": "adminbyrequest-pp-mcp", "transports": [ "stdio" ], "tool_count": 8, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "ADMINBYREQUEST_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "agent-capture", "category": "developer-tools", "api": "Agent Capture", "description": "Record, screenshot, and convert macOS windows and screens for AI agent evidence", "search_terms": [ "agent-capture", "Agent Capture", "agent-capture-pp-cli", "Capture macOS windows and screens as screenshots, videos, GIFs, and metadata-rich evidence bundles for agent workflows." ], "path": "library/developer-tools/agent-capture", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" } }, { "name": "ahrefs", "category": "marketing", "api": "Ahrefs", "description": "Query Ahrefs backlinks, keyword, rank tracking, site audit, and SERP data from the terminal.", "search_terms": [ "ahrefs", "ahrefs-pp-cli", "Query Ahrefs backlinks, keyword, rank tracking, site audit, and SERP data from the terminal.", "Crawler IP allowlist lookup", "public crawler-ips", "Return Ahrefs crawler IP addresses without requiring an Ahrefs API key.", "Crawler CIDR range lookup", "public crawler-ip-ranges", "Return Ahrefs crawler IP ranges without requiring an Ahrefs API key.", "API usage and limit check", "subscription-info", "Inspect Ahrefs API subscription limits and usage through the documented v3 endpoint.", "Backlink profile snapshot", "site-explorer backlinks-stats", "Fetch point-in-time backlink metrics for a target from Ahrefs Site Explorer.", "Keyword volume by country", "keywords-explorer volume-by-country", "Compare keyword search volume across countries from Ahrefs Keywords Explorer." ], "path": "library/marketing/ahrefs", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "ahrefs-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 29, "public_tool_count": 2, "auth_type": "api_key", "env_vars": [ "AHREFS_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "airbnb", "category": "travel", "api": "Airbnb Vrbo", "description": "Search Airbnb and VRBO, find the host's direct booking site, and report the cheapest of three sources side-by-side.", "search_terms": [ "airbnb", "Airbnb Vrbo", "airbnb-pp-cli", "Search Airbnb and VRBO, find the host's direct booking site, and report the cheapest of three sources side-by-side.", "Triple-source price arbitrage", "cheapest", "Given an Airbnb or VRBO listing URL, find the host's direct booking site and report the cheapest of three sources.", "Plan a trip composite", "plan", "Search Airbnb and VRBO in parallel for a city/dates/budget, then run cheapest on the top results, return a ranked-by-savings list.", "Fee-breakdown comparison", "compare", "Side-by-side: OTA total (with cleaning + service + tax fees) vs direct booking total, with dollar and percent savings.", "Cross-platform same-property match", "match", "Given a listing on Airbnb (or VRBO), find the same property on the other platform via geocode + amenities + photo signal.", "Price-drop watchlist", "watch", "Add saved listings to a watchlist with target prices; daily sync checks for drops; cron-friendly exit codes signal hits.", "Host portfolio analysis", "host portfolio", "Given a host or property management company name, list every known listing under them across Airbnb and VRBO.", "Wishlist diff over time", "wishlist diff", "Track price changes on Airbnb wishlists over time; report which saved listings dropped, by how much, and over what window.", "Reverse-image listing twin", "find-twin", "Reverse image search a listing's photos to find the same property on direct booking sites or alternate platforms.", "Listing fingerprint", "fingerprint", "Stable hash from photos + amenities + host + city; used by match for dedupe; exposed for power-user export workflows." ], "path": "library/travel/airbnb", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "airbnb-pp-mcp", "transports": [ "stdio" ], "tool_count": 8, "public_tool_count": 6, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "airframe", "category": "developer-tools", "api": "Airframe", "description": "Aircraft forensics from open public records — tail-number dossiers, fleet research, model-level safety, and NTSB event archaeology.", "search_terms": [ "airframe", "airframe-pp-cli", "Build aircraft dossiers from FAA registry and NTSB records, with owner, fleet, model-safety, and accident-history searches.", "Tail-number dossier", "tail", "Full dossier for a given N-number: FAA registry row (owner, make/model, engine, status, Mode-S hex) joined with every NTSB-investigated event involving that specific airframe.", "Owner fleet lookup", "owner", "List every aircraft registered to an owner name (substring or exact match), with optional accident-count enrichment per tail. Surfaces fleet make-up for any registered operator or LLC.", "Model-level safety profile", "model", "Resolve a free-text aircraft-model query (e.g. \"Cessna 172\") to its FAA make/model codes, then aggregate every NTSB event involving that model with year/state filters. Returns total/fatal/serious/minor breakdown plus the event list.", "Day-of flight enrichment via flight-goat", "flight", "Composes with flight-goat-pp-cli to resolve a commercial flight ident (e.g. UA1234) to the specific tail flying it within ~72 hours of departure, then enriches with the local FAA + NTSB store. Returns a full pre-flight dossier in one command.", "FTS5 full-text search over narratives + owners", "search", "Porter-stemmed FTS5 search across NTSB narratives and FAA owner names with snippet highlighting. Surfaces patterns like icing-related accidents or CAPS-deployment events that structured queries can't reach." ], "path": "library/developer-tools/airframe", "printer": "ChrisDrit", "printer_name": "Chris Drit", "creator": { "handle": "ChrisDrit", "name": "Chris Drit" }, "mcp": { "binary": "airframe-pp-mcp", "transports": [ "stdio" ], "tool_count": 9, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "plan" } }, { "name": "alaska-airlines", "category": "travel", "api": "Alaska Airlines", "description": "Search Alaska Airlines flights, manage Atmos Rewards data, and build checkout-ready cart links from the terminal.", "search_terms": [ "alaska-airlines", "Alaska Airlines", "alaska-airlines-pp-cli", "Search Alaska Airlines flights, manage Atmos Rewards data, and build checkout-ready cart links from the terminal.", "Field selection on deep JSON", "flights search --select", "Generic --select flag narrows the ~50KB search/results JSON to just the fields the agent needs.", "Cash vs award comparison with TPG valuation", "flights value-compare", "Runs paired cash + award searches for the same itinerary and applies a cents-per-point valuation (default: Alaska/Atmos from thepointsguy.com, cached 30 days). Returns effective cpp, TPG multiple, and TPG-valued dollar cost of the points option." ], "path": "library/travel/alaska-airlines", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" } }, { "name": "allrecipes", "category": "food-and-dining", "api": "Allrecipes", "description": "Search and fetch Allrecipes recipes as structured data, scale ingredients, build grocery lists, rank by Bayesian-smoothed popularity, and clear Cloudflare with a Chrome session cookie.", "search_terms": [ "allrecipes", "allrecipes-pp-cli", "Search Allrecipes, fetch structured recipe data, scale servings, build grocery lists, and rank cached recipes by popularity.", "Pantry match", "pantry", "Score Allrecipes recipes against your pantry — see which ones you can actually cook tonight without a grocery run.", "Bayesian top-rated", "top-rated", "Rank recipes by Bayesian-smoothed rating — proven popular wins over 1-review 5-star noise.", "Reverse ingredient index", "with-ingredient", "Find every cached recipe that uses a given ingredient — a SQL view across your local corpus.", "Quick weeknight", "quick", "Top-rated recipes that fit a strict time cap — Allrecipes' UI cannot enforce one, but the local cache can.", "Personal cookbook export", "cookbook", "Compile a top-rated category into a single markdown cookbook with TOC, ingredients, and instructions.", "Multi-recipe grocery list", "grocery-list", "Aggregate ingredients from many recipes into a deduped, agent-readable shopping list.", "Dietary filter on cache", "dietary", "Filter cached recipes by gluten-free / vegan / low-carb using JSON-LD keywords plus ingredient-name patterns.", "Doctor with Cloudflare diagnosis", "doctor", "Health check that names the Cloudflare 'Just a moment...' interstitial by inspecting the response body, then advises the browser-chrome transport." ], "path": "library/food-and-dining/allrecipes", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "allrecipes-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 1, "auth_type": "cookie", "env_vars": [ "ALLRECIPES_COOKIES" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "alltrails", "category": "travel", "api": "Alltrails Unofficial Seed", "description": "Evidence-labeled, live-capable route map for AllTrails browser/mobile surfaces. Not an official API contract.", "search_terms": [ "alltrails", "Alltrails Unofficial Seed", "alltrails-pp-cli", "Evidence-labeled, live-capable route map for AllTrails browser/mobile surfaces. Not an official API contract.", "Authenticated AllTrails browser and mobile route atlas", "alltrails list", "Expose evidence-labeled AllTrails trail, map, activity, account, community, and user route templates captured from authenticated browser/mobile surfaces rather than relying on a public API contract.", "PP-gated AllTrails live-write planner", "alltrails create", "Model account-changing AllTrails requests with default dry-run behavior, explicit risk labels, and the ALLTRAILS_PP_ALLOW_WRITES=1 barrier before any PP-side live mutation.", "Agent-readable AllTrails risk and auth surface", "agent-context", "Publish bearer/cookie auth requirements, MCP read/write risk metadata, and route annotations so agents can distinguish safe reads from live account mutations." ], "path": "library/travel/alltrails", "printer": "zaydiscold", "printer_name": "zaydiscold", "creator": { "handle": "zaydiscold", "name": "zaydiscold" }, "mcp": { "binary": "alltrails-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 9, "public_tool_count": 9, "auth_type": "bearer_or_cookie", "env_vars": [ "ALLTRAILS_ACCESS_TOKEN", "ALLTRAILS_COOKIE", "ALLTRAILS_CSRF_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "amazon-ads", "category": "commerce", "api": "Amazon Ads", "description": "Amazon Ads CLI for reports, analytics, keyword optimization, and guarded automation", "search_terms": [ "amazon-ads", "Amazon Ads", "amazon-ads-pp-cli", "Amazon Ads CLI for OAuth profile setup, reports, profitability analytics, keyword optimization, and guarded campaign automation.", "Profitability analytics", "acos-vs-tacos, true-profit, break-even-acos", "Estimate ad profitability from Amazon Ads reports, COGS, fees, and optional amazon-seller store revenue.", "Search term optimization", "search-term-mining, wasted-spend, negative-keyword-generator, new-keyword-opportunities", "Turn Search Term Reports into promotion, negation, and waste-reduction recommendations.", "Performance planning", "portfolio-dashboard, campaign-comparison, product-ad-profitability, placement-analysis, seasonal-planner", "Summarize spend, sales, ACOS, placement performance, product profit, and seasonal budget signals.", "Hourly and pacing analysis", "dayparting-analysis, budget-pacing", "Analyze reports with hour/hourOfDay or timestamped rows for conversion windows and early budget exhaustion.", "Keyword lifecycle and bid intelligence", "keyword-decay, keyword-lifecycle, bid-history, keyword-snapshots, bid-optimizer", "Track keyword trend history locally and recommend bid changes against target ACOS.", "Competitive intelligence", "share-of-voice, competitor-asin-mining", "Mine share-of-voice and product-targeting reports for competitor ASIN and keyword visibility signals.", "Report normalization", "reports wait, normalize-report", "Poll Amazon Ads async report status, read gzip reports, normalize CSV/JSON, and optionally import to the local SQLite store.", "Guarded automation", "auto-negate, auto-promote, budget-rebalance, bid-rules apply, automation-audit", "Plan and optionally apply negative keywords, exact promotions, budget changes, and bid rules with dry-run defaults, guardrails, and audit logs.", "Profile-aware OAuth setup", "auth login, profiles list, profiles select, profiles current", "Run Login with Amazon OAuth, persist refresh-token credentials locally, and select the Amazon Ads profile scope used on API calls." ], "path": "library/commerce/amazon-ads", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "amazon-ads-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 53, "public_tool_count": 53, "auth_type": "oauth2_refresh", "env_vars": [ "AMAZON_ADS_CLIENT_ID", "AMAZON_ADS_CLIENT_SECRET", "AMAZON_ADS_REFRESH_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "amazon-orders", "category": "commerce", "api": "Amazon Orders", "description": "Walk your Amazon order history offline — every order, item, shipment, and dollar in a local SQLite store no other...", "search_terms": [ "amazon-orders", "Amazon Orders", "amazon-orders-pp-cli", "Sync your Amazon order history into a local SQLite store, then ask cross-cutting questions offline: which deliveries are slipping, what did I spend last quarter, when did I order that thing, where is my stuff right now.", "Amazon does not publish a buyer-side API for order history. This CLI imports\ncookies from your logged-in Chrome / Firefox / Safari / Brave browser session,\nthen makes authenticated HTTPS GETs to the same HTML pages you see on\namazon.com. Log in to amazon.com in your browser, then run:\n\n amazon-orders-pp-cli auth login --chrome\n\nCookies live under the .amazon.com domain. The CLI persists them locally and\nrefreshes the session-id cookie automatically when amazon.com rotates it.", "Where Is My Stuff", "where-is-my-stuff", "All in-flight Amazon shipments with their current status and ETA in one view.", "Delivery Slips Detector", "delivery-slips", "Orders whose actual delivery date slipped more than N days from the original estimate.", "Spend Rollup", "spend", "Spending broken down by month, year, category, seller, or payment method.", "Top Items", "top-items", "Most-ordered items by frequency or by total spend, ASIN-grouped across all history.", "Subscribe & Save Detector", "subscribe-and-save", "Recurring purchases inferred from order history (same ASIN ordered on a regular cadence).", "Find That Thing", "find", "FTS5 search across orders, items, sellers, and tracking notes.", "Arriving Soon", "arriving-soon", "Shipments arriving in the next N days, sorted by ETA.", "Late Shipments", "late", "Active shipments past their original estimated delivery date." ], "path": "library/commerce/amazon-orders", "printer": "bwishan", "printer_name": "Brian Wishan", "creator": { "handle": "bwishan", "name": "Brian Wishan" }, "mcp": { "binary": "amazon-orders-pp-mcp", "transports": [ "stdio" ], "tool_count": 6, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [ "AMAZON_COOKIES" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "amazon-seller", "category": "commerce", "api": "Amazon Seller", "description": "Read FBA inventory, orders, sales reports, listings, and catalog data for an Amazon seller account.", "search_terms": [ "amazon-seller", "Amazon Seller", "amazon-seller-pp-cli", "Operate an Amazon seller account from the terminal: inventory, orders, reports, listings, and catalog." ], "path": "library/commerce/amazon-seller", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "amazon-seller-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 12, "public_tool_count": 0, "auth_type": "oauth2", "env_vars": [ "SP_API_LWA_CLIENT_ID", "SP_API_LWA_CLIENT_SECRET", "SP_API_REFRESH_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "american-reindustrialization", "category": "other", "api": "American Reindustrialization", "description": "Browse, slice, and analyze the curated American Reindustrialization directory — with diffs, geo clusters, sector...", "search_terms": [ "american-reindustrialization", "American Reindustrialization", "american-reindustrialization-pp-cli", "Browse, slice, and analyze the curated American Reindustrialization directory — with diffs, geo clusters, sector heatmaps, and offline SQL no website view shows.", "Diff since last sync", "whats-new", "Show companies and jobs added or updated since a date you provide, so a weekly sweep takes one command instead of an eyeball-the-list session.", "Composed jobs filter", "openings find", "Filter the jobs board by work_mode, experience_level, salary floor, state, company size, sector, and posted-since in a single query — combinations the website's UI cannot express.", "Sector-by-state heatmap", "analytics sector-heatmap", "Crosstab of primary_sector × HQ state with company counts (optionally weighted by jobs_count or filtered by funding_stage), revealing the geographic shape of each sector.", "Funding × sector breakdown", "analytics funding-by-sector", "Crosstab of funding_stage × primary_sector with company counts and median employee_range, exposing where capital is concentrating.", "Top hiring companies", "companies top-hiring", "Rank companies by jobs_count descending, with optional filters by sector, state, or funding_stage — the site has no ranking view.", "Company profile sheet", "companies profile", "Single-shot rich profile for one company: full fields plus that company's open jobs plus similar companies (same primary_sector and employee_range bucket).", "Geographic clusters", "analytics geo-clusters", "Grid-bucket companies by lat/lon (default 50km cells) and emit cluster centroid, member count, member companies, and the dominant sector per cluster.", "Salary distribution", "openings salary-stats", "p25 / p50 / p75 of midpoint salary across filtered jobs, with null-salary count reported separately so missing data is honest.", "Founded-year cohorts", "companies cohorts", "Bucket companies by founded_year (default 5-year buckets) with company counts and the top-3 sectors per cohort." ], "path": "library/other/american-reindustrialization", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "american-reindustrialization-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 18, "public_tool_count": 18, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "ankiweb", "category": "education", "api": "Ankiweb", "description": "The only terminal-native way to search, rank", "search_terms": [ "ankiweb", "ankiweb-pp-cli", "Approval-rate ranking", "shared rank", "Rank shared decks by approval rate (upvotes vs downvotes) with a minimum-vote floor, instead of the raw vote counts the website shows.", "Audio/image coverage filter", "shared search", "Filter shared decks by whether they include audio or images, critical for language learners.", "Side-by-side deck comparison", "compare", "Compare multiple shared decks in one table: approval rate, note count, audio/image coverage, and freshness.", "Freshness ranking", "shared fresh", "Rank or filter shared decks by last-modified date to surface actively maintained decks.", "New-deck drift watch", "watch", "Show shared decks that are new or changed for a search term since your last sync.", "Owned-deck download drift", "drift", "Track download-count changes on the decks you've published, between syncs.", "Discovery briefing", "brief", "One digest for a topic: top decks by approval rate, audio coverage, the freshest deck, and how many are new since last sync." ], "path": "library/education/ankiweb", "printer": "paulb", "printer_name": "Paul Bockewitz", "mcp": { "binary": "ankiweb-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 4, "public_tool_count": 3, "auth_type": "cookie", "env_vars": [ "ANKIWEB_COOKIES" ], "mcp_ready": "partial" } }, { "name": "anylist", "category": "food-and-dining", "api": "AnyList", "description": "Every AnyList feature in your terminal — plus offline search, store routing, and cron-safe automations no mobile...", "search_terms": [ "anylist", "anylist-pp-cli", "AnyList shopping, recipes, meal planning, and local grocery automation CLI.", "Cross-Recipe Ingredient Search", "recipe search --ingredient", "Find every recipe that uses a given ingredient instantly — no scrolling, no guessing.", "Recipe Filter by Metadata", "recipe filter", "Filter your entire recipe library by prep time, rating, serving count, and collection simultaneously.", "Store-Partitioned Shopping Output", "list by-store", "Split a shopping list into per-store groups sorted by store aisle order — ready for multi-store shopping trips.", "Cron-Safe Meal-Plan-to-List", "meal add-to-list", "Automatically build this week's shopping list from your meal plan — idempotent, quantity-merging, and safe to run on a schedule.", "Recipe Add-to-List with Quantity Merge", "recipe add-to-list", "Add a recipe's ingredients to your list and automatically sum quantities when an ingredient is already present.", "Missing-Ingredients Check", "recipe missing", "See exactly which ingredients you still need to buy before adding a recipe — skip what's already on your list.", "Meal Plan Weekly Grid", "meal summary", "Render a Mon–Sun meal plan grid with Breakfast/Lunch/Dinner labels — pasteable into messages or scripts.", "Weekly List Reset", "list reset", "Clear all checked items from a list in one command — idempotent and safe for cron to run after every shopping trip.", "Cross-List Item Search", "item search", "Find any item across all your shopping lists at once — shows which list it's on and whether it's checked.", "Sync Cache Staleness Check", "sync status", "Report how fresh your local cache is per entity type, with exit code 1 if any data is stale." ], "path": "library/food-and-dining/anylist", "printer": "jeeves", "printer_name": "Jeeves", "creator": { "handle": "jeeves", "name": "Jeeves" }, "mcp": { "binary": "anylist-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 43, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "ANYLIST_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "apartments", "category": "other", "api": "Apartments", "description": "Search Apartments.com listings, sync results to a local SQLite store, and run workflows the website never built — diff saved searches, rank by $/sqft, compare shortlists, and surface price drops or phantom listings.", "search_terms": [ "apartments", "apartments-pp-cli", "Search Apartments.com rentals from the terminal with offline sync, ranking, diff, and shortlist workflows.", "Watch saved searches with diff", "watch", "Re-run a stored search and surface what's NEW, REMOVED, or PRICE-CHANGED since the last sync.", "Multi-slug union ranking", "nearby", "Fan out a search across multiple cities, zips, or neighborhoods and return one ranked, deduped list.", "Total-cost-of-occupancy ranking", "value", "Rank synced listings by 12-month total cost (rent + pet rent + pet deposit + pet fee), filtered to your hard budget.", "$/sqft and $/bed ranking", "rank", "Rank synced listings by ratio metrics — price per square foot or price per bedroom.", "Side-by-side compare", "compare", "Pivot 2–8 listings into a wide table — one column per listing — with computed $/sqft and amenity overlap.", "Price-drop alerts", "drops", "List listings whose max-rent dropped by ≥N% within a time window.", "Stale-listing flag", "stale", "Flag listings whose price and availability haven't changed in N days — often phantom or stuck.", "Phantom-listing detector", "phantoms", "Surface listings flagged by a three-signal join: 404 on re-fetch, dropped from saved-search results, or stale ≥45 days.", "Neighborhood market summary", "market", "Median, p10, p90 of rent and rent/sqft, pet-friendly share, by city/state and bed count.", "Listing history", "history", "Time-series of every observation of one listing — rent, availability, status.", "Weekly digest", "digest", "Single-shot composer: new + removed + price-drops + top-5 by $/sqft + stale + phantom flags for one saved search over N days.", "Floor-plan-level value report", "floorplans", "Rank per-floor-plan rent/sqft across synced listings — same building can yield 4 plans at different ratios.", "Amenity must-have intersect", "must-have", "Filter synced listings to those whose amenities array contains ALL listed terms via FTS5.", "Local shortlist", "shortlist", "Tag-based local shortlist table; add/show/remove listings with notes and tags." ], "path": "library/other/apartments", "printer": "rderwin", "printer_name": "rderwin", "creator": { "handle": "rderwin", "name": "rderwin" }, "mcp": { "binary": "apartments-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "apify", "category": "developer-tools", "api": "Apify", "description": "Every Apify platform feature, plus a local SQLite store, cross-Actor search, novelty diffing, cost-aware runs, and...", "search_terms": [ "apify", "apify-pp-cli", "Novelty diffing", "run", "Run an Actor and emit only items not seen in prior runs of that Actor.", "Cross-actor dataset FTS", "search items", "Full-text search across every cached dataset from every Actor, normalized into a common schema.", "True cost ledger", "cost report", "Per-run USD cost report joining cached run metadata with the Apify monthly usage endpoint.", "Newsletter digest renderer", "digest", "Render a markdown digest from local store: dedupe by URL + title-similarity, rank by engagement+recency+novelty, fill a Go template.", "Curated weekly workflow", "workflow run", "Run a YAML-declared workflow that chains run → normalize → novelty → digest → publish across multiple Actors.", "Schedule-as-code", "schedules apply", "Declarative cron + Actor input bundle with terraform-style plan/apply/diff against the live Apify schedule API.", "Cost budget enforcement", "run --max-cost", "Pre-flight cost projection from local p50/p90 of past runs for the same Actor; aborts run if projection exceeds budget.", "Input presets", "preset save", "Capture known-good Actor input JSON from a prior run and replay with overrides.", "Actor A/B cost+quality test", "ab run", "Run the same input through two competing Actors, normalize via unified schema, report cost-per-novel-item and overlap percentage.", "Local replay mode", "digest --offline", "Run queries and template renders against the local SQLite copy of past datasets without hitting the API." ], "path": "library/developer-tools/apify", "printer": "kjmagnan1s", "printer_name": "Kevin Magnan", "creator": { "handle": "kjmagnan1s", "name": "Kevin Magnan" }, "mcp": { "binary": "apify-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 231, "public_tool_count": 11, "auth_type": "bearer_token", "env_vars": [ "APIFY_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "apple-docs", "category": "developer-tools", "api": "Apple Developer Documentation", "description": "Every Apple framework, indexed locally, with deprecation analysis and an MCP server no other Apple-docs tool has.", "search_terms": [ "apple-docs", "Apple Developer Documentation", "apple-docs-pp-cli", "Every Apple framework, indexed locally, with deprecation analysis and an MCP server no other Apple-docs tool has.", "Token-lean doc projection", "doc get", "Project a 50KB+ DocC JSON page down to just the fields an agent actually needs — abstract, signature, platforms, or all three — saving context tokens on every lookup.", "Cross-platform replacement finder", "port-to", "For a symbol unavailable on a target platform, walk the See-Also / Replacement-Of graph until landing on an alternative that IS available there and is not itself deprecated.", "Framework snapshot diff", "snapshot diff", "Diff two stored framework index snapshots and classify each delta as added, removed, deprecated, or likely-renamed (path-stem similarity).", "Deprecation cliff report", "deprecation-cliff", "List every Apple API deprecated in a given platform version, grouped by framework and symbol kind, with the replacement-hint column joined from references.", "Conformance graph", "conformance", "Walk a framework's `relationshipsSections` to enumerate concrete conformers of a protocol and the protocol's ancestors.", "Cross-framework symbol grep", "grep", "Regex over every synced framework's symbols with filters on kind, target platform, and deprecation status.", "WWDC reverse index", "wwdc symbols", "For a WWDC session ID, list every symbol whose doc page cites that session.", "Agent-shape doc bundle", "bundle", "Bundle a symbol's Markdown plus its depth-1 See-Also pages into a single token-budgeted blob, ready to paste into an agent prompt." ], "path": "library/developer-tools/apple-docs", "printer": "jcastillo725", "printer_name": "Joseph Alvin Castillo", "mcp": { "binary": "apple-docs-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 3, "public_tool_count": 3, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "archive-is", "category": "media-and-entertainment", "api": "Archive.today", "description": "Bypass paywalls and look up web archives via archive.today. Hero command: find or create an archive for any URL with lookup-before-submit, Wayback Machine fallback, and agent-hints on stderr when called non-interactively.", "search_terms": [ "archive-is", "archive-is-pp-cli" ], "path": "library/media-and-entertainment/archive-is", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "archive-is-pp-mcp", "transports": [ "stdio" ], "tool_count": 6, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full" } }, { "name": "ars-sicilia", "category": "other", "api": "ars-sicilia", "description": "L'unica CLI per il portale dell'Assemblea Regionale Siciliana: cerca", "search_terms": [ "ars-sicilia", "ars-sicilia-pp-cli", "Iter completo di un DDL", "ddl iter", "Ricostruisce la cronologia completa di un disegno di legge: presentazione, passaggio in commissione, lavori d'aula, eventuale promulgazione come legge regionale.", "Profilo deputato cross-archive", "deputato profilo", "Aggrega in un'unica vista tutti gli atti firmati o pronunciati da un deputato: DDL, interrogazioni, interpellanze, mozioni, ordini del giorno, risoluzioni e interventi in resoconti d'aula.", "Coppie di co-firmatari", "analytics", "Identifica i deputati che firmano insieme atti parlamentari, restituendo coppie e cluster con conteggio per analisi di network politico.", "Oratori più attivi in aula", "Classifica i deputati per numero di interventi nei resoconti d'aula, con range date e legislatura, opzionale conteggio parole.", "Dossier 360° di una commissione", "commissione dossier", "Vista completa su una commissione: convocazioni in calendario, sommari lavori, DDL assegnati e pareri richiesti al Governo regionale.", "Drift iter DDL", "ddl drift", "Confronta lo stato dell'iter dei DDL nella sync corrente con la precedente e segnala i disegni di legge che si sono mossi nel periodo (passati da commissione ad aula, approvati, ritirati).", "Stato sync archivi", "sync stale", "Mostra per ognuno dei 12 archivi ARS: timestamp ultima sync, n. record locali, età della sync, eventuale segnalazione di staleness.", "Cronologia inversa di una legge", "legge cronologia", "Partendo da una legge regionale promulgata (archivio 201), risale al DDL originario, agli emendamenti citati nei resoconti d'aula e ai pareri di commissione: l'inverso temporale di ddl iter." ], "path": "library/other/ars-sicilia", "printer": "aborruso", "printer_name": "aborruso" }, { "name": "art-goat", "category": "media-and-entertainment", "api": "Art Goat", "description": "A contemplative daily art practice with museum and astronomy APIs as your gallery.", "search_terms": [ "art-goat", "Art Goat", "art-goat-pp-cli", "Contemplative timer sit", "sit", "Sit with one piece of art for a fixed period. Opens the image in your browser, shows the curator's description, runs a quiet timer, and captures your reflection in the journal.", "Opinionated daily pick", "today", "Today's curated piece, chosen using anti-repeat against your sits and journal-aware diversity against your recent medium and culture choices. Includes a one-line 'why this today'.", "Reframed practice metrics", "journal stats", "Practice statistics emphasising source breadth, medium variety, region coverage, and mood drift, with streak available at the bottom labeled 'if you want to know'.", "Reflection full-text search", "journal search", "FTS5 over your reflection history. Surfaces every past sit whose text matches the query." ], "path": "library/media-and-entertainment/art-goat", "printer": "justinwfu", "printer_name": "justinwfu", "creator": { "handle": "justinwfu", "name": "justinwfu" }, "mcp": { "binary": "art-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "ART_GOAT_API_KEY", "NASA_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "arxiv", "category": "other", "api": "arXiv", "description": "Public Atom API for searching and fetching arXiv e-print metadata.", "search_terms": [ "arxiv", "arxiv-pp-cli", "Free public arXiv paper search and metadata CLI with Atom-to-JSON output for agents and scripts.", "Paper search", "query", "Search arXiv with documented query expressions and agent-friendly output controls.", "Latest category tracking", "Fetch recent papers by category using submitted-date sorting and bounded result counts.", "ID lookup", "Fetch exact papers by arXiv ID or versioned arXiv ID." ], "path": "library/other/arxiv", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "arxiv-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "azure-functions-admin", "category": "cloud", "api": "Azure Functions", "description": "Inspect, audit, and right-size your Azure Functions from the terminal — cold-start trends, config drift", "search_terms": [ "azure-functions-admin", "Azure Functions", "azure-functions-admin-pp-cli", "Inspect, audit, and right-size your Azure Functions from the terminal — cold-start trends, config drift, and plan-fit answers the portal and az don't give you.", "Cold-start observatory", "coldstart", "See how often your functions cold-start and how slow those starts are, with the projected cost of moving to a Premium always-ready plan.", "Scaling & exec-drift trend", "scaling", "Track instance scale-out and execution-time drift for an app over a time window, flagging when p95 duration creeps above baseline.", "Plan-fit recommendation", "plan-fit", "Per-app recommendation of Consumption vs Premium vs Dedicated across a resource group, based on invocation density, cold-start sensitivity, and duration.", "Config-drift detector", "drift", "Diff app settings across function apps and their deployment slots, flagging settings present in one environment but not another and plaintext values that should be Key Vault references.", "Secret-sprawl audit", "secrets-audit", "Flag app settings holding raw secret values instead of @Microsoft.KeyVault references, plus stale or unused function keys.", "Invocation failure clustering", "failures", "Cluster recent invocation failures by function and exception type from Application Insights over a time window.", "Stale-function finder", "stale", "Find functions with zero invocations in the last N days as cleanup candidates." ], "path": "library/cloud/azure-functions-admin", "printer": "sdhilip200", "printer_name": "Dhilip Subramanian", "mcp": { "binary": "azure-functions-admin-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 7, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "AZURE_TENANT_ID", "AZURE_CLIENT_ID", "AZURE_CLIENT_SECRET", "AZURE_SUBSCRIPTION_ID" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "bandsintown", "category": "media-and-entertainment", "api": "Bandsintown", "description": "Turn Bandsintown's two read-only endpoints into a tour-routing brain: local cache, calendar-gap detection, lineup...", "search_terms": [ "bandsintown", "bandsintown-pp-cli", "Tour-routing feasibility", "route", "Find which tracked artists already have shows near a target city within a date window — feasibility-ranked routing candidates for booking.", "Calendar-gap detection", "gaps", "Find empty windows in an artist's tour calendar that match an event slot length, optionally constrained to a region.", "Lineup co-bill mining", "lineup co-bill", "Surface which artists frequently co-bill with a given artist by aggregating lineup arrays across many events.", "Tracker trend", "trend", "Track tracker_count and upcoming_event_count over time per artist; surface rising and falling demand signals.", "Idempotent pull with diff", "pull", "Re-fetch every tracked artist's events with a staleness window; emit a structured diff (added / removed / changed events) for downstream agents.", "SEA routing radar", "sea-radar", "One-shot Southeast Asia briefing: all upcoming shows in a date range across tracked artists, grouped by city, tagged with tracker tier.", "Watchlist primitive", "track", "Local watchlist of artists you care about. Drives sync, snapshot, route, and sea-radar." ], "path": "library/media-and-entertainment/bandsintown", "printer": "4.5.2", "printer_name": "printing-press", "creator": { "handle": "4.5.2", "name": "printing-press" }, "mcp": { "binary": "bandsintown-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "api_key", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "beehiiv", "category": "marketing", "api": "beehiiv", "description": "Manage beehiiv publications, subscribers, segments, posts, automations, and newsletter analytics from the terminal.", "search_terms": [ "beehiiv", "beehiiv-pp-cli", "Manage beehiiv publications, subscribers, segments, posts, automations, and newsletter analytics from the terminal.", "Growth Summary", "insights growth-summary", "Summarize publication, subscriber, post, referral, and custom-field health in one read-only response.", "Subscriber Sources", "insights subscriber-sources", "Group subscribers by UTM, channel, and referring-site fields to see where audience growth is coming from.", "Post Performance", "insights post-performance", "List recent posts with status, audience, publish timing, and any available expanded stats.", "Field Coverage", "insights field-coverage", "Inspect custom-field definitions alongside subscriber sample size for enrichment planning.", "Referral Health", "insights referral-health", "Summarize referral-program configuration and subscriber referral-code coverage.", "Subscriber Lookup", "insights subscriber-lookup", "Find one subscriber by email or subscription ID and return a compact subscriber record." ], "path": "library/marketing/beehiiv", "printer": "kjmagnan1s", "printer_name": "Kevin Magnan", "creator": { "handle": "kjmagnan1s", "name": "Kevin Magnan" }, "mcp": { "binary": "beehiiv-pp-mcp", "transports": [ "stdio" ], "tool_count": 82, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "BEEHIIV_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "bento", "category": "marketing", "api": "Bento", "description": "Every Bento feature, plus the ones their own CLI does not have", "search_terms": [ "bento", "bento-pp-cli", "Every Bento feature, plus the ones their own CLI does not have, plus a local SQLite store that turns 'who are my top spenders by tag' into a one-liner.", "Snapshot Diff", "sync diff", "Show exactly which subscribers, tags, fields, or templates changed between two local snapshots since Bento has no since filter.", "Hygiene Pipeline", "hygiene scrub", "Run validation + jesses_ruleset + blacklist + content_moderation in one pass and emit a clean CSV plus a rejected CSV with reasons.", "Purchase Replay", "events purchase-replay", "Dry-run a Vendure order export against the Bento $purchase mapping and show the exact batch payload before sending.", "Trigger Path Lint", "events lint", "Warn when a payload uses /fetch/commands subscribe but the intent (welcome flow, tag-triggered automation) requires /batch/events to fire automations.", "Churn Risk Score", "subscribers churn-risk", "Rank subscribers by days-since-last-open/click against your cohort baseline before the next broadcast goes out.", "Win-Back Cohort", "subscribers winback", "Build a CSV of customers who bought once, lapsed 180+ days, and never opened the last 3 broadcasts.", "Review Trigger Coexist", "events review-window", "Emit a dated Bento event stream for orders shipped 10 days ago, skipping any order Stamped already triggered.", "Pre-Delete Audit", "subscribers pre-delete", "Show tags, events, revenue, and active automations a subscriber set carries before you file a GDPR data_deletion_request.", "Broadcast What-If", "broadcasts whatif", "Estimate audience size, predicted opens, and hygiene-risk count for a draft broadcast before you queue it in the dashboard.", "Tag Drift Report", "tags drift", "Surface tags whose subscriber counts swung more than N% week-over-week, catching misfiring workflows.", "Field Schema Lint", "fields lint", "Diff local custom fields against a Vendure customer-schema file and flag missing, renamed, or type-mismatched fields.", "Cohort FTS", "subscribers find", "Full-text search subscriber notes/fields plus structured filters in one query, exportable as CSV." ], "path": "library/marketing/bento", "printer": "bossriceshark", "printer_name": "bossriceshark", "creator": { "handle": "bossriceshark", "name": "bossriceshark" }, "mcp": { "binary": "bento-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 20, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "BENTO_PUBLISHABLE_KEY", "BENTO_SECRET_KEY", "BENTO_SITE_UUID" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "bird", "category": "social-and-messaging", "api": "Bird", "description": "A terminal-native CLI for Bird's Conversations and SMS APIs, with offline search, batch reconcile, and a local...", "search_terms": [ "bird", "bird-pp-cli", "A terminal-native CLI for Bird's Conversations and SMS APIs, with offline search, batch reconcile, and a local SQLite mirror nobody else ships.", "Bird uses an Access Key passed in the Authorization header. Generate one at\nhttps://app.bird.com/settings/security/access-keys and export it as BIRD_API_KEY.", "Delivery audit", "messages audit", "Fold a message and its interactions into a chronological delivery timeline; exit non-zero on terminal failure.", "Failure cluster", "messages failures", "Aggregate recent message-interaction failures grouped by reason code.", "SMS search", "Full-text search over message bodies, optionally filtered by sender or recipient phone number.", "CSV bulk dispatch", "sms send-batch", "Send a batch of SMS messages from a CSV with per-row idempotency keys, persisting the batch in the local store for later reconcile.", "Batch reconcile", "sms reconcile", "Re-fetch delivery interactions for every message in a batch, group failures by reason, and optionally retry.", "Conversation timeline", "conversations timeline", "Render a conversation's messages, participants, and delivery interactions in canonical chronological order.", "Cross-channel customer history", "messages from", "List every message exchanged with one phone number across all conversations.", "Tenant readiness check", "tenant doctor", "Run an SMS-tenant readiness checklist across channels, channel-config, anti-spam, compliance keywords, and messageability with a single exit code.", "Auto-block from STOP fires", "compliance auto-block", "Scan local inbound messages for STOP-keyword fires within a time window; emit a CSV ready for bulk-add (or apply directly)." ], "path": "library/social-and-messaging/bird", "printer": "CleverAI-ZH", "printer_name": "Stephan Stoeber", "creator": { "handle": "CleverAI-ZH", "name": "Stephan Stoeber" }, "mcp": { "binary": "bird-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 42, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "BIRD_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "blacklane", "category": "commerce", "api": "Blacklane", "description": "Upfront chauffeur quotes from the terminal — transfer and hourly, with a local price history no other tool has.", "search_terms": [ "blacklane", "blacklane-pp-cli", "Upfront chauffeur quotes from the terminal — transfer and hourly, with a local price history no other tool has.", "Fare watch", "watch", "Track a saved route's price over time and flag drops.", "Cheapest-window compare", "compare", "Quote one route across many departure times to find the cheapest.", "Multi-leg trip total", "trip", "Quote a sequence of legs and total the fares.", "Class fit advisor", "fit", "Recommend the cheapest vehicle class that fits the party.", "Quote ledger + search", "log", "Every quote saved to SQLite, full-text searchable and SQL-queryable.", "Account bookings", "bookings", "List your upcoming and past Blacklane rides (requires auth login).", "Account profile", "me", "Show your Blacklane profile (requires auth login).", "Wallet", "Show wallet credits and vouchers (requires auth login).", "Booking handoff", "book", "Quote and assemble a booking, then open browser checkout for payment under --confirm. Never charges." ], "path": "library/commerce/blacklane", "printer": "omarshahine", "printer_name": "Omar Shahine", "creator": { "handle": "omarshahine", "name": "Omar Shahine" }, "mcp": { "binary": "blacklane-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "blu-ray", "category": "media-and-entertainment", "api": "Blu-ray.com", "description": "The disc-collector's CLI for Blu-ray.com — offline catalog, live deals, and a price-drop watchlist with zero...", "search_terms": [ "blu-ray", "Blu-ray.com", "blu-ray-pp-cli", "Blu-ray.com disc database CLI — local catalog, listings, deals, news, and price-drop watchlist for every Blu-ray, 4K, DVD, and digital release.", "Offline FTS5 Search", "search", "Instant offline search across every Blu-ray release in Blu-ray.com's published sitemap (~400k+ entries). Faster than the site's JS-rendered search and works without a network round-trip after one sync.", "Price-Drop Watchlist", "watch check", "Local watchlist of release ids; re-scans Blu-ray.com deals on demand and alerts when any watched disc hits its target price or a new historical low.", "Editions Side-By-Side", "editions", "Given a movie umbrella id, lists every disc edition (4K UHD, Blu-ray, Steelbook, Director's Cut, country variant) with release date, list price, current price, and Blu-ray.com community rating in a single view.", "UPC Import + Resolve", "upc", "Resolves a CSV of UPC codes (e.g. the comma-separated export Blu-ray.com itself produces) back to local release records, hydrating titles, formats, ratings, and current prices.", "Catalog Drift", "drift", "Diffs today's sitemap against the last sync and surfaces 'new in catalog this week', 'removed', and 'metadata changed' so collectors don't miss announcements.", "Price History + Spark Plot", "history", "Shows per-retailer price history for a release id, captured automatically by watch check + deals --record. Optional inline ASCII spark plot." ], "path": "library/media-and-entertainment/blu-ray", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "blu-ray-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 11, "public_tool_count": 11, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "booking-com", "category": "travel", "api": "Booking.com", "description": "Every Booking.com workflow, plus offline price history, wishlist drop alerts, and multi-leg planning no other...", "search_terms": [ "booking-com", "Booking.com", "booking-com-pp-cli", "Search Booking.com hotels, scrape details and reviews, watch prices over time, and read your trips, wishlist, and Genius rewards via cookie import.", "Public search, hotel detail, reviews, and destination lookup require no auth. Authenticated features (My Trips, Saved/Wishlist, Genius rewards, profile) use cookie import via `auth login --chrome` — Booking.com gates these on `bkng` session cookies plus an `aws-waf-token` cookie that clears AWS WAF.", "Cheapest-dates for one hotel", "prices cheapest", "Sweep candidate checkin dates for a fixed-night stay at one hotel and return the lowest nightly totals from local price_history.", "Cheapest-dates for a destination", "prices cheapest-destination", "Sweep candidate checkins across a destination's top results and return the cheapest (property, date) pairs under a max-price ceiling.", "Price-drop watch", "watch run", "Track a set of (hotel, checkin, checkout) tuples and surface only the ones whose latest price dropped a configurable percentage below their trailing median.", "Wishlist price-drop digest", "wishlist drops", "Joins the authenticated wishlist with the local price_history and surfaces saved properties whose latest observed price is N% below the previous observation.", "Compare two hotels side-by-side", "compare", "Fetches detail + reviews for two hotels in parallel and emits a paired struct (price, score, amenity Δ, distance, free-cancellation, breakfast, recent-review counts).", "Free-cancellation deadline alarm", "trips deadlines", "Walks authenticated upcoming trips, extracts the free-cancellation-until deadline from each trip detail, and returns trips whose deadline is within a configurable window.", "Multi-leg itinerary planner", "trip plan", "Given multiple destination + date legs and a total budget, picks the cheapest property per leg whose summed nightly totals fit the budget, with a bounded combinatorial fallback when greedy busts.", "Genius-tier price-impact estimator", "genius impact", "Runs an absorbed search twice — once with the authenticated cookie (Genius rates applied) and once anonymously — and diffs price-per-property to surface the Genius savings delta.", "Mobile-only rate detector", "deals mobile-rates", "Re-runs an absorbed search with a Chrome mobile UA on top of the desktop call and diffs to surface mobile-only discounts Booking hides from desktop users.", "Destination price-band by month", "destinations price-band", "Aggregates price_history for a destination's synced properties and emits per-month median, min, and max nightly rate plus contributing property-count.", "Trips export for expense systems", "trips export", "Walks authenticated past-trip list, opens each trip detail, and emits a deterministic CSV (confirmation, property, checkin, checkout, currency, total, address) ready to paste into expense systems.", "Offline property FTS", "search", "After `sync` populates the local property store, FTS5 ranks free-text queries over name + description + amenity strings with BM25, no network call.", "Review stats rollup", "reviews stats", "Local SQL group-by over synced reviews; counts and median score per score-band, language, and traveler-type bucket. Mechanical, no NLP." ], "path": "library/travel/booking-com", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "booking-com-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 13, "public_tool_count": 9, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "botsee", "category": "marketing", "api": "Botsee", "description": "Have your agents measure and improve your brand's AI Visibility with botsee.io. API-first, agent-native.", "search_terms": [ "botsee", "botsee-pp-cli", "Have your agents measure and improve your brand's AI Visibility with botsee.io. Run audits across every major LLM, see what's missing, then get specific recommendations and ready-to-publish content to close the gap. API-first, agent-native", "AI Visibility Audit (flagship)", "ai-visibility-audit", "One command runs the full BotSee audit: idempotent on existing sites, bootstraps customer types and personas and questions if missing, then runs analysis across every LLM and prints a structured visibility report.", "Recommendations (top-level)", "recommendations", "Generate next-step recommendations from an analysis — promoted to top-level so agents can discover it without descending into the analysis subcommand tree.", "Site config tree", "site-config", "Print the full customer-types -> personas -> questions tree for a site, with UUIDs and the actual edit commands users can copy-paste to add, update, or remove any node.", "Cross-site sources rollup", "sites-summary", "Aggregate cited sources across every synced site, grouped by domain, with citation count, distinct sites citing each domain, and first-seen timestamp." ], "path": "library/marketing/botsee", "printer": "grahac", "printer_name": "grahac", "creator": { "handle": "grahac", "name": "grahac" }, "mcp": { "binary": "botsee-pp-mcp", "transports": [ "stdio" ], "tool_count": 56, "public_tool_count": 7, "auth_type": "bearer_token", "env_vars": [ "BOTSEE_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "breezedoc", "category": "productivity", "api": "BreezeDoc", "description": "BreezeDoc's REST API provides a handful of endpoints which can be used to get information about your account and", "search_terms": [ "breezedoc", "breezedoc-pp-cli", "E-signature and invoicing API for documents, templates, recipients, teams, and invoice workflows.", "Invoice lifecycle", "workflow invoice-lifecycle", "Create, update, optionally send, and refetch BreezeDoc invoices as one structured agent workflow.", "Client workspace snapshot", "workflow client-workspace-snapshot", "Collect a compact account snapshot across user, documents, templates, recipients, invoices, and optional teams.", "Document follow-up", "workflow document-follow-up", "Inspect a document and its recipients, derive follow-up statuses, and optionally resend with explicit opt-in.", "Signature packet prep", "workflow signature-packet-prep", "Prepare a signature packet from a template or raw document payload and optionally send it with explicit opt-in." ], "path": "library/productivity/breezedoc", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "breezedoc-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 19, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "BREEZEDOC_API_TOKEN", "BREEZEDOC_BEARER_TOKEN", "BREEZEDOC_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "cal-com", "category": "productivity", "api": "Cal.com", "description": "Every Cal.com feature, plus offline agendas, composed booking flows, and analytics no other Cal.com tool ships.", "search_terms": [ "cal-com", "Cal.com", "cal-com-pp-cli", "Cal.com bearer token (cal_live_* or cal_test_*); managed-user access tokens and OAuth access tokens also accepted", "One-shot booking", "book", "Schedule an attendee onto one of your event types in a single composed call — slot check, optional reservation, create, optional confirm. For the rare scripting case (admin onboarding, recruiter pre-fill, test fixtures); for the normal flow where the attendee picks their own time, share a URL from link list.", "Unified agenda", "agenda", "Upcoming bookings in a window — today, this week, or any duration — read from the local store.", "Cross-event-type slot search", "slots find", "Find first available slots across multiple event-type IDs in one call, ranked by start time.", "Booking analytics", "analytics no-show", "No-show, cancellation, volume, and density metrics over a window. Sister subcommands under analytics: bookings (volume), cancellations, no-show, density. --by accepts event-type, attendee, or weekday on the rate commands; analytics density --unit hour adds hourly heatmaps.", "Conflict detection", "conflicts", "Detects overlapping bookings within a time window — pairs whose time ranges intersect get reported. Reads the local store, no API call.", "Availability gap finder", "gaps", "Finds open windows in your schedule that are available but unbooked, filtered by minimum block size.", "Team workload balance", "workload", "Booking distribution across team members over a window — surfaces overloaded vs underutilized hosts.", "Webhook coverage", "webhooks coverage", "Audits registered webhook triggers against the canonical set and reports lifecycle events with no subscriber.", "Stale event types", "event-types stale", "Event types with zero bookings in the last N days — candidates for removal.", "Reschedule to next open slot", "reschedule next", "Move an existing booking to the next available slot for the same event type, after a cutoff.", "Bookable link create", "link create", "Create a new bookable link (event type) on your Cal.com account; prints the cal.com// URL ready to share.", "Bookable link list", "link list", "List every bookable link you own with the full cal.com// URL pre-rendered for copy-share.", "Out-of-office set", "ooo set", "Mark yourself out-of-office for a date range so Cal.com excludes the period from slot search; supports redirect-to-teammate for round-robin event types.", "Out-of-office list", "ooo list", "List your active and upcoming out-of-office entries, sorted by start time." ], "path": "library/productivity/cal-com", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "cal-com-pp-mcp", "transports": [ "stdio" ], "tool_count": 291, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "CAL_COM_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "cf-domain", "category": "cloud", "api": "Cloudflare Registrar Domains", "description": "Agent-native CLI for Cloudflare Registrar domain search, check, and registration.", "search_terms": [ "cf-domain", "Cloudflare Registrar Domains", "cf-domain-pp-cli", "Agent-native Cloudflare Registrar CLI for domain search, live pricing checks, and gated registration.", "Cloudflare cf OAuth reuse", "auth context", "Reuses existing Cloudflare cf OAuth token and account context when explicit env vars are absent, without printing secrets.", "Registrar purchase confirmation gate", "registrar domain-register", "Blocks live registration unless confirm-domain exactly matches domain-name after a fresh price check.", "Agent-safe live domain pricing", "registrar domain-check", "Uses Cloudflare Registrar live check endpoint with the correct domains[] wire shape for final availability and pricing." ], "path": "library/cloud/cf-domain", "printer": "danny-shmueli", "printer_name": "Danny Shmueli", "creator": { "handle": "danny-shmueli", "name": "Danny Shmueli" }, "mcp": { "binary": "cf-domain-pp-mcp", "transports": [ "stdio" ], "tool_count": 3, "public_tool_count": 5, "auth_type": "bearer_token", "env_vars": [ "CLOUDFLARE_API_TOKEN", "CLOUDFLARE_REGISTRAR_DOMAINS_BEARER_AUTH", "ACCOUNT_ID", "CLOUDFLARE_ACCOUNT_ID" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "chrome-history", "category": "productivity", "api": "Chrome History", "description": "Reverse-engineered from the hand-built chrome-history-pp-cli command/data shape", "search_terms": [ "chrome-history", "Chrome History", "chrome-history-pp-cli", "Query local Chrome browsing history from a snapshot index; no remote API spec.", "Chrome Journeys Topic Clusters", "journeys", "Surfaces Chrome's own Journeys topic clusters from local history databases.", "Session Timeline Reconstruction", "timeline", "Reconstructs session-level browsing timelines using timestamp gaps and device filters.", "Rabbithole Drift Detection", "rabbitholes", "Detects sessions that drift from productive starts into distracting browsing patterns." ], "path": "library/productivity/chrome-history", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "chrome-history-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 19, "public_tool_count": 19, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "sqlite" } }, { "name": "clarity", "category": "marketing", "api": "Microsoft Clarity", "description": "Client-side instrumentation helpers for Microsoft Clarity.", "search_terms": [ "clarity", "Microsoft Clarity", "clarity-pp-cli", "Generate Microsoft Clarity client API snippets and inspect the Clarity tag script.", "Snippet renderer", "snippet install", "Render a complete Clarity tracking snippet for a project ID, plus focused snippets for every documented client API call.", "Local HTML audit", "audit html", "Inspect an HTML file for a Clarity tag script, masking attributes, and common window.clarity client API calls." ], "path": "library/marketing/clarity", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "clarity-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "clickup", "category": "project-management", "api": "Clickup", "description": "Every ClickUp v2 + v3 endpoint as a typed CLI plus offline sync, search, and ergonomic chat/docs aliases.", "search_terms": [ "clickup", "clickup-pp-cli", "Hierarchical Sync with Parent-ID Traversal", "sync", "Walks the full ClickUp hierarchy in dependency order (teams → spaces → folders → lists → tasks; teams → docs; teams → channels) and lands every record in the local SQLite store. Every parent-child relationship in the API is traversed automatically.", "ClickUp's API requires a parent ID for almost every list operation. The default printing-press sync layer assumes global list endpoints (/users, /repos), which fail on hierarchical APIs. The parent-traversal handler reads parent IDs from the local store, templates child paths, supports unionTargets for resources living under multiple parents (lists under both folders and spaces), and forces sequential execution so children never sync before parents.", "Empty-Envelope Sync Fix", "Distinguishes \"recognized envelope with empty array\" from \"unrecognized response shape\" so tenants with zero records of a resource type sync cleanly instead of crashing. ClickUp returns {\"spaces\":[]} for workspaces with no spaces; the original framework treated this as a singular response and tried to upsert the wrapper as a single record, failing with \"missing id for space\".", "Generic to any hierarchical API where some tenants legitimately have zero of a resource type. Returns an empty-but-non-nil items slice when the envelope is recognized but empty, distinct from a nil slice for genuine singular responses.", "Ergonomic v3 Aliases (docs + chat)", "docs", "Top-level `docs` and `chat` commands with idiomatic verbs (search, get, pages, page, listing, create, edit, send, react, reply, members, followers, messages) replacing the spec-derived workspaces/docs/-public and workspaces/chat/get-channels paths. ~22 aliases total. Original verbs kept as Cobra aliases for back-compat.", "The generator names commands after API operationIds, which preserves a 1:1 mapping back to the spec but is rough on humans. ClickUp's v3 docs and chat surfaces are reachable via short, memorable verbs without losing the original paths." ], "path": "library/project-management/clickup", "printer": "kjmagnan1s", "printer_name": "Kevin Magnan", "creator": { "handle": "kjmagnan1s", "name": "Kevin Magnan" }, "mcp": { "binary": "clickup-pp-mcp", "transports": [ "stdio" ], "tool_count": 172, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "CLICKUP_AUTHORIZATION_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "clockify", "category": "productivity", "api": "Clockify", "description": "Every Clockify feature, plus a local time database that reconstructs your weekly timesheet, finds untracked gaps,...", "search_terms": [ "clockify", "clockify-pp-cli", "Timesheet week reconstruct", "timesheet week", "Rebuild your whole weekly timesheet grid offline — every project and task across each weekday, with per-day, per-project, and weekly totals.", "Timesheet gap finder", "timesheet gaps", "Find the days you are short — compares each day's tracked hours against your workday target and reports the missing time before you submit.", "Billable leakage audit", "audit billable", "Catch the misfiled entries that silently drop off invoices — billable time with no project, billable tasks marked non-billable, and untagged billable entries.", "Team submission tracker", "team timesheets", "See who has not submitted — diffs the full workspace user list against the week's approval requests so the people who forgot are visible, not invisible.", "Where-did-my-week-go recap", "recap", "A ranked breakdown of where your tracked time went — by project, client, and tag, with the billable vs non-billable split and percentage of the total.", "Unbilled billable balance", "billable pending", "The invoice-ready number — sums billable time not yet covered by any synced invoice, grouped by client.", "Project budget burn", "projects burn", "Estimate vs actual per project — hours logged against the project's budget or time estimate, with percent consumed.", "Full-text entry search", "search", "Full-text search across every synced time-entry description and project, task, client, and tag name.", "Draft entries from logs and files", "backfill", "Reconstruct the time you forgot to track — turn a CSV export, your shell history, or a CLI session log into draft time entries, review them, then commit them to Clockify." ], "path": "library/productivity/clockify", "printer": "melanson633", "printer_name": "melanson633", "creator": { "handle": "melanson633", "name": "melanson633" }, "mcp": { "binary": "clockify-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 155, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "CLOCKIFY_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "cloud-run-admin", "category": "cloud", "api": "Google Cloud Run", "description": "Deploy and manage user provided container images that scale automatically based on incoming requests. The Cloud Run Admin API v1 follows the Knative Serving API specification, while v2 is aligned with Google Cloud AIP-based API standards, as described in https://google.aip.dev/.", "search_terms": [ "cloud-run-admin", "Google Cloud Run", "cloud-run-admin-pp-cli", "Cloud Run Admin API for deploying and managing serverless container services, revisions, jobs, and executions", "Agent-ready service inventory", "services list", "Lists Cloud Run services through the Admin API with agent-friendly JSON, compact output, and field selection.", "Local Cloud Run inventory", "sync", "Syncs Cloud Run resources into a local SQLite store so services, jobs, revisions, executions, tasks, and operations can be searched without repeating every API call.", "Offline resource search", "search", "Searches synced Cloud Run inventory locally or falls back to live API calls depending on the data-source mode.", "Cloud Run analytics", "analytics", "Runs local analysis against synced Cloud Run data for inventory and status-oriented questions.", "Compound Cloud Run workflows", "workflow", "Provides compound workflows that combine multiple Cloud Run Admin API operations into one operator-facing flow." ], "path": "library/cloud/cloud-run-admin", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "cloud-run-admin-pp-mcp", "transports": [ "stdio" ], "tool_count": 16, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "CLOUD_RUN_ADMIN_OAUTH2C" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "coffee-goat", "category": "food-and-dining", "api": "Coffee GOAT", "description": "The third-wave coffee terminal — every elite roaster, every YouTube creator review, your brews, and the God cup.", "search_terms": [ "coffee-goat", "Coffee GOAT", "coffee-goat-pp-cli", "Search elite roaster catalogs, creator reviews, brew logs, and cupping notes in one local coffee database.", "The God cup recommender", "god-cup", "Integrates your shelf, brew history, Coffee Review scores, Hoffmann/Hedrick coverage, and champion recipes to produce one brew-now pick and one buy-next pick.", "Cross-roaster FTS search", "search", "Search every elite specialty roaster's catalog at once — Ethiopian naturals across the curated shelf in one query.", "Persisted query diff feed", "watch", "Saved search emits only new matches on each sync — silent when nothing changed, cron-safe.", "Closest twin across roasters", "twin", "Given a bean you loved, find the closest current match across the curated shelf via origin/varietal/process/altitude/descriptor similarity.", "Multi-bean compare", "compare", "Side-by-side bean table with origin/process/altitude/$/oz/score deltas; works across roasters.", "Producer tracking across roasters", "producer", "Track a producer or farm (Diego Bermudez, Wush Wush, El Paraiso) across every roaster sync — multi-year lineage view.", "FX-normalized landed cost", "fx", "Live ECB FX rates normalize $/oz across continents; curated shipping table adds ship-to landed cost.", "Bayesian dial-in recommender", "dial-in", "Suggest grind/dose/yield/time for a new bean using your brew history of similar beans (origin/process/varietal/altitude clusters).", "Cellar with freshness windows", "shelf", "What's on your shelf today, sorted by freshness with per-method peak windows (espresso 8–21d, filter 5–28d).", "Recommend what to drink next", "whats-next", "Joins shelf freshness × dial-in confidence × user palate signature to pick one bag from your shelf for tomorrow morning.", "Brew-rating drift diagnostic", "drift", "Detect grinder/water/technique drift via fixed-effects OLS on rating-vs-day across multiple beans; partitions variance by method.", "Refill plan with ranked replacements", "refill-plan", "Combines consumption rate from your brews + shelf depletion + cross-roaster twin similarity to recommend 3 replacement picks.", "Blind cupping with palate calibration", "blind-cup", "Blind cupping session with hashed cup IDs; reveal at end and report Spearman correlation against Coffee Review's scores.", "Personal palate map", "palate-map", "Aggregate your 8+ rated brews into an origin/process/varietal weight signature, then rank current shelf and restock candidates by signature match.", "Bag lifecycle", "bag-life", "For one bag, plot daily ratings vs days-since-roast and call peak / decline / dead.", "Friend-pick (palate sharing)", "friend-pick", "Recommend a bag for a friend whose palate profile you've imported — pick from your shelf or current market, ranked against their descriptor signature instead of yours.", "SCA Flavor Wheel mapping", "flavor-wheel", "Maps your brew ratings onto the official SCA Coffee Tasters' Flavor Wheel hierarchy (fruity → berry → blackberry, floral → tea-like → black tea, etc.) and shows which sections you actually prefer.", "Creator review lookup", "creator-review", "Find every Hoffmann or Hedrick clip that mentions a bean or roaster, with transcript excerpt and timestamp.", "Transcript search", "transcript-search", "Local FTS5 search across all synced Hoffmann + Hedrick transcripts with timestamp + video link.", "Personal brew log + cellar", "brews", "Brew log (log/list/show/delete) and local cellar (cellar add/list/show/update/remove) — the input feed for every personal-history command.", "Curated V60 recipe library", "recipe-replay", "Hardcoded library of 10 canonical V60 recipes (Hoffmann 2018/2023, Tetsu 4:6 light/dark, Lance Pulse, WBrC 2020-2024 champions) with structured 5-tuple + technique markdown.", "Coffee spend + cost-per-cup", "budget", "Dose-grams attribution (dose_g / bag_size_g × bag_price). YTD + projection range (linear + trailing-3-mo × 12). Pivot --by month|roaster|bag|method. --include-shipping uses fx's curated table.", "Origin coverage + gap-filler", "coffee-map", "Country-primary coverage with tiered depth labels (unexplored/tasted/explored/deep). Synced corpus default; --world adds curated specialty origins. --fill suggests bags inline; `coffee-map fill` ranks across all gaps by CR score + process tiebreak.", "K-NN twin prediction + back-test", "predict-rating", "Predicts YOUR rating for a (bean, method) pair via K=5 nearest twins from your brew log. Subcommand split: `predict-rating [bean]` and `predict-rating cellar` write to predicted_ratings; `predict-rating calibration` is mcp:read-only and reports MAE+bias sliced by method/origin/process.", "SCA cupping sessions", "cupping", "Full 10-attribute SCA form, multi-cupper sessions (auto-creates palate_profiles), open default + --blind slot labels. 7 verbs: start/score/finalize/abandon/show/list/log. Finalize bridges cupper=self scores to the brews table as method='cupping'.", "Championship-style recipe matcher", "champion-replay", "Curated scaffold of WBC / WBrC-inspired brewing recipes. `list` and `show` browse the library; `shop ` matches each recipe's bean (by origin, process, varietal) against currently in-stock lots in the synced roaster_products corpus. Entries are best-effort reconstructions from public coverage, not verified records.", "Corpus aggregations", "analytics", "Roll-up read-only aggregations across the synced corpus and personal brew log. Subcommands: `origins` (top origins by product count + in-stock share), `roasters` (top roasters with avg price and in-stock share), `descriptors` (most common flavor descriptors from reviews via json_each), `brews-by-month` (personal brew count and average rating per month).", "Recently-synced rows", "tail", "Show the newest entries in each resource table after a sync — products, reviews, videos. Filter with --since (e.g. 24h, 7d) or --resource to scope to one table. Helpful for confirming what arrived on the last sync without re-scanning the full corpus.", "Multi-source sync history", "jobs", "Inspect recent multi-source sync runs from coffee_sync_state. `list` shows per-source last status, item count, and last-synced timestamp; `show ` zooms one source (shopify, coffee-review, youtube). Useful for diagnosing 'why is search returning stale data' before re-running sync." ], "path": "library/food-and-dining/coffee-goat", "printer": "justinwfu", "printer_name": "Justin Fu", "creator": { "handle": "justinwfu", "name": "Justin Fu" } }, { "name": "coingecko", "category": "payments", "api": "CoinGecko", "description": "CoinGecko public API for cryptocurrency data. Free tier, no API key required for basic endpoints.", "search_terms": [ "coingecko", "coingecko-pp-cli", "Fetch CoinGecko cryptocurrency prices, market data, coins, exchanges, and trend endpoints from the public API.", "Coin market scan", "coins markets", "List market data for coins with currency and filtering controls.", "Trending search", "search trending", "Find trending crypto assets from CoinGecko for discovery workflows.", "Global market snapshot", "global", "Summarize global crypto market state through a dedicated promoted command." ], "path": "library/payments/coingecko", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "coingecko-pp-mcp", "transports": [ "stdio" ], "tool_count": 11, "public_tool_count": 11, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "company-goat", "category": "developer-tools", "api": "Company GOAT", "description": "Look up startups across SEC Form D, GitHub, Hacker News, Companies House, YC, Wikidata, and DNS in one command. Built for scouts, founders, BD, and AI agents researching small/midsize startups.", "search_terms": [ "company-goat", "company-goat-pp-cli", "One call across seven authoritative sources to research a startup's funding history (SEC Form D), engineering velocity (GitHub), HN mentions, legal entity (US/UK), and domain age. Compares competitors side-by-side and flags inconsistencies between public claims and filings.", "Snapshot fanout across 7 sources", "snapshot", "Look up a company across SEC Form D, GitHub, Hacker News, Companies House, YC, Wikidata, and DNS in one command — rendered as a unified terminal summary in seconds.", "SEC Form D fundraising lookup", "funding", "See structured SEC Form D filings for a US private company — offering amount, filing date, exemption claimed (Reg D 506(b) vs 506(c)), related entities, and state of incorporation.", "Cross-source signal consistency check", "signal", "Surface suspicious cross-source patterns. Example: 'Form D says raised $5M in 2024 but GitHub org has 0 commits since 2022' or 'YC entry says Active but website domain expired'.", "Funding cadence over time", "funding-trend", "Time series of Form D filings for a company across years — shows fundraising cadence and gaps. Useful for spotting 'they haven't raised since 2022' silently.", "FTS search across synced companies", "search", "Search the YC directory by free text + --batch and --industry filters. Free-text matches against name, one-liner description, industry, and location.", "Side-by-side comparison", "compare", "Two snapshots aligned column-by-column for direct comparison. Free in this CLI; paid feature elsewhere.", "Form D related-person graph", "funding --who", "Show every Form D filing that names a given person (officer, large holder). Reveals serial founders, repeat advisors, prolific investors." ], "path": "library/developer-tools/company-goat", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "company-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "conduyt-crm", "category": "sales-and-crm", "api": "Conduyt CRM", "description": "Manage Conduyt CRM contacts, deals, pipelines, automations, campaigns, invoices, and local insight reports from the terminal.", "search_terms": [ "conduyt-crm", "Conduyt CRM", "conduyt-crm-pp-cli", "Manage Conduyt CRM contacts, deals, pipelines, automations, campaigns, invoices, and local insight reports from the terminal.", "Contact Trends", "contact-trends", "Analyze contact creation patterns by date and source using local SQLite store", "Deal Velocity", "deal-velocity", "Analyze average deal cycle time, win rate, and per-stage duration metrics", "Pipeline Health", "pipeline-health", "Pipeline health check with stale deal detection, stage distribution, and bottleneck scoring", "Email Stats", "email-stats", "Email performance analytics — open rates, click rates, reply rates, and per-template breakdown" ], "path": "library/sales-and-crm/conduyt-crm", "printer": "ptaramona", "printer_name": "Conduyt", "creator": { "handle": "ptaramona", "name": "Conduyt" }, "mcp": { "binary": "conduyt-crm-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 0, "public_tool_count": 0, "auth_type": "bearer", "env_vars": [ "CONDUYT_CRM_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "contact-goat", "category": "sales-and-crm", "api": "Contact GOAT", "description": "Search, enrich, and map warm-introduction paths across LinkedIn, Happenstance, Deepline, and a unified local contacts store.", "search_terms": [ "contact-goat", "Contact GOAT", "contact-goat-pp-cli", "Search, enrich, and map warm-introduction paths across LinkedIn, Happenstance, Deepline, and a unified local contacts store." ], "path": "library/sales-and-crm/contact-goat", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "contact-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 16, "public_tool_count": 0, "auth_type": "composed", "env_vars": [ "DEEPLINE_API_KEY", "HAPPENSTANCE_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "craigslist", "category": "commerce", "api": "Craigslist", "description": "Search, sync, and watch Craigslist with a local SQLite snapshot history, cross-city aggregation, scam scoring, and price-drift detection.", "search_terms": [ "craigslist", "craigslist-pp-cli", "Search, sync, and watch Craigslist with a local SQLite snapshot history, cross-city aggregation, scam scoring, and price-drift detection.", "Smart watch with diff types", "watch run", "Periodic poll for a saved search that emits NEW, PRICE-DROP, and SEED events instead of any-listing-I-haven't-seen — so true new listings stand out from edits and reposts. Cross-city repost detection lives in the separate `reposts` command; cross-city dup detection lives in `dupe-cluster`.", "Streaming watch tail", "watch tail", "Long-running tail that prints one JSON event per new diff result so an agent or shell pipeline can react in real time. Emits NEW and PRICE-DROP events.", "Price drift history", "drift", "Show the price timeline for a single listing across every snapshot we've captured.", "Cross-city duplicate clusters", "dupe-cluster", "Find listings whose body fingerprint and image hash match across cities. Surfaces cross-city scams and aggregator reposts.", "Scam score", "scam-score", "Rule-based 0-100 score for a listing using brand-new-account, below-median-price, wire-transfer keywords, and cross-city duplicate signals.", "Median price across the local market", "median", "p25/p50/p75 of prices for a query, optionally over a time window or split by city.", "Negative-keyword smart search", "search --negate", "Search with NOT-keyword filtering that Craigslist's own search doesn't support natively.", "One-shot what's new since", "since", "Ad-hoc \"what's new in this category in this city since X duration ago\" without setting up a saved search.", "Reposts radar", "reposts", "Find listings that have been reposted N or more times in the last X days, by body fingerprint clustering.", "City-by-city heat map", "cities heat", "Across cities, count fresh listings per category over a window. Surfaces which markets are hot for what." ], "path": "library/commerce/craigslist", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "craigslist-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "customer-io", "category": "marketing", "api": "Customer.io", "description": "Manage Customer.io campaigns, broadcasts, segments, deliveries, exports, and Reverse-ETL via the Service Account token.", "search_terms": [ "customer-io", "Customer.io", "customer-io-pp-cli", "Manage Customer.io campaigns, broadcasts, segments, deliveries, exports, and Reverse-ETL via the Service Account token.", "Journey funnel × segment", "campaigns funnel", "Render a step-by-step journey funnel (sent → delivered → opened → clicked → converted) for one campaign, optionally cross-cut by segment.", "Segment overlap", "segments overlap", "Compute pairwise and multi-way Venn diagrams of segment memberships from the local store.", "Customer 360 timeline", "customers timeline", "Chronological per-customer event stream merging identifies, deliveries, suppressions, and segment-membership events from the local store.", "Broadcast pre-flight", "broadcasts preflight", "Before triggering a broadcast, check target segment size, suppression overlap, and last-sent recency from the local deliveries cache; emit a green/yellow/red verdict with structured reasons.", "Suppression audit", "suppressions audit", "Attribute every suppression in a window to the triggering bounce or complaint delivery (or 'manual' if no preceding event).", "Reverse-ETL health", "cdp-reverse-etl health", "Named verb over Reverse-ETL run history with status, row counts, error reasons, and an optional --watch poll mode.", "Bulk suppress with audit log", "suppressions bulk add", "Read a CSV or JSONL of email/customer-id, fan out real suppress calls with adaptive throttle, append every call to a local JSONL audit log keyed by date.", "Delivery triage bundle", "deliveries triage", "Filter live + local deliveries by template + status + window, write a self-contained bundle (summary.md with SQL group-by error reasons, deliveries.jsonl, recipients.txt) ready to paste into an incident doc." ], "path": "library/marketing/customer-io", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "customer-io-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 34, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "CUSTOMERIO_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "defillama", "category": "other", "api": "Defillama", "description": "DefiLlama offers two ways to use our data with AI:", "search_terms": [ "defillama", "defillama-pp-cli", "DefiLlama offers two ways to use our data with AI:", "Compound workflows", "defillama-pp-cli workflow", "Run multi-step DefiLlama workflows that combine API operations for agent-friendly analysis.", "Offline analytics", "defillama-pp-cli analytics", "Query locally synced DefiLlama data for repeatable analysis without re-fetching every endpoint.", "Live/local search", "defillama-pp-cli search", "Search across synced DefiLlama data or live API resources from one command." ], "path": "library/other/defillama", "printer": "kierandotai", "printer_name": "kierandotai", "creator": { "handle": "kierandotai", "name": "kierandotai" }, "mcp": { "binary": "defillama-pp-mcp", "transports": [ "stdio" ], "tool_count": 114, "public_tool_count": 114, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "delta-trip", "category": "travel", "api": "Delta Trip Management", "description": "Look up and manage Delta Air Lines trips by confirmation number — view all flights, seats, baggage, upgrade...", "search_terms": [ "delta-trip", "Delta Trip Management", "delta-trip-pp-cli", "Connection Risk Scoring", "trip layover", "Score every layover in a trip as OK, TIGHT, or HIGH with a per-connection recommended action — in one command, without parsing the full flights table." ], "path": "library/travel/delta-trip", "printer": "paulbockewitz", "printer_name": "Paul Bockewitz", "creator": { "handle": "paulbockewitz", "name": "Paul Bockewitz" }, "mcp": { "binary": "delta-trip-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 4, "public_tool_count": 4, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "dice-fm", "category": "media-and-entertainment", "api": "DICE", "description": "Every ticket, fan, and pound of revenue from your DICE events — queryable, exportable, and joinable across shows.", "search_terms": [ "dice-fm", "DICE", "dice-fm-pp-cli", "Every ticket, fan, and pound of revenue from your DICE events — queryable, exportable, and joinable across shows.", "Door List with Transfer Resolution", "door list", "Generate a valid-ticket-holder list for any event, with transferred tickets showing the new holder's name — ready for door access management.", "Revenue Summary", "Aggregate gross revenue, Dice fees, and net earnings per event or across a date range — ready for CFO reports.", "Ticket Velocity", "velocity show", "Show cumulative ticket sales by day or hour relative to the on-sale date — see whether an event is tracking fast or slow.", "Cross-Event Repeat Buyer Report", "fans repeat", "Find fans who bought tickets to two or more of your events — your most loyal audience, ready for VIP outreach.", "Opt-In Fan List with Geography Filter", "fans optin", "Export opted-in fan contacts filtered by city or country — CSV ready for Mailchimp, no dashboard exports needed.", "Return Rate Anomaly Report", "returns anomalies", "Flag events with unusually high refund rates — a pricing or marketing signal that deserves immediate attention.", "Top Spenders", "fans top", "Rank ticket buyers by total spend for an event or across all events — your VIP list for comps, upgrades, and sponsor decks.", "Cross-Event Capacity Headroom", "capacity", "Roll up sold-vs-capacity headroom across every event from the local store — see which shows have room and which are nearly sold out.", "Per-Pool Allocation Breakdown", "capacity pools", "Break down each event's ticket-pool allocations (pool-sum vs event total) from the local store — spot mis-allocated or over-subscribed pools.", "Price-Tier Performance", "tier-performance", "Rank price tiers by redemptions and each tier's share of total sales from the local store — see which tiers actually move.", "Entity Normalization", "normalize", "Canonicalize free-text ticket-type and venue names into structured axes in a parallel, re-runnable local store — raw data untouched, mappings stay on your machine.", "Normalized Entity Stats", "normalize stats", "Show normalized entity counts per axis from the local attribute tables — verify coverage before grouping reports by axis.", "Normalization Recommender", "normalize recommend", "Profile the local store and emit a starter normalization config — a ready-to-edit recommendation of which entities and shapes to wire." ], "path": "library/media-and-entertainment/dice-fm", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "dice-fm-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 8, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "DICE_FM_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "digg", "category": "media-and-entertainment", "api": "Digg AI", "description": "Tail Digg's news cycle, GitHub feeds, and pipeline events from the terminal — read-only, with rank-history nobody else surfaces.", "search_terms": [ "digg", "digg-pp-cli", "Read-only CLI for Digg — the AI story leaderboard, GitHub feeds, and ingestion pipeline events on digg.com.", "Live pipeline event tail", "events", "Tail Digg's ingestion pipeline in real time — see clusters as they're detected, stories fast-climbing the leaderboard with explicit rank deltas, X posts being processed, batch breakdowns.", "Replacement archaeology", "replaced", "Show stories that were knocked out of the rankings since the last sync, with Digg's own published replacement rationale.", "Score component breakdown", "evidence", "Print the full ranking transparency record for one cluster — scoreComponents, evidence array, numeratorLabel, percentAboveAverage.", "Time-windowed sentiment", "sentiment", "Read per-time-window positivity ratios (pos6h, pos12h, pos24h, posLast) for a cluster.", "Cross-aggregator references", "crossref", "Show this cluster's Hacker News and Techmeme mirrors when Digg has detected the story is being discussed there.", "Influence-ranked author leaderboard", "authors top", "Top accounts Digg tracks, ranked by Digg's influence score, story count, or reach.", "GitHub: top starred AI repos", "github stars", "Top AI repos ranked by starring activity from Digg-tracked accounts: stargazers, recent starrers, breakout/novel/ai_related scores, language, one-sentence classification.", "GitHub: newly first-seen repos", "github new", "Recently first-seen GitHub repos with the Digg-tracked creator/starrer who first put them on Digg's radar (event_id, event_created_at, repo_full_name, creator).", "GitHub: contributor leaderboard", "github activity", "Top GitHub contributor leaderboard: per-author rank, contribution count, and distinct repos count over Digg's tracking window.", "GitHub: live activity feed", "github recent", "Live GitHub activity feed: per-event entries with the GitHub URL (issue/PR/commit/repo), the user who acted, and a short description of the target.", "Rank history per cluster", "history", "Full trajectory of one cluster's currentRank, peakRank, and delta over local snapshot history.", "Author surfacing record", "author", "Every cluster a given X account contributed to, with post type (original, retweet, quote, reply).", "Rank-movement watcher", "watch", "Poll /ai, diff against last snapshot, alert when any cluster moves N+ ranks.", "Pipeline status dashboard", "pipeline status", "One-screen view of /api/trending/status: isFetching, nextFetchAt, storiesToday, clustersToday, last 5 events." ], "path": "library/media-and-entertainment/digg", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "digg-pp-mcp", "transports": [ "stdio" ], "tool_count": 3, "public_tool_count": 3, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "digitalocean", "category": "cloud", "api": "DigitalOcean", "description": "Manage DigitalOcean Droplets, Kubernetes, databases, firewalls, networking, billing, and other cloud resources from the terminal.", "search_terms": [ "digitalocean", "digitalocean-pp-cli", "Manage DigitalOcean Droplets, Kubernetes, databases, firewalls, networking, billing, and other cloud resources from the terminal.", "Local resource archive", "workflow archive", "Sync DigitalOcean resources into a local SQLite store for offline inspection and repeatable agent workflows.", "Full-text cloud search", "search", "Search synced DigitalOcean data locally, with live/local source selection for agent-friendly retrieval.", "Archive analytics", "analytics", "Summarize locally synced resource data with count and group-by operations.", "Polling tail", "tail", "Poll selected resources and emit change events as NDJSON for shell and agent pipelines." ], "path": "library/cloud/digitalocean", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "digitalocean-pp-mcp", "transports": [ "stdio" ], "tool_count": 628, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "DIGITALOCEAN_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "docker-hub", "category": "developer-tools", "api": "Docker Hub", "description": "Docker Hub public API. Search container images, browse tags, check sizes, inspect Dockerfiles, and explore the world's largest container registry. No authentication required for public repositories (rate limited to ~18 req/min).", "search_terms": [ "docker-hub", "Docker Hub", "docker-hub-pp-cli", "Repository discovery", "docker-hub-search", "Search Docker Hub repositories with agent-ready JSON, compact output, and live/local source controls.", "Repository details", "repositories", "Inspect repository metadata and tags from one CLI surface for image selection and automation.", "Offline archive workflow", "workflow archive", "Sync Docker Hub resources into the local store so agents can search and analyze without repeated live calls." ], "path": "library/developer-tools/docker-hub", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "docker-hub-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "domain-goat", "category": "developer-tools", "api": "Domain Goat", "description": "Identify domains worth buying — across RDAP, WHOIS, and Porkbun pricing — without ever leaving the terminal.", "search_terms": [ "domain-goat", "Domain Goat", "domain-goat-pp-cli", "Identify domains worth buying — across RDAP, WHOIS, and Porkbun pricing — without ever leaving the terminal.", "Top-N finalist promotion", "shortlist promote", "Promote the top-N candidates from a list into a finalist sub-list ranked by combined score, price, and availability.", "5-year true-cost budget filter", "budget", "Filter candidates whose 5-year total cost (registration + 4 renewals) is under your ceiling, sorted ascending.", "Side-by-side compare", "compare", "One row per domain with score, length, TLD prestige, cross-registrar price, RDAP status, and drop flag.", "Drop timeline by score", "drops timeline", "Time-axis view of every watched domain hitting pendingDelete/redemptionPeriod, filtered by brandability score and TLD.", "Why-killed audit", "why-killed", "Show why a domain is no longer on the active shortlist: status, score, notes, tag history, last price.", "Pricing arbitrage radar", "pricing-arbitrage", "Rank TLDs by renewal-delta (year-1 trap risk) or by prestige-to-price ratio.", "Drop re-release window", "drop-bid-window", "Compute the exact UTC re-release window for a domain in pendingDelete (RDAP event + 5-day grace).", "Seed-to-TLD affinity", "tld-affinity", "Given a seed keyword, rank TLDs by suffix-semantics fit, historical availability rate in local history, and price tier." ], "path": "library/developer-tools/domain-goat", "printer": "mitch-nick", "printer_name": "Mitch Nick", "creator": { "handle": "mitch-nick", "name": "Mitch Nick" }, "mcp": { "binary": "domain-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "dominos", "category": "food-and-dining", "api": "Domino's", "description": "Order pizza, browse menus, optimize deals, and track delivery from your terminal — with a local SQLite store that powers reorder, price comparison, and deal stacking no other Domino's tool offers.", "search_terms": [ "dominos", "Domino's", "dominos-pp-cli", "Order pizza, browse menus, optimize deals, and track delivery from your terminal — with a local SQLite store that powers reorder, price comparison, and deal stacking no other Domino's tool offers.", "Named order templates", "template save", "Save your usual order — store, address, items, toppings, payment ref — and replay it with one command.", "Requires SQLite-persisted templates that survive across sessions; no existing wrapper persists named orders.", "Smart reorder with substitution", "reorder", "Replay your last order against today's menu; FTS-substitute items the menu rotated out so the order still goes through.", "Joins synced order history with the current menu's FTS5 index — neither piece exists in any wrapper alone.", "Deal optimizer", "deals best", "Cross-reference your cart against every available deal (incl. loyalty-exclusive) and report the lowest-priced combination.", "Domino's CheckDraftDeal is per-deal; combining N deals against one cart requires local fan-out and ranking.", "Cross-store price comparison", "compare-prices", "Same cart priced at every nearby store; rank by total including delivery fee.", "Multi-store fan-out depends on the local menu cache; community wrappers query one store at a time.", "Multi-store wait-time scoreboard", "stores wait", "Pull CartEtaMinutes for every store in radius and rank by ETA — the unique GraphQL BFF op every other wrapper ignores.", "CartEtaMinutes is reverse-engineered and absent from every existing wrapper; combining it across stores is novel.", "Live delivery tracker with polling", "track", "Stream Domino's tracker stages — placed → prep → bake → quality check → out → delivered — until the order arrives.", "node-dominos has single-shot tracker only; status-transition streaming requires interval polling and state diffing.", "One-shot agent order", "order-quick", "Replay a template, validate, price, place (with --confirm), and tail the tracker — all in one command emitting a final JSON envelope.", "Composes existing primitives into the single agent-shaped affordance Ace persona explicitly asked for.", "Cart-shaped deal eligibility", "deals eligible", "List which advertised deals actually apply to your current cart and explain why each non-matching one fails.", "DealsList exposes per-deal predicates the UI hides; locally evaluating them against the cart is unique to the local data layer.", "Spending analytics", "analytics", "Aggregate your synced order history into spending totals, item frequency, favorite stores, and average order value.", "Order history is auth-gated and ephemeral on the website; persisting it locally is the only way to compute multi-period rollups." ], "path": "library/food-and-dining/dominos", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "dominos-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 20, "public_tool_count": 11, "auth_type": "bearer_token", "env_vars": [ "DOMINOS_USERNAME", "DOMINOS_PASSWORD", "DOMINOS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "doordash", "category": "commerce", "api": "DoorDash", "description": "Discovered API spec for doordash", "search_terms": [ "doordash", "doordash-pp-cli", "Safe store search", "search", "Search DoorDash stores through the consumer GraphQL autocomplete feed without mutating cart or order state.", "Menu and option inspection", "menu", "Fetch DoorDash store menus in a normalized shape without changing the cart.", "Item customization discovery", "item-options", "Inspect item option groups and nested add-ons before adding anything to a cart.", "Redacted account reads", "recent-orders", "Read recent DoorDash order summaries without placing a new order.", "Guarded cart commands", "cart", "Expose cart inspection and mutations as a separately named, guarded command family rather than mixing them into search/menu reads." ], "path": "library/commerce/doordash", "printer": "bricenice17", "printer_name": "bricenice17", "creator": { "handle": "bricenice17", "name": "bricenice17" }, "mcp": { "binary": "doordash-pp-mcp", "transports": [ "stdio" ], "tool_count": 19, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "dreo", "category": "devices", "api": "Dreo", "description": "The only standalone CLI for Dreo smart-home devices — bulk control, live sensor streams, and a local history every...", "search_terms": [ "dreo", "dreo-pp-cli", "Control Dreo smart fans, heaters, air purifiers, humidifiers, and ACs from the command line.", "Bulk fan-out control", "bulk", "Power, mode, or speed across every device matching a type/room filter in one command.", "Whole-house sensor snapshot", "sensors", "Aggregated temperature, humidity, and PM2.5 across every sensor-bearing device in one ranked table.", "Live WebSocket state stream", "watch", "Tail-f for Dreo device state — every WebSocket update as a JSON line on stdout.", "Sensor timeseries history", "sensors record", "Persist WebSocket state events to a local sensor_readings table and query temperature/humidity/PM2.5 over arbitrary time windows.", "Threshold and offline alerts", "alerts", "Report devices with low filter life, empty water tank, offline heartbeat, or sensor readings past a threshold.", "Scene save and apply", "scene save", "Capture the current state across selected devices as a named scene and replay it later as parallel WebSocket frames.", "Per-room rollup", "rooms", "Group devices by room with on-count, average temperature, and average humidity per room.", "Local device search", "devices search", "Full-text search over cached device name, room, model, and serial." ], "path": "library/devices/dreo", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "dreo-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 5, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "DREO_USERNAME", "DREO_PASSWORD" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "drudgereport", "category": "media-and-entertainment", "api": "Drudge Report", "description": "Drudge Report in your terminal, with the editorial signal (splash, red, slot, tenure) the live page broadcasts but...", "search_terms": [ "drudgereport", "Drudge Report", "drudgereport-pp-cli", "Drudge Report in your terminal, with the editorial signal (splash, red, slot, tenure) the live page broadcasts but no other scraper preserves.", "Splash now", "splash", "Just the current center-slot splash headline with image, outbound URL, red flag, and how long it has been on splash.", "Breaking (red items)", "breaking", "Every headline currently set in red by Drudge's editor, ordered by slot importance.", "Ranked headlines", "headlines", "All current headlines ranked by composite editorial weight (slot + red + image), not by chronology.", "Promotions and demotions since last fetch", "tail", "Slot transitions and color changes between consecutive snapshots: promoted to splash, demoted from splash, went red, disappeared, appeared.", "Splash tenure", "tenure", "How long the current splash has been the splash, plus the all-time longest-tenured splash leaderboard.", "Source leaderboard with deltas", "sources", "Outbound-domain frequency leaderboard over a window with rising/falling delta vs the prior window, optionally crosstabbed by slot.", "On-this-date", "on-date", "Reconstruct Drudge at any past timestamp the CLI has observed: splash, red items, ranked headlines as of that moment.", "Editorial-bent index", "bent", "Ratio of red items by outbound domain over a window: which outlets Drudge tends to break vs which he tends to merely column.", "Story timeline", "story", "Every slot_event for one story_id ordered by timestamp: when it appeared, where it moved, when it went red, when it dropped, total tenure.", "Weekly digest", "digest", "One-pager: splash count, longest-tenured splash, top 5 outbound domains, biggest red-surge stories over the week." ], "path": "library/media-and-entertainment/drudgereport", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "drudgereport-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "dub", "category": "marketing", "api": "Dub", "description": "Modern link attribution platform — short links, conversion tracking, affiliate/partner programs.", "search_terms": [ "dub", "dub-pp-cli", "Dead-link detection", "links stale", "Find archived, expired, or zero-traffic links across the workspace before they pile up.", "Performance drift detection", "links drift", "Detect links whose click rate dropped more than threshold percent week-over-week.", "Duplicate destination finder", "links duplicates", "Find every link in the workspace pointing to the same destination URL.", "Slug-collision lint", "links lint", "Audit short-key slugs for lookalike collisions, reserved-word violations, and brand-conflict hazards.", "Bulk URL/UTM rewrite with diff", "links rewrite", "Show every link that would change and the exact patch BEFORE sending.", "Tag/folder-grouped rollup", "links rollup", "Performance dashboard aggregated by tag or folder — clicks, leads, sales rolled up across every link wearing each label.", "Conversion funnel", "funnel", "Click-to-lead-to-sale conversion rates per link or campaign.", "Customer journey timeline", "customers journey", "See every link a customer clicked, when they became a lead, and when they purchased — in one timeline.", "Partner leaderboard", "partners leaderboard", "Rank partners by commission earned, conversion rate, and clicks generated.", "Commission audit reconciliation", "partners audit-commissions", "Reconcile partners, commissions, bounties, and payouts to flag stale rates, missing payouts, and expired bounties still earning.", "Workspace health doctor", "health", "Cross-resource Monday-morning report: rate-limit headroom, expired-but-active links, dead destination URLs, unverified domains, dormant tags, bounty submissions awaiting review.", "Time-windowed change feed", "since", "What happened in the last N hours? Created, updated, deleted links plus partner approvals, new bounty submissions, and top-clicked entities.", "Bounty submission triage queue", "bounties triage", "Group partner-submitted bounty proof by status, age, and bounty type. Surfaces backlog awaiting review.", "Bounty payout projection", "bounties payout-projection", "Project upcoming payouts from approved-but-unpaid submissions multiplied by current commission rates." ], "path": "library/marketing/dub", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "dub-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 53, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "DUB_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "ebay", "category": "commerce", "api": "eBay", "description": "Buyer-power-user CLI for eBay. Sold-comp intelligence, true sniper bidding, watchlist intelligence, saved-search feeds, and a local SQLite store for cross-listing analytics.", "search_terms": [ "ebay", "ebay-pp-cli", "Sold-comp intelligence", "comp", "Average sale price for any item over the last 90 days with smart matching, condition normalization, outlier trim, and percentile distribution.", "True sniper bidding", "snipe", "Hold a max bid client-side, fire through the user's authenticated session at lead-seconds before close. Other bidders never see the max until it's too late to react.", "Has-bids + ending-window auction discovery", "auctions", "Search active auctions filtered by bid count and ending window (e.g. \"Steph Curry cards with at least 3 bids ending in next hour\").", "Outlier-trimmed comp distribution", "1.5x IQR outlier trim on sold-comp results. Surfaces the realistic price band buyers should anchor on, with stddev and quartiles.", "Variant deduplication", "comp --dedupe-variants", "Collapse near-duplicate sold listings to one exemplar per fingerprint (token-bag, order-insensitive)." ], "path": "library/commerce/ebay", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "ebay-pp-mcp", "transports": [ "stdio" ], "tool_count": 8, "public_tool_count": 1, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "edgar", "category": "other", "api": "EDGAR", "description": "Fetch SEC EDGAR filings, insider activity, XBRL facts, and cached filing search results with agent-friendly output.", "search_terms": [ "edgar", "edgar-pp-cli", "Fetch SEC EDGAR filings, insider activity, XBRL facts, and cached filing search results with agent-friendly output.", "Recheck delta cursor", "since", "Return only the filings filed since a given timestamp, using a per-CIK local cursor — the entire LODESTAR /$recheck loop in one call.", "Requires a local SQLite filings table with last_seen_accession; no SEC endpoint returns 'what's new since DATE.'", "8-K material-item enumeration", "eightk-items", "Enumerate 8-Ks with parsed Item numbers and a --material-only flag that excludes exhibits-only (Item 9.01 alone) refilings.", "Requires 8-K body parse for Item-number taxonomy; the SEC endpoint returns body HTML, not the structured Item list with material classification.", "Insider follow-through join", "insider-followthrough", "For every senior-officer code-S sale of ≥$1M, scan the next 90 days of 8-Ks for material items and emit (sale, subsequent material 8-K, days-between) pairs.", "Requires a local join of insider_transactions × filings by date proximity; no SEC endpoint returns this correlation.", "Cross-sectional XBRL pivot", "xbrl-pivot", "Multi-ticker XBRL pivot that resolves concept aliases (Revenues ↔ RevenueFromContractWithCustomerExcludingAssessedTax ↔ SalesRevenueNet) into a flat ticker×quarter×concept table.", "companyfacts is single-ticker and exposes raw concept names; same economic quantity reports under 3-4 different US-GAAP tags depending on filer's accountant.", "Item-scoped section extraction", "sections", "Extract requested Items from a 10-K or 10-Q with byte-offset boundaries; emits ONLY the requested items in compact JSON instead of the full 100KB-10MB HTML body.", "SEC returns the full undifferentiated HTML body; agent consumers need item-scoped output to stay within context budget. Anchored on the Item NA regex with byte offsets.", "Ownership-cross enumeration", "ownership-crosses", "Enumerate 13D and 13G filings against an issuer (when someone else crosses 5% of the ticker), with filer name, percent owned, and filed-at.", "Service-specific 5%-cross taxonomy; submissions index filter to 13D/G/-A plus cover-page percent parse, which no community wrapper exposes structured.", "Governance red flags", "governance-flags", "Compose three independent service-specific signals into one call: 8-K Item 4.01 auditor changes, Item 4.02 non-reliance restatements, and NT-10-K late-filing notices (Form 12b-25).", "No wrapper bundles these three signals; they map directly onto LODESTAR Gate 2 immediate disqualifiers and need to be a one-call check during research and recheck.", "Offline FTS over cached bodies", "fts", "Full-text search over locally-cached filing bodies via FTS5 — ticker- and form-scoped — with snippet windows and byte offsets for precise re-read.", "Distinct from `search` (which hits efts.sec.gov): never re-hits the SEC endpoint for cached bodies; token-cheap for repeated queries during a single research session." ], "path": "library/other/edgar", "printer": "magoo242", "printer_name": "magoo242", "creator": { "handle": "magoo242", "name": "magoo242" } }, { "name": "elevenlabs", "category": "ai", "api": "ElevenLabs", "description": "This is the documentation for the ElevenLabs API. You can use this API to use our service programmatically, this is...", "search_terms": [ "elevenlabs", "elevenlabs-pp-cli", "Generate, transform, transcribe, dub, and manage AI audio, voices, music, and conversational agents with ElevenLabs.", "Voice Discovery", "voice discover", "Search owned and shared ElevenLabs voices through one compact, JSON-first command.", "TTS Resolution", "tts resolve", "Resolve a voice, model, output format, default settings, and subscription context before rendering.", "TTS Render Manifest", "tts render", "Render text to an audio file and print a structured manifest with file path, byte count, model, and voice.", "Dialogue Cast", "Render speaker-labelled dialogue lines by resolving speaker-to-voice assignments and saving audio." ], "path": "library/ai/elevenlabs", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "elevenlabs-pp-mcp", "transports": [ "stdio" ], "tool_count": 302, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "ELEVENLABS_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "elezioni-sicilia", "category": "other", "api": "Elezioni Sicilia", "description": "Dati elettorali siciliani da riga di comando — senza copiare tabelle HTML.", "search_terms": [ "elezioni-sicilia", "Elezioni Sicilia", "elezioni-sicilia-pp-cli", "Dati elettorali comunali siciliani da riga di comando — affluenza, candidati, liste, risultati in JSON o tabella.", "Confronto storico", "storico", "Confronta affluenza, voti e candidati di uno stesso comune in tutti gli anni disponibili (2009-2026).", "Riepilogo regionale", "riepilogo", "Mostra affluenza e stato scrutini per tutte le 9 province siciliane in un unico output strutturato.", "Monitoraggio scrutini", "watch", "Polling periodico dello stato scrutini per tutti i comuni, con alert su avanzamento." ], "path": "library/other/elezioni-sicilia", "printer": "aborruso", "printer_name": "aborruso", "mcp": { "binary": "elezioni-sicilia-pp-mcp", "transports": [ "stdio" ], "tool_count": 6, "public_tool_count": 6, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "emailoctopus", "category": "marketing", "api": "EmailOctopus", "description": "Manage EmailOctopus lists, contacts, campaigns, automations, reports, and cross-list cleanup workflows from the terminal.", "search_terms": [ "emailoctopus", "emailoctopus-pp-cli", "Manage EmailOctopus lists, contacts, campaigns, automations, reports, and cross-list cleanup workflows from the terminal.", "Per-contact engagement scorecard", "contacts engagement", "Score every contact by opens, clicks, and inactive-since across all campaigns. The API has no engagement-history endpoint; we synthesize it locally.", "Cross-list duplicate finder", "contacts dedupe", "Find contacts that appear on multiple lists in the account, optionally consolidating them onto one canonical list.", "Campaign performance digest", "campaigns digest", "One-shot campaign report combining summary, top-N links, contact-level breakdown, and per-domain opens — rendered for terminal or Markdown paste.", "List churn diff", "lists diff", "Show contacts touched in this list since a relative time. Surfaces the change-set the API can't return — useful for incremental syncs, audit logs, or alerting on recent activity.", "Tag set-algebra query", "tags intersect", "Find contacts matching boolean combinations of tags: --has trial-started --not activated returns the trial cohort that hasn't converted.", "CSV upsert with mapping", "contacts sync-csv", "Push a CSV into EmailOctopus with mapped fields and tags. Dry-runs the diff against the local store first, then chunks into batch-upsert calls paced under the rate limit.", "Rate-budgeted bulk delete", "contacts bulk-delete", "Delete many contacts matching a local predicate, paced under the 10/sec API limit with a resumable progress file.", "Bulk automation trigger", "automations trigger-batch", "Queue an automation for many contacts from stdin or CSV, paced under the rate limit with retry on 429." ], "path": "library/marketing/emailoctopus", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "emailoctopus-pp-mcp", "transports": [ "stdio" ], "tool_count": 25, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "EMAILOCTOPUS_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "erank", "category": "marketing", "api": "eRank", "description": "Keyword Tool data from eRank, plus local scoring, drift, and listing-gap analysis for Etsy sellers.", "search_terms": [ "erank", "erank-pp-cli", "Keyword Tool data from eRank, plus local scoring, drift, and listing-gap analysis for Etsy sellers.", "Niche Opportunity Score", "opportunity", "Score a keyword as a seller opportunity using eRank stats, difficulty, competition, and current top listings.", "Top Listing Gap Analyzer", "listing gaps", "Compare a draft listing title and tags against phrases and tags appearing in top eRank results.", "Tag Consensus Map", "tags consensus", "Find tags that repeatedly appear across top listings, Etsy tag data, related searches, and near matches.", "Keyword Drift Watcher", "watch drift", "Detect meaningful changes in keyword competition, difficulty, and top listings across saved snapshots.", "Keyword Portfolio Optimizer", "lists optimize", "Rank saved keyword lists by weak, saturated, overlapping, and missing keyword opportunities.", "Saturation Warning", "saturation", "Flag crowded keywords by combining competition, difficulty, tag reuse, and top-listing density.", "POD Angle Finder", "angles", "Extract product angles from related searches, near matches, tags, and current top listings." ], "path": "library/marketing/erank", "printer": "horknfbr", "printer_name": "horknfbr", "creator": { "handle": "horknfbr", "name": "horknfbr" }, "mcp": { "binary": "erank-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 25, "public_tool_count": 0, "auth_type": "composed", "env_vars": [ "ERANK_XSRF_TOKEN" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "espn", "category": "media-and-entertainment", "api": "ESPN", "description": "Live scores, standings, news, and game history across 17 sports from ESPN", "search_terms": [ "espn", "espn-pp-cli" ], "path": "library/media-and-entertainment/espn", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "espn-pp-mcp", "transports": [ "stdio" ], "tool_count": 7, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "etherpad", "category": "productivity", "api": "Etherpad", "description": "Etherpad is a real-time collaborative editor scalable to thousands of simultaneous real time users. It provides full...", "search_terms": [ "etherpad", "etherpad-pp-cli", "Live Change Tail", "tail", "Stream changes by polling.", "Bulk JSONL Import", "import", "Bulk import from JSONL.", "Agent Context Bootstrap", "agent-context", "Emit JSON brief for LLM agents." ], "path": "library/productivity/etherpad", "printer": "JohnMcLear", "printer_name": "John McLear", "creator": { "handle": "JohnMcLear", "name": "John McLear" }, "mcp": { "binary": "etherpad-pp-mcp", "transports": [ "stdio" ], "tool_count": 50, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "ETHERPAD_OPENID" ], "mcp_ready": "full" } }, { "name": "eu-tenders", "category": "sales-and-crm", "api": "EU Tenders", "description": "The entire EU public procurement corpus — €815B/year — searchable offline, with B2B lead generation for...", "search_terms": [ "eu-tenders", "EU Tenders", "eu-tenders-pp-cli", "Construction Leads", "leads", "Surface recent construction contract award winners as B2B outreach candidates — company name, project location, contract value, and construction type — so you can contact winners who need construction machinery.", "Win Rate Analysis", "win-rate", "See what fraction of contract competitions in a market go to new winners vs. incumbents — your real odds before writing a proposal.", "Opportunity Scorer", "score", "Get a ranked shortlist of open tenders scored by deadline urgency, contract value, keyword fit, and market openness — your morning briefing, prioritized.", "Market Concentration", "concentration", "Compute which companies capture what share of awarded contract value in a sector and country, with HHI score and year-over-year trend.", "Procurement Velocity", "velocity", "See whether a procurement market is heating up, cooling off, or spiking — weekly notice count trends over rolling windows vs. same period last year.", "Dark Buyers Detector", "dark-buyers", "Surface contracting authorities whose calls-for-tender rarely produce public awards, or whose awards show suspiciously low winner diversity — a compliance and integrity signal.", "CPV Drift", "cpv-drift", "See which procurement categories are growing or shrinking in a country's spending mix year-over-year — essential for platform builders and policy researchers.", "Buyer Profile", "buyer", "Build a full procurement dossier on any contracting authority: their spending cadence, CPV mix, typical contract values, and repeat winner patterns.", "Deadline Heat", "deadline-heat", "A ranked calendar of expiring tenders weighted by urgency × value / competition density — your daily prioritized view of what needs attention now." ], "path": "library/sales-and-crm/eu-tenders", "printer": "m91michel", "printer_name": "Mathias Michel", "creator": { "handle": "m91michel", "name": "Mathias Michel" }, "mcp": { "binary": "eu-tenders-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "eventbrite", "category": "media-and-entertainment", "api": "Eventbrite", "description": "Every Eventbrite organizer endpoint, plus a local SQLite mirror of your events, orders", "search_terms": [ "eventbrite", "eventbrite-pp-cli", "Every Eventbrite organizer endpoint, plus a local SQLite mirror of your events, orders, and attendees you can search offline — the cross-event search Eventbrite removed, restored over your own data.", "Sales velocity board", "sales-velocity", "Ranks all your live events by tickets sold per day since on-sale and projects a sell-out date.", "Repeat-attendee finder", "repeat-attendees", "Finds fans who bought into two or more of your events, across your whole synced history.", "Discount-code performance", "discount-performance", "Per discount code: redemptions, type, and the redemption rate (share of the code's allotment used).", "Multi-org client roll-up", "org-rollup", "Single pane across every organization your token can see: events count, tickets sold, gross, and top event per org.", "Door roster + check-in gap", "roster", "Offline attendee roster for one event with checked-in vs not-yet, VIP and comp flags, door-sorted.", "Capacity headroom rollup", "capacity", "Sold vs total capacity and percent remaining across all your live events at once.", "Refund / cancellation rate", "refund-rate", "Refunded and cancelled order counts, refunded revenue, and the rate per event or across the org.", "Top buyers by spend", "top-buyers", "Ranks ticket buyers by total spend across all your events, not just by how many events they attended.", "Attendee contact export", "fan-export", "Exports unique attendee contacts (email, name, events attended, check-in status), deduped across all your events and filterable by event." ], "path": "library/media-and-entertainment/eventbrite", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "eventbrite-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 99, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "EVENTBRITE_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "everbee", "category": "marketing", "api": "EverBee", "description": "Research Etsy products, shops, and keywords from EverBee in a repeatable agent-ready workflow.", "search_terms": [ "everbee", "everbee-pp-cli", "Research Etsy products, shops, and keywords from EverBee in a repeatable agent-ready workflow.", "Opportunity Shortlist", "Rank Etsy product opportunities by combining product analytics, keyword demand, competition, and local trend history.", "Niche Score", "Score a niche by weighing search demand, competition, product saturation, pricing, and trend movement.", "Shop Gaps", "Find competitor shop openings from product mix, pricing bands, tags, and keyword coverage.", "Tag Gap", "tags gap", "Compare winning listing tags against a target shop or keyword set to reveal missing SEO coverage.", "Keyword Clusters", "keywords cluster", "Group related keyword suggestions by term overlap, demand, competition, and opportunity score.", "Trend Diff", "trends diff", "Compare saved research snapshots to show which products, shops, or keywords moved over time.", "Competitor Watch", "competitors watch", "Detect competitor changes in top products, price bands, and tags across saved shop snapshots.", "Listing Audit", "Audit a listing's keyword and tag fit using EverBee-derived product and keyword context." ], "path": "library/marketing/everbee", "printer": "horknfbr", "printer_name": "horknfbr", "creator": { "handle": "horknfbr", "name": "horknfbr" }, "mcp": { "binary": "everbee-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 5, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "EVERBEE_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "exchangerate-api", "category": "payments", "api": "Exchangerate Api", "description": "Every ExchangeRate-API endpoint, plus a local rate history, watchlists, drift alerts, and an MCP server no one else...", "search_terms": [ "exchangerate-api", "Exchangerate Api", "exchangerate-api-pp-cli", "Every ExchangeRate-API endpoint, plus a local rate history, watchlists, drift alerts, and an MCP server.", "Local history reconstruction", "history-cache", "Reconstruct historical FX rates from your prior `latest` syncs — free tier gets time travel without `/history` quota.", "Watchlist with drift alerts", "watch check", "Define currency pairs with movement thresholds; one command reports which crossed since the last check.", "Drift detection between syncs", "drift", "Diff the latest snapshot against any prior point and report the biggest movers as ranked output.", "Quota burn projection", "quota burn", "Fit a trend over `quota_snapshots` and project when your quota will exhaust before refresh day.", "N×N cross-rate matrix", "matrix", "Show full cross-rate matrix for any set of currencies from a single `latest` call — N² rates, 1 quota tick.", "Batch conversion from stdin", "convert-batch", "Pipe a list of amounts to a single command; converts all of them with one rate fetch.", "Plan/tier probe", "plan-check", "Probe each tier-gated endpoint with a single low-cost request; reports which tier your key supports.", "Time-traveling cache reads", "pair --as-of", "Look up the rate from local snapshots at any historical timestamp — free tier time travel.", "Conversion log", "log show", "Every `convert` call is logged; query the log by base, target, time window for recurring conversion analysis.", "MCP server for agents", "mcp serve", "Every user-facing command is exposed as an MCP tool with read-only annotations on safe queries." ], "path": "library/payments/exchangerate-api", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "exchangerate-api-pp-mcp", "transports": [ "stdio" ], "tool_count": 7, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "EXCHANGERATE_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "facebook-marketplace", "category": "commerce", "api": "Facebook Marketplace", "description": "A read-mostly Marketplace CLI with local watches, seller workflow helpers, and explicit write checkpoints.", "search_terms": [ "facebook-marketplace", "Facebook Marketplace", "facebook-marketplace-pp-cli", "Search, publish, mirror, and manage Facebook Marketplace seller workflows with explicit write checkpoints.", "AI listing drafter", "draft", "Draft a Marketplace title, description, and price suggestion from photos and notes.", "Buy-side watcher", "watch add", "Persist a Marketplace search watch with deterministic keyword, price, and distance filters.", "Watch matches", "matches", "Show new watch matches after deterministic filtering.", "Stale listing query", "stale", "Find local seller listings older than seven days with no engagement.", "Write-gated seller reply", "reply", "Prepare and send a seller inbox reply only when `--write` and doctor gating both pass." ], "path": "library/commerce/facebook-marketplace", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "facebook-marketplace-pp-mcp", "transports": [ "stdio" ], "tool_count": 16, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [ "FACEBOOK_MARKET_COOKIES" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "fathom", "category": "productivity", "api": "Fathom", "description": "Sync your Fathom meetings once, then search, analyze, and act on them forever — offline, at scale, without burning...", "search_terms": [ "fathom", "fathom-pp-cli", "Cross-Meeting Commitment Tracker", "commitments", "See every open action item you promised across all calls — grouped by meeting, assignee, and date — without opening a single recording.", "Topic Frequency Tracker", "topics", "Find out how often 'pricing,' 'onboarding,' or any keyword has surfaced in your meetings over the past N weeks — with week-over-week trend.", "Pre-Call Account Brief", "brief", "Get a chronological history of every meeting with a specific person or company — past topics, open action items, last contact date — before you join a call.", "Engagement Velocity Tracker", "velocity", "Track whether your meeting cadence with a key account is accelerating, stable, or stalling — month by month.", "Team Meeting Workload", "workload", "See which team members are spending the most hours in meetings per week and whether the load is worsening.", "Account Relationship History", "account", "View a complete, domain-keyed history with any company: every meeting, topics discussed, action items, and cadence — in one structured output.", "Stale Recording Detector", "stale", "Find recordings that were captured but have no transcript, summary, or action items synced — useful for operators debugging pipeline gaps.", "CRM Gap Audit", "crm-gaps", "Surface CRM-matched meetings where no action items were logged — calls that touched active deals but left no paper trail.", "Recording Coverage Report", "coverage", "Track how reliably a recurring meeting (weekly planning, standup, 1:1) is being recorded over time." ], "path": "library/productivity/fathom", "printer": "neektza", "printer_name": "Nikica Jokic", "creator": { "handle": "neektza", "name": "Nikica Jokic" }, "mcp": { "binary": "fathom-pp-mcp", "transports": [ "stdio" ], "tool_count": 7, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "FATHOM_PP_CLI_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "fedex", "category": "commerce", "api": "FedEx", "description": "Ship, rate, and track FedEx packages from the terminal — built for small business shippers.", "search_terms": [ "fedex", "fedex-pp-cli", "Ship, rate, and track FedEx packages from the terminal — built for small business shippers.", "Rate Shop", "Quote rates across every applicable service type in parallel and rank by cost, transit days, or cost-per-day.", "Bulk Ship from CSV", "ship bulk", "Create labels for a CSV of orders with adaptive rate limiting, per-row PASS/FAIL accounting, and resume-from-last-success.", "Address Book (saved recipients)", "address save", "Save frequently-used recipients to a local address book; reference them by name in ship commands.", "Doctor with FedEx-specific checks", "doctor", "Verifies OAuth auth, sandbox/prod routing, account-number format, label-format compatibility, and surfaces BAG (Bar Code Analysis Group) approval status.", "Track Diff", "Show only the tracking events that have appeared since the last poll for each tracking number in the local store.", "Track Watch (long-poll daemon)", "track watch", "Continuously poll a set of tracking numbers and emit new events to stdout, a webhook, or a file as they arrive. Polling alternative to FedEx push notifications.", "Return Label one-shot", "return create", "Generate a Ground Call Tag (return label) against an existing tracking number with one command, optionally emailing it to the recipient.", "Address Validation Cache", "address validate", "SHA-256-keyed local cache prevents re-billing the FedEx Address Validation API for repeat lookups.", "Shipment Archive Search (FTS)", "archive", "SQLite FTS5 search across every shipment in the local archive — recipient name, address, reference, tracking number, service.", "Spend Report", "Sum of net charges per service type, lane, or account from the local rate-quote and shipment ledger.", "Export shipping history", "export", "Dump shipments + charges + tracking events as CSV or JSON for QuickBooks/Xero reconciliation.", "End-of-Day Manifest Report", "manifest", "Generate a printable PDF/text summary of every shipment created today from the local archive, optionally invoking the Ground EOD close API.", "SQL Composability", "sql", "Direct SQLite SELECT queries against shipments, rate_quotes, tracking_events, address_validations, addresses tables.", "ETD-Aware Ship", "ship etd", "Single-command Electronic Trade Documents shipping: uploads commercial invoice, captures docId, and stitches it into the shipment create call." ], "path": "library/commerce/fedex", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "fedex-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 48, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "FEDEX_API_KEY", "FEDEX_SECRET_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "figma", "category": "productivity", "api": "Figma", "description": "Every Figma endpoint, plus codegen-ready frame extracts, comments audit, orphans finder, tokens diff, and webhook...", "search_terms": [ "figma", "figma-pp-cli", "Compaction-aware frame extract for codegen prompts", "frame extract", "Extract a single frame as a compact codegen-ready payload that fuses simplified node tree, in-scope variables, dev resources, and Code Connect mappings.", "Dev-mode resource bundle for a single node", "dev-mode dump", "Emit a portable Markdown bundle that fuses dev-resource links, variables in scope, render permalink, and Code Connect mapping for one node.", "Cross-file unresolved comments audit", "comments-audit", "Aggregate unresolved comments across every synced team file with age and group-by filters.", "Stale component, style, and variable orphans finder", "orphans", "Find published library entities (components, styles, variables) with zero usage over a window by joining team-library publish list with library-analytics usage data.", "Semantic tokens diff between file versions", "tokens diff", "Diff Figma variables across two file versions with mode-awareness; emits a Markdown or JSON change set.", "Deterministic file fingerprint for CI contract", "fingerprint", "Stable hash of a Figma file's token + component + style surface; exits non-zero if --expect doesn't match.", "Webhook delivery replay against new target", "webhooks test", "Pull Figma's webhook request log and replay stored payloads (with original headers and HMAC) against an arbitrary target URL.", "Variable usage tracer", "variables explain", "Flat list of every node and component that references a given variable across a file." ], "path": "library/productivity/figma", "printer": "giacaglia", "printer_name": "Giuliano Giacaglia", "creator": { "handle": "giacaglia", "name": "Giuliano Giacaglia" }, "mcp": { "binary": "figma-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 48, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "FIGMA_OAUTH2" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "firecrawl", "category": "developer-tools", "api": "Firecrawl", "description": "API for interacting with Firecrawl services to perform web scraping and crawling tasks.", "search_terms": [ "firecrawl", "firecrawl-pp-cli", "Single-page scrape", "scrape", "Scrape a URL into agent-friendly output with Firecrawl authentication and Printing Press JSON/compact controls.", "Multi-page crawl", "crawl urls", "Start a Firecrawl crawl job from a base URL with depth, limit, sitemap, and path controls.", "URL map discovery", "map", "Map discoverable URLs for a site as a lightweight pre-crawl discovery workflow.", "Batch scrape and extract", "batch scrape-and-extract-from-urls", "Submit multiple URLs for scrape/extract jobs with cache, PDF, content, tag, proxy, and batch controls.", "Structured extraction", "extract data", "Run Firecrawl extraction over URLs with prompt-driven structured data options." ], "path": "library/developer-tools/firecrawl", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "firecrawl-pp-mcp", "transports": [ "stdio" ], "tool_count": 20, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "FIRECRAWL_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "fireflies", "category": "productivity", "api": "Fireflies Pp Cli", "description": "Every Fireflies meeting feature, plus offline search, cross-meeting intelligence, and a local database no other tool...", "search_terms": [ "fireflies", "Fireflies Pp Cli", "fireflies-pp-cli", "Offline Full-Text Search", "transcripts search", "Full-text search across all synced meeting transcripts without consuming any API quota.", "Person Timeline", "Chronological meeting history with a specific person — topics, action items, and talk ratio per meeting.", "Cross-Meeting Action Items", "action-items list", "Aggregate action items from all meetings in a date range — weekly commitment audit in one command.", "Smart Meeting Discovery", "transcripts find", "Find meetings by participant email, channel name, keyword, or date range — all client-side, no broken API date filters.", "Processing Status Check", "transcripts status", "Show PROCESSED / PROCESSING / FAILED status for recent meetings upfront — know before you fetch.", "Topic Frequency Analysis", "topics list", "Most frequent topics across all meetings in a date range — what is actually consuming meeting time.", "Morning Digest", "digest", "Aggregate view of all recent meetings: titles, gists, topics, and action items in one structured output.", "Vault Export", "transcripts export", "Export a transcript as markdown to a vault directory with auto-generated YYYY-MM-DD_title.md filename." ], "path": "library/productivity/fireflies", "printer": "neektza", "printer_name": "Nikica Jokic", "creator": { "handle": "neektza", "name": "Nikica Jokic" }, "mcp": { "binary": "fireflies-pp-mcp", "transports": [ "stdio" ], "tool_count": 18, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "FIREFLIES_PP_CLI_API_KEY" ], "mcp_ready": "full", "spec_format": "graphql" } }, { "name": "flight-goat", "category": "travel", "api": "Flight GOAT", "description": "Search Google Flights, scan Kayak long-haul routes, and join FlightAware AeroAPI reliability, alerts, and tracking from one CLI.", "search_terms": [ "flight-goat", "Flight GOAT", "flight-goat-pp-cli" ], "path": "library/travel/flight-goat", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "flight-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 58, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "FLIGHT_GOAT_API_KEY_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "food52", "category": "food-and-dining", "api": "Food52", "description": "Search, browse, and read Food52 from your terminal — with offline FTS, pantry matching, recipe scaling, and the editorial signals other tools throw away.", "search_terms": [ "food52", "food52-pp-cli", "Pantry → recipe matcher", "pantry match", "Find Food52 recipes whose ingredients overlap your local pantry, ranked by coverage.", "Offline FTS across recipes and articles", "search", "Full-text search across every recipe and article you have synced, with type filtering.", "Sync a tag or vertical", "sync recipes", "Pull recipes for one or more tags into the local FTS-indexed store.", "Test-Kitchen + rating-filtered browse", "recipes top", "Show only Food52 Test-Kitchen-approved recipes for a tag, with a rating floor.", "Recipe scaling via JSON-LD", "scale", "Scale a recipe's ingredients to a different number of servings using its Schema.org recipeYield.", "Cooking-mode print view", "print", "Render a recipe as ingredients + numbered steps with no nav, no images, no ads, no comments — ready to pipe to lp or paste into notes.", "Article ↔ recipe cross-reference", "articles for-recipe", "Find synced articles that mention a given recipe in their relatedReading." ], "path": "library/food-and-dining/food52", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "food52-pp-mcp", "transports": [ "stdio" ], "tool_count": 4, "public_tool_count": 4, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "freshservice", "category": "productivity", "api": "Freshservice", "description": "Every Freshservice operation in one Go binary — with offline search, SLA intelligence, and agent-native JSON that...", "search_terms": [ "freshservice", "freshservice-pp-cli", "SLA Breach Countdown", "breach-risk", "Shows every open ticket projected to breach SLA within the next N hours, sorted by minutes remaining — act before the clock runs out, not after.", "My Queue", "my-queue", "Combines all tickets assigned to you with SLA countdown plus any change records awaiting your approval — the first command an agent runs each morning.", "Cross-Entity Full-Text Search", "search", "Runs a single ranked full-text search across tickets, assets, change records, and KB articles simultaneously — find everything related to an incident keyword in one shot.", "Agent Workload Heatmap", "workload", "Table of agents with open ticket count, average ticket age, P1/P2 count, and normalized load score — see who is drowning and who has capacity in five seconds.", "Change Collision Detector", "change-collisions", "Flags change records whose planned maintenance windows overlap, optionally filtered by CI — prevents two teams from scheduling conflicting downtime on the same system.", "Incident Recurrence Fingerprinter", "recurrence", "Uses FTS similarity on ticket subjects and descriptions to surface repeated symptom patterns grouped by asset, requester, or keyword — shows which problems keep coming back.", "Knowledge Gap Finder", "kb-gaps", "Matches recent ticket subjects against the KB article corpus using FTS and ranks topic clusters with no matching article by ticket volume — tells you exactly what to document first.", "Asset Orphan Detector", "orphan-assets", "Finds assets with no associated open ticket, no active contract, and no assigned user activity in the last N days — surfaces hardware you are paying maintenance on that nobody uses.", "Department SLA Leaderboard", "dept-sla", "Aggregates SLA compliance percentage, breach count, and mean time to resolve by requester department for a rolling period — exec-ready ranking without exporting to Excel.", "On-Call Coverage Gap Finder", "oncall-gap", "Identifies time windows where high-severity tickets arrived but no agent in the group acknowledged within SLA — surfaces staffing gaps in on-call rotations." ], "path": "library/productivity/freshservice", "printer": "mark-van-de-ven", "printer_name": "Mark van de Ven", "creator": { "handle": "mark-van-de-ven", "name": "Mark van de Ven" }, "mcp": { "binary": "freshservice-pp-mcp", "transports": [ "stdio" ], "tool_count": 76, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "FRESHSERVICE_APIKEY", "FRESHSERVICE_DOMAIN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "gisis", "category": "other", "api": "GISIS", "description": "Authoritative IMO ship particulars on the command line", "search_terms": [ "gisis", "gisis-pp-cli", "Authoritative IMO ship particulars on the command line, plus a local cache that turns one-shot lookups into a compounding vessel index.", "Batch IMO lookup with throttled persistence", "ship batch", "Resolve a list of IMOs in one invocation, honoring the 1 req/2-3s throttle and persisting each to the local cache.", "Local cache browse with FTS", "ship list", "Browse vessels you have already fetched, with filters on flag/owner/type and full-text search on name/owner.", "Watchlist with selective refresh", "ship pin", "Pin vessels for an active deal or story, then refresh only the pinned ones at a chosen cadence.", "Cross-snapshot ship history (flag-hop detector)", "ship history", "Show how a vessel's particulars have changed across snapshots — flag, name, owner, operator, classification society, status.", "Stale-cache report", "ship stale", "List cached vessels whose particulars haven't been refreshed in N days.", "Owner-fleet listing from accumulated cache", "owner fleet", "List every cached vessel for a given owner string (the Companies module isn't in v1).", "Session liveness ping", "auth ping", "Single fast GET to /Public/SHIPS/Default.aspx; exits 0 if session is live, non-zero if re-login needed." ], "path": "library/other/gisis", "printer": "6myfzqx6bv-ctrl", "printer_name": "ivory_elephant", "mcp": { "binary": "gisis-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "godaddy", "category": "developer-tools", "api": "GoDaddy", "description": "Combined CLI for multiple API services", "search_terms": [ "godaddy", "godaddy-pp-cli", "Agent-native CLI + MCP covering all 12 GoDaddy developer APIs (138 endpoints): Domains (incl. DNS records), Certificates, Orders, Subscriptions, Shoppers, ANS/Agents, Parking, Aftermarket, Abuse, Agreements, Countries, and Auctions. Auth via GODADDY_API_KEY/GODADDY_API_SECRET; writes are validated and gated.", "Unified GoDaddy official API command surface", "api", "Combine the GoDaddy Swagger groups into one searchable CLI and MCP catalog covering domains, DNS records, certificates, subscriptions, abuse, shoppers, auctions, and related account APIs.", "Authenticated GoDaddy account route evidence", "agent-context", "Document the official API surface alongside sanitized authenticated account-portal route evidence and live-read proof so agents can reason across docs, portal, and API behavior.", "Approval-gated GoDaddy account mutation controls", "domains records", "Classify GoDaddy writes by risk, keep dry-run previews available, and require the package write barrier before live DNS, purchase, transfer, cancellation, or account-changing requests." ], "path": "library/developer-tools/godaddy", "printer": "zaydiscold", "printer_name": "zaydiscold", "mcp": { "binary": "godaddy-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 138, "public_tool_count": 5, "auth_type": "sso-key", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "gohighlevel", "category": "sales-and-crm", "api": "GoHighLevel", "description": "Sync GoHighLevel CRM data for contacts, opportunities, pipelines, custom fields, tags, bulk operations, and funnel reports.", "search_terms": [ "gohighlevel", "gohighlevel-pp-cli", "Sync GoHighLevel CRM data for contacts, opportunities, pipelines, custom fields, tags, bulk operations, and funnel reports.", "Stale opportunity report", "opp stale", "Find opportunities sitting in a stage longer than N days, using synthesized stage-entry timestamps from sync history.", "Pipeline funnel snapshot", "opp funnel", "Stage-by-stage count and total monetary value for a pipeline, output as TSV ready to paste into a dashboard sheet.", "Custom field name resolver", "field id", "Translate human-readable custom field names into opaque GHL IDs, with did-you-mean suggestions on typos.", "Bulk tag from stdin", "contact bulk-tag", "Apply or remove a tag across many contacts read from stdin, with chunked 100-at-a-time delivery and connection-drop retry.", "SQL on local cache", "sql", "Run read-only SQL against the local SQLite mirror of contacts, opportunities, pipelines, stages, tags, custom_fields, conversations, messages, and appointments.", "Contact dedup with richness scoring", "contact dedup", "Group contacts by lowercased email and E.164 phone, score by filled-field count and recency, emit a merge plan.", "Engagement decay alert", "contact decay", "Find opportunities in a stage whose contacts have had no inbound or outbound messages in N days.", "Hot follow-up scorecard", "recruit hot", "Rank recruits by a composite of production signals, engagement, and recruit-tag count.", "Multi-location config and flag", "config use", "Named profiles for each GHL sub-account (KWCP, THINK), with --location flag honored across every command.", "Doctor", "Validate the PIT token (auto-lowercases the prefix), ping the active location, and report local cache state.", "Conversation thread reconstruction", "convo thread", "Reconstruct a chronological SMS+email+call thread for a single contact from the local messages table." ], "path": "library/sales-and-crm/gohighlevel", "printer": "jenwilliams-eng", "printer_name": "Jen Williams", "creator": { "handle": "jenwilliams-eng", "name": "Jen Williams" }, "mcp": { "binary": "gohighlevel-pp-mcp", "transports": [ "stdio" ], "tool_count": 57, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "GHL_PIT_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "goodreads", "category": "media-and-entertainment", "api": "Goodreads", "description": "This is an evidence-backed starting map for a future Goodreads CLI.", "search_terms": [ "goodreads", "goodreads-pp-cli", "Agent-native CLI + MCP for Goodreads, read and write. Rate books via the modern AppSync GraphQL API (RateBook/UnrateBook), write reviews with spoiler + feed-publicize via the legacy form, add to and create shelves, browse the home updates feed, friends, recommendations, genre/topic search, book pages, and Goodreads Giveaways. Goodreads has no public developer API; routes are reverse-engineered from the logged-in web app and live-verified.", "Goodreads authenticated web route atlas", "api", "Expose an evidence-backed Goodreads route map covering shelves, books, reviews, messages, notes, quotes, friends, genres, recommendations, notifications, and public sitemap-derived hubs despite the absence of a current public Goodreads API.", "Compact Goodreads MCP search and execute surface", "goodreads_search", "Default MCP registration uses goodreads_search plus goodreads_execute for route discovery and dispatch instead of flooding agents with dozens of raw endpoint mirrors.", "Approval-gated notes and shelf mutation support", "notes share update", "Model real Goodreads account actions such as Kindle note publicizing, shelf edits, message marks, and review updates with dry-run previews and the GOODREADS_PP_ALLOW_WRITES=1 gate before PP-side live writes." ], "path": "library/media-and-entertainment/goodreads", "printer": "zaydiscold", "printer_name": "zaydiscold", "mcp": { "binary": "goodreads-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 55, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "GOODREADS_GOODREADS_COOKIE_SESSION" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "google-ads", "category": "marketing", "api": "Google Ads", "description": "Google Ads API for account discovery, GAQL reporting, campaigns, budgets, assets, conversions, audiences, planning, and billing operations.", "search_terms": [ "google-ads", "Google Ads", "google-ads-pp-cli", "Query and manage Google Ads accounts from the terminal.", "GAQL account drilldown", "customers-google-ads search", "Run Google Ads Query Language searches from the terminal or MCP surface with JSON output.", "Accessible customer discovery", "customers list-accessible-customers", "Discover the Google Ads customer resources available to the configured OAuth identity before querying.", "Google Ads field catalog lookup", "google-ads-fields search", "Search Google Ads field metadata so agents can construct valid GAQL queries." ], "path": "library/marketing/google-ads", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "google-ads-pp-mcp", "transports": [ "stdio" ], "tool_count": 162, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "GOOGLE_ADS_ACCESS_TOKEN", "GOOGLE_ADS_DEVELOPER_TOKEN", "GOOGLE_ADS_LOGIN_CUSTOMER_ID" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "google-photos", "category": "media-and-entertainment", "api": "Google Photos", "description": "Google Photos Library and Picker APIs for app-created media, albums, uploads, and user-selected media.", "search_terms": [ "google-photos", "Google Photos", "google-photos-pp-cli", "Manage Google Photos app-created albums and media, upload files, and work with Picker sessions from the terminal.", "Raw upload-token command", "upload file", "Upload photo or video bytes to Google Photos' raw upload endpoint and return the upload token needed by media-items batch-create.", "Picker readiness waiter", "picker wait", "Poll Picker sessions until mediaItemsSet is true, using Google's returned polling interval and timeout guidance when present." ], "path": "library/media-and-entertainment/google-photos", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "google-photos-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 19, "public_tool_count": 0, "auth_type": "oauth2", "env_vars": [ "GOOGLE_PHOTOS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "google-search-console", "category": "marketing", "api": "Google Search Console", "description": "Every Google Search Console feature you'd reach for, plus an offline SQLite cache that powers period compare, quick...", "search_terms": [ "google-search-console", "Google Search Console", "google-search-console-pp-cli", "Every Google Search Console feature you'd reach for, plus an offline SQLite cache that powers quick-wins, cannibalization, period compare, and historical queries beyond the 16-month API window.", "Quick Wins", "quick-wins", "Surface page-2 queries with high impressions and low CTR -- page-2-to-page-1 candidates ranked by upside, computed offline from your synced corpus.", "Cannibalization detection", "cannibalization", "Find queries where multiple pages compete, ranked by combined impressions -- the keyword-cannibalization audit the GSC web UI doesn't offer.", "Period compare", "compare", "Period-over-period delta on clicks, impressions, CTR, and position for any dimension -- week-over-week, month-over-month, or arbitrary windows.", "Cliff detector", "cliff", "Find the day clicks or impressions cratered, with signature hints matching same-day sitemap regressions or indexing drops.", "Cross-property roll-up", "roll-up", "Aggregate top queries or pages across every verified property in one command -- the API forces N round-trips.", "Coverage drift", "coverage-drift", "URLs whose inspection state flipped (indexed → not indexed, robots changed, canonical changed) within a window.", "Historical query (>16 months)", "historical", "Search analytics for date ranges older than the API's 16-month rolling window -- answer 'is this March-2024 normal?' from cached history.", "CTR outliers", "outliers", "Queries or pages with click-through rates that deviate from the observed CTR-by-position curve in your own corpus.", "Sitemap regression watcher", "sitemap-watch", "Diff sitemap state between snapshots -- surface new errors, new warnings, content-count drops, and stale lastDownloaded times.", "Decaying pages", "decaying", "Pages with monotonic click decline over a rolling window, ranked by total impressions × negative slope -- the content-refresh queue.", "New queries arriving", "new-queries", "Queries that started showing up with impressions in the last N days but didn't exist in the corpus before -- emerging demand." ], "path": "library/marketing/google-search-console", "printer": "bossriceshark", "printer_name": "Matt", "creator": { "handle": "bossriceshark", "name": "Matt" } }, { "name": "gorgias", "category": "sales-and-crm", "api": "Gorgias", "description": "Gorgias support CLI with offline sync, local search, read-only SQL, and MCP tools for agent-native support workflows.", "search_terms": [ "gorgias", "gorgias-pp-cli", "Gorgias support CLI with offline sync, local search, read-only SQL, and MCP tools for agent-native support workflows.", "Code-orchestration MCP surface", "gorgias-pp-mcp --transport http --addr :7777", "108 Gorgias endpoints reachable through a small fixed set of MCP tools — 15 typed tools total, ~9K context tokens for a full tools/list response (~1K of descriptions, ~7K of JSON schemas). Agents reach the full surface through gorgias_search + gorgias_execute, not a 108-tool catalog. Live tool count is reported by the `context` tool.", "Doctor with live credential verification", "gorgias-pp-cli doctor --json", "Probes /account with the configured credentials and reports credentials: valid only when an authenticated call succeeds. Surfaces auth failures as the first command an agent runs, before any read or write.", "Auto-refresh of stale local mirror", "GORGIAS_AUTO_REFRESH_TTL=15m gorgias-pp-cli tickets list", "Opt-in: read commands automatically sync the resource before serving if the local SQLite mirror is older than the TTL. Off by default to keep behavior predictable for agents preferring explicit syncs.", "Local FTS5 search across synced data", "gorgias-pp-cli sync --resources tickets --since 7d && gorgias-pp-cli search refund --agent", "Sync to local SQLite, then full-text search with subsecond latency. Turns a 30-second multi-page paginated search into a 50ms SQL-backed query. Pairs with cron for warm local data.", "Agent-readable endpoint surface", "gorgias-pp-cli agent-context --json", "agent-context exposes the command catalog, global flags, env requirements, MCP surface, and endpoint counts so an agent can inspect supported capabilities without parsing help text or making tenant-specific live calls." ], "path": "library/sales-and-crm/gorgias", "printer": "chrisyoungcooks", "printer_name": "Chris Young", "mcp": { "binary": "gorgias-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 15, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "GORGIAS_USERNAME", "GORGIAS_API_KEY", "GORGIAS_BASE_URL" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "granola", "category": "productivity", "api": "Granola", "description": "Every Granola feature — plus offline SQLite cross-meeting search, attendee timelines, and a MEMO pipeline runner...", "search_terms": [ "granola", "granola-pp-cli", "MEMO pipeline runner", "memo run", "Run the preflight → extract pipeline on one meeting or every new meeting since a timestamp, emitting the MEMO three-file artifact and an ndjson run-state ledger.", "MEMO ready-queue", "memo queue", "List every meeting whose transcript is in the cache but whose MEMO triple is not yet on disk.", "Attendee timeline", "Every meeting with a given attendee, ordered oldest→newest, with title, date, folder, and recipe-applied flag per row.", "Attendee brief card", "attendee brief", "Pulls the last N meetings with an attendee and stitches together their real cached notes plus real AI panel summaries — no synthesis.", "Folder stream with panels", "folder stream", "ndjson stream of every meeting in a Granola folder (resolved via documentLists + listRules) with notes and a named panel inlined.", "Recipe coverage gap", "recipes coverage", "Surface meetings that did NOT have a named panel template/recipe applied within a date range.", "Per-source talk-time", "talktime", "Per-segment-source talk-time for one meeting — microphone (you) vs system (everyone else) in minutes.", "Cross-meeting talk-time", "Lifts the per-source talk-time aggregation across N meetings since a date — who-talked-most over time.", "AI chat threads", "chat list", "List and dump Granola’s AI chat threads anchored to a meeting (entities.chat_thread + entities.chat_message in the cache).", "Repo-wide duplicate scan", "duplicates scan", "Hash (title, date-bucket, attendee-email-set) across the cache and a meeting-transcripts repo to surface duplicates at scale.", "TipTap-faithful extractor", "tiptap extract", "Render documents[id].notes (TipTap JSON: headings, bullet_list, list_item, bold marks, paragraph_break) to canonical markdown instead of falling back to notes_plain.", "Calendar overlay", "Left-anti-join meetingsMetadata calendar events with documents.google_calendar_event to find calendared-but-not-recorded meetings." ], "path": "library/productivity/granola", "printer": "dstevens", "printer_name": "Damien Stevens", "creator": { "handle": "dstevens", "name": "Damien Stevens" }, "contributors": [ { "handle": "jeffreydebolt", "name": "Jeff DeBolt" } ], "mcp": { "binary": "granola-pp-mcp", "transports": [ "stdio" ], "tool_count": 3, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "GRANOLA_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "gravitus", "category": "other", "api": "Gravitus", "description": "The only CLI that syncs your Gravitus strength data into your training dashboard.", "search_terms": [ "gravitus", "gravitus-pp-cli", "Dashboard Sync", "sync", "Sync all Gravitus workouts into your training dashboard's SQLite database — writes LiftingSession records in the exact Prisma schema format with auth, pagination, and incremental support.", "Data Export", "export", "Export your complete Gravitus training history to CSV or JSON — the first and only way to get your data out of Gravitus.", "Plateau Detection", "exercises plateau", "Identifies exercises where estimated 1RM hasn't improved in N weeks — alert-style output for the dashboard coaching panel.", "Weekly Volume", "stats volume", "Weekly total lifting volume (lbs) aggregated from all synced sessions — the same metric the dashboard LiftingSection displays.", "Personal Records", "exercises prs", "All-time PRs across every exercise, extracted from PR markers on workout pages." ], "path": "library/other/gravitus", "printer": "azaaron", "printer_name": "mvanhorn", "creator": { "handle": "azaaron", "name": "mvanhorn" }, "mcp": { "binary": "gravitus-pp-mcp", "transports": [ "stdio" ], "tool_count": 4, "public_tool_count": 1, "auth_type": "cookie", "env_vars": [ "GRAVITUS_SESSION_ID" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "greatclips", "category": "other", "api": "Great Clips", "description": "Check Great Clips salon wait times, prepare Online Check-In requests, inspect route shapes, and track local wait history.", "search_terms": [ "greatclips", "Great Clips", "greatclips-pp-cli", "Check Great Clips salon wait times, prepare Online Check-In requests, inspect route shapes, and track local wait history.", "Auth0 Bearer JWT from cid.greatclips.com tenant. Recommended onboarding:\n`auth login --chrome` to extract the token from a logged-in Chrome session.\nAlternatively, `auth login --token ` to paste an existing token,\nor set GREATCLIPS_TOKEN in the environment.", "Live wait time at any salon", "wait", "Fetch real-time estimated wait minutes for a specific salon, signed with the ICS Net Check-In HMAC.", "Stylewaretouch.net rejects unsigned requests with HTTP 500 NPE; this CLI ports the SPA HMAC-SHA-256 signing scheme (verified byte-identical via golden vector test) so wait queries work outside the browser.", "Party check-in via CLI", "checkin", "Add yourself plus up to 4 additional party members to a salon waitlist with one command.", "The SPA submit flow requires HMAC signing plus a customer-audience HS512 JWT plus a non-obvious request body shape; this CLI ships the full pipeline.", "Active check-in status lookup", "status", "Query the live position-in-line and estimated wait for the current accounts active check-in.", "Server-side state lookup using the HMAC + customer-aud Bearer pipeline.", "Cancel active check-in", "cancel", "Remove yourself from the salon waitlist without opening the SPA.", "Closes the lifecycle. Body shape and signing are non-trivial to reproduce; the CLI ships them.", "Customer profile lookup", "customer profile", "Fetch the authenticated customer profile (name, email, phone, favorite salons) via the Auth0 customer-audience token.", "Verifies the Auth0 silent-mint pipeline end-to-end and yields the profileId checkin needs." ], "path": "library/other/greatclips", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "greatclips-pp-mcp", "transports": [ "stdio" ], "tool_count": 9, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "GREATCLIPS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "gumroad", "category": "commerce", "api": "Gumroad", "description": "Gumroad's seller API as an agent-ready CLI and MCP server.", "search_terms": [ "gumroad", "gumroad-pp-cli", "Seller Snapshot Sync", "sync --resources products,sales,subscribers,payouts --latest-only --json", "Refresh a local SQLite snapshot of the seller-facing Gumroad resources that agents inspect most often.", "Cross-Resource Search", "search", "Search locally synced products, sales, subscribers, payouts, and tax records through one command.", "Local Gumroad Analytics", "analytics", "Group and count synced Gumroad records locally for fast summaries without additional API traffic.", "Polling Tail for Operational Events", "tail", "Poll selected Gumroad resources and emit NDJSON changes for scripts or agent monitors." ], "path": "library/commerce/gumroad", "printer": "bheemreddy181", "printer_name": "Bheem Reddy", "creator": { "handle": "bheemreddy181", "name": "Bheem Reddy" }, "mcp": { "binary": "gumroad-pp-mcp", "transports": [ "stdio" ], "tool_count": 52, "public_tool_count": 1, "auth_type": "bearer_token", "env_vars": [ "GUMROAD_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "hackernews", "category": "media-and-entertainment", "api": "Hacker News", "description": "Hacker News from your terminal — with a local SQLite store, snapshot history, and agent-native output no other HN tool has.", "search_terms": [ "hackernews", "hackernews-pp-cli", "Read, search, and analyze Hacker News with a local SQLite store, offline full-text search, and agent-native output", "Front-page diff", "since", "See exactly what climbed, fell, appeared, or dropped off the front page since your last sync.", "Topic pulse", "pulse", "See per-day mentions, average score, and comment volume for any topic over the last N days.", "Hiring thread aggregator", "hiring stats", "Aggregate the last N monthly Who-is-Hiring threads: top languages, remote ratio, top companies, location distribution.", "Hiring company tracker", "hiring companies", "Companies that posted in M of the last N hiring threads, with first-seen, last-seen, and months-posted count.", "Controversial", "Stories ranked by the highest comment-to-point ratio over a recent window — the discussions everyone is arguing about.", "Repost finder", "repost", "Has this URL been posted before? Lists every prior submission, with score, comments, and date.", "Story velocity", "velocity", "Show a story's rank trajectory over time from local snapshots — climb, plateau, or fall.", "User stats", "users stats", "Median and p90 score across a user's submissions, plus traction buckets and hour-of-day score distribution.", "Local FTS search", "search local", "Offline full-text search over every story and comment you have ever synced — corpus grows with use.", "Sync foundation", "sync", "Pull top/new/best/show/ask/job lists and recently-changed items into local SQLite for offline use and snapshot history." ], "path": "library/media-and-entertainment/hackernews", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "hackernews-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 10, "public_tool_count": 10, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "harris-teeter", "category": "commerce", "api": "Harris Teeter", "description": "Harris Teeter grocery shopping API discovered from the logged-in web app", "search_terms": [ "harris-teeter", "Harris Teeter", "harris-teeter-pp-cli", "Read-only Harris Teeter grocery CLI for products, stores, coupons, cart, lists, account preferences, and recommendations through the logged-in web app session.", "Live Chrome session login", "auth login --chrome", "Read Harris Teeter session cookies from the already logged-in Chrome session, falling back through agent-browser/browser-use when standalone cookie tools are missing.", "Store-aware product search", "products search", "Search Harris Teeter products using the browser-observed Atlas search endpoint with location, fulfillment method, and LAF/modality headers.", "UPC product detail replay", "products get", "Fetch full product, offer, nutrition, inventory, and variant projections by UPC/GTIN through the logged-in Atlas product endpoint.", "Digital coupon inspection", "coupons", "List Harris Teeter digital coupons from the authenticated web endpoint, including optional UPC filtering.", "Read-only cart and list inspection", "cart", "Inspect the authenticated Harris Teeter cart and shopping-list surfaces without exposing mutating checkout or order actions." ], "path": "library/commerce/harris-teeter", "printer": "jwmoss", "printer_name": "Jonathan Moss", "creator": { "handle": "jwmoss", "name": "Jonathan Moss" }, "mcp": { "binary": "harris-teeter-pp-mcp", "transports": [ "stdio" ], "tool_count": 15, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "hayward-omnilogic", "category": "devices", "api": "Hayward OmniLogic", "description": "Take control of every Hayward OmniLogic feature, plus a local store, schedule diffs, chemistry trends, and a morning...", "search_terms": [ "hayward-omnilogic", "Hayward OmniLogic", "hayward-omnilogic-pp-cli", "Pool readiness composite", "status", "One-shot \"is the pool ready for guests?\" view: chemistry in range, temp at setpoint, no active alarms, pump running, with a traffic-light verdict.", "Ready-by ETA", "ready-by", "Enables the heater and computes when to start it so the pool hits your target temperature by a specified arrival time, using the learned heat rate from telemetry history.", "Historical chemistry export", "chemistry log", "Weekly/monthly pH, ORP, salt, and temperature history from the local store, exportable as CSV or JSON for HOA / service / insurance records.", "Chemistry drift + forecast", "chemistry drift", "Detects pH/ORP/salt drift versus a rolling baseline before Hayward's static thresholds fire; --forecast projects when each metric will leave the safe range.", "Equipment runtime totals", "runtime", "Pump hours, heater hours, salt-cell hours derived from telemetry deltas — for maintenance planning, warranty, and end-of-season service.", "Command audit + replay", "command-log", "Every Set* command issued via this CLI is logged with who/when/what/result. --replay re-issues a prior command for quick undo or redo.", "Why isn't this running?", "why-not-running", "Diagnose why a pump, heater, or light isn't running: correlates active alarms, current relay state, scheduled run windows, heater demand, and superchlor lockouts into one explanation.", "Schedule change detection", "schedule diff", "Diffs today's MSP-config schedule tree against prior versioned snapshots; catches silent edits made by service techs or by other app users.", "Multi-site morning sweep", "sweep", "Across every site in the account, surface active alarms, out-of-range chemistry, and offline controllers in a single report — built for pool-service businesses doing route planning." ], "path": "library/devices/hayward-omnilogic", "printer": "rob-coco", "printer_name": "Rob Zehner", "creator": { "handle": "rob-coco", "name": "Rob Zehner" }, "mcp": { "binary": "hayward-omnilogic-pp-mcp", "transports": [ "stdio" ], "tool_count": 17, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "here-now", "category": "cloud", "api": "here.now", "description": "Publish a folder to a live URL in one command, mirror your Drives offline", "search_terms": [ "here-now", "here.now", "here-now-pp-cli", "Publish a folder to a live URL in one command, mirror your Drives offline, and never lose an anonymous site to the 24-hour clock.", "Claim-token vault + auto-claim", "claims", "Every anonymous publish records its slug, claim token, and 24h expiry into a local vault, so you can make an expiring site permanent later without hunting for the token in terminal scrollback.", "Expiry radar", "claims expiring", "Lists anonymous sites expiring within a time window so you can claim them before they vanish.", "Publish resume", "Detects a locally-recorded publish that uploaded its files but never finalized, and completes it instead of re-publishing from scratch.", "Drive sync (sha256 diff)", "drives sync", "Rsync-style sync of a local directory to a Drive: compares local sha256 against the synced file checksums and uploads only what changed, new, or deleted.", "Drive diff", "drives diff", "Shows which local files differ from a Drive (added, changed, deleted) without uploading anything.", "Free-plan usage meter", "usage", "Local rollup of site count, drive bytes, and recent publish cadence against the free-plan ceilings (500 sites, 10GB, 60 publishes/hour).", "Stale-site finder", "sites stale", "Lists sites not updated in N days from the local mirror, so you can reclaim free-plan slots by deleting dead ones." ], "path": "library/cloud/here-now", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "here-now-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 58, "public_tool_count": 3, "auth_type": "bearer_token", "env_vars": [ "HERENOW_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "hotel-goat", "category": "travel", "api": "Google Hotels", "description": "Every Google Hotels feature, plus per-OTA price breakdown, local price-drift history, brand-loyalty filters", "search_terms": [ "hotel-goat", "Google Hotels", "hotel-goat-pp-cli", "Every Google Hotels feature, plus per-OTA price breakdown, local price-drift history, brand-loyalty filters, and date-flex windowing no other tool has.", "Agent-composable nested JSON via --select dotted paths", "hotels", "Dotted-path selection through nested results.prices[], results.booking_urls, results.images[]. Returns only the fields the agent needs." ], "path": "library/travel/hotel-goat", "printer": "kothari-nikunj", "printer_name": "kothari-nikunj", "creator": { "handle": "kothari-nikunj", "name": "kothari-nikunj" }, "mcp": { "binary": "hotel-goat-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "hotel-tonight", "category": "travel", "api": "HotelTonight", "description": "Last-minute hotel deals with a local price-history database no HotelTonight client has — snapshot deals over time,...", "search_terms": [ "hotel-tonight", "HotelTonight", "hotel-tonight-pp-cli", "Last-minute hotel deals with a local price-history database no HotelTonight client has: snapshot deals over time, watch a city for drops, and rank by real % off.", "Price-drop watch", "watch", "Snapshot a location's deals now and get told which rooms dropped below your threshold or fell since you last looked.", "Price history", "history", "Show the recorded price and % off history for one hotel from the local store.", "Is-this-a-deal verdict", "verdict", "Classify a hotel's current quoted price against its own observed low/median/high as cheap, typical, or expensive.", "Neighborhood compare", "compare-neighborhoods", "Group tonight's deals in a metro by neighborhood and rank the neighborhoods by median price or best % off.", "Date-shift scan", "datescan", "Compare a location's deals across tonight, tomorrow, and the weekend in one ranked side-by-side view.", "Daily Drop tracker", "daily-drop", "Reveal today's Daily Drop hotel and its real discounted price for a market (the app hides it behind a slide-to-unlock gate), and with --history read the recorded run of past Daily Drops." ], "path": "library/travel/hotel-tonight", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "hotel-tonight-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 4, "public_tool_count": 4, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "icloud", "category": "media-and-entertainment", "api": "Apple iCloud", "description": "Query iCloud data stored locally on macOS — Photos library storage analysis, with Contacts and more coming. All reads hit local SQLite databases directly; no network calls or iCloud API token required.", "search_terms": [ "icloud", "Apple iCloud", "icloud-pp-cli", "Query Apple iCloud data stored locally on macOS — Photos library storage analysis, with Contacts and more coming. All reads hit local SQLite databases directly; no network calls or iCloud API token required.", "Heaviest file finder", "photos top", "List the top N heaviest files across all media types or filtered to photos/videos.", "Storage breakdown", "photos storage", "Show storage distribution by media type (photo/video) and by year.", "Direct SQLite access", "photos", "Reads Photos.sqlite directly in read-only mode — no Photos.app launch needed for queries.", "AppleScript delete", "photos delete", "Move items to Recently Deleted via Photos.app scripting using UUIDs from query output." ], "path": "library/media-and-entertainment/icloud", "printer": "matysanchez", "printer_name": "Matias Sanchez Moises", "creator": { "handle": "matysanchez", "name": "Matias Sanchez Moises" }, "contributors": [ { "handle": "mvanhorn", "name": "Matt Van Horn" }, { "handle": "tmchow", "name": "Trevin Chow" } ] }, { "name": "infotbm", "category": "travel", "api": "TBM Bordeaux", "description": "Every Bordeaux tram, bus, and ferry schedule offline in SQLite, plus real-time arrivals, ghost service detection", "search_terms": [ "infotbm", "TBM Bordeaux", "infotbm-pp-cli", "Every Bordeaux tram, bus, and ferry schedule offline in SQLite, plus real-time arrivals, ghost service detection, and journey planning no other Bordeaux transit tool offers.", "Ghost Service Detector", "schedule diff", "Surface trips that are scheduled in GTFS but absent from live real-time data — the buses that exist on paper but never showed up", "Last Viable Departure", "trips last-departure", "Find the latest departure from a stop that still reaches your destination before a cutoff time", "Delay-Triggered Reroute", "trips reroute", "When your current connection is delayed, compute the best alternate onward path using live vehicle data", "Alert Impact Filter", "alerts impact", "Filter all active disruptions to only those affecting your specific lines or stops", "Line Stop Sequence", "lines stops", "Print the ordered stop list for a line and direction, optionally with scheduled departure times", "Timetable Change Diff", "schedule changes", "Compare GTFS sync snapshots to detect added, removed, or modified routes on a line", "Journey Planner", "trips plan", "Plan multi-modal journeys across tram, bus, and ferry using local GTFS data with live disruption awareness", "Headway Frequency Report", "lines frequency", "Compute average headways per hour from the SIRI estimated timetable" ], "path": "library/travel/infotbm", "printer": "pawlclawbot", "printer_name": "pawlclawbot", "mcp": { "binary": "infotbm-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 16, "public_tool_count": 2, "auth_type": "api_key", "env_vars": [ "INFOTBM_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "instacart", "category": "commerce", "api": "Instacart", "description": "Natural-language Instacart CLI that talks directly to the web GraphQL API. Add items to your cart, search products, and manage carts across retailers without browser automation.", "search_terms": [ "instacart", "instacart-pp-cli", "Natural-language Instacart CLI that talks directly to the web GraphQL API. Add items to your cart, search products, and manage carts across retailers without browser automation." ], "path": "library/commerce/instacart", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "contributors": [ { "handle": "omarshahine", "name": "Omar Shahine" } ] }, { "name": "intercom", "category": "sales-and-crm", "api": "Intercom", "description": "Every Intercom resource as a typed CLI with offline sync and EU/AU regions.", "search_terms": [ "intercom", "intercom-pp-cli", "Every Intercom resource as a typed CLI with offline sync and EU/AU regions.", "Incident-tag dry-run", "conversations incident-tag", "Tag every conversation mentioning a phrase in a time window with one safe-by-default command.", "Articles git round-trip", "articles pull", "Flatten every help-center article into a markdown tree you can edit in git, then push changes back.", "Contact 360", "One nested payload joining a contact across companies, conversations, tickets, notes, and tags.", "SLA analytics", "conversations sla", "First-response and resolution-time metrics grouped by team or admin, computed over the local store." ], "path": "library/sales-and-crm/intercom", "printer": "rob-coco", "printer_name": "Rob Zehner", "creator": { "handle": "rob-coco", "name": "Rob Zehner" }, "mcp": { "binary": "intercom-pp-mcp", "transports": [ "stdio" ], "tool_count": 133, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "INTERCOM_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "jimmy-johns", "category": "food-and-dining", "api": "Jimmy John's", "description": "First terminal CLI for Jimmy John's ordering — local Unwich conversion, agent-native JSON, every endpoint typed.", "search_terms": [ "jimmy-johns", "Jimmy John's", "jimmy-johns-pp-cli", "Order Jimmy John's from the terminal — Freaky Fast Rewards stacking, half-order builder, and one-shot reorder.", "Unwich Converter", "menu unwich-convert", "Convert a sandwich's modifier set to an Unwich (lettuce wrap) variant — pure-local computation, no live API call.", "Office Lunch Planner", "order plan", "Suggest a sized cart for a group order — sandwiches + sides + cookies + drinks scaled to N people with dietary filters.", "Half-and-Half Composer", "menu half-and-half", "Compose a two-product share order with the agent-facing note that JJ doesn't natively support half-and-half slicing." ], "path": "library/food-and-dining/jimmy-johns", "printer": "omarshahine", "printer_name": "Omar Shahine", "creator": { "handle": "omarshahine", "name": "Omar Shahine" }, "mcp": { "binary": "jimmy-johns-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 16, "public_tool_count": 8, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "openapi3" } }, { "name": "jira", "category": "project-management", "api": "Jira Cloud Platform", "description": "Jira Cloud platform REST API documentation", "search_terms": [ "jira", "Jira Cloud Platform", "jira-pp-cli", "Call Jira Cloud Platform REST endpoints for issues, projects, users, workflows, permissions, and other Atlassian work-management data.", "Cycle Time Analytics", "cycle-time", "Show p50/p75/p90 cycle time and a histogram for issues resolved in a time window.", "Assignee Workload (cross-project)", "workload", "Show open issues and story point load per assignee, optionally across multiple projects.", "Blocked Issue Chain Traversal", "blocked", "Show issues that are blocked, following the blocker link graph recursively to surface dependency chains.", "Stale Issue Detector", "stale", "Find issues that haven't been updated in N days, scoped by project, sprint, or status.", "Issue Changelog Diff", "issue changelog get-change-logs", "Show the full field-change history for an issue: who changed status, assignee, priority and when." ], "path": "library/project-management/jira", "printer": "neektza", "printer_name": "Nikica Jokic", "creator": { "handle": "neektza", "name": "Nikica Jokic" } }, { "name": "jobber", "category": "sales-and-crm", "api": "Jobber", "description": "Jobber API surface as a read-only CLI and MCP peer (printing-press generated).", "search_terms": [ "jobber", "jobber-pp-cli", "AR aging", "Aged AR by client with 0-30/31-60/61-90/90+ buckets and per-bucket totals — every advisor's first question, offline and instantly.", "Invoice payment trace", "invoices trace", "Per-invoice ledger comparing total, payments_total, deposit_amount, and the sum of payment records. --mismatched flags drift > $0.005.", "Snapshot diff", "Diff two labeled SQLite snapshots: new clients, status transitions, newly paid invoices, per-client open-AR deltas.", "Full-text search", "search", "FTS5 search across every synced resource — clients, jobs, invoices, properties, quotes, visits, payment records — with no live API hit.", "Read-only ad-hoc SQL", "sql", "Read-only ad-hoc SQL against the local store (write tokens rejected at the CLI layer + sqlite mode=ro) for anything the curated commands don't answer." ], "path": "library/sales-and-crm/jobber", "printer": "melanson633", "printer_name": "melanson633", "creator": { "handle": "melanson633", "name": "melanson633" }, "mcp": { "binary": "jobber-pp-mcp", "transports": [ "stdio" ], "tool_count": 12, "public_tool_count": 0, "auth_type": "oauth2", "env_vars": [ "JOBBER_CLIENT_ID", "JOBBER_CLIENT_SECRET", "JOBBER_CALLBACK_URL", "JOBBER_ACCESS_TOKEN", "JOBBER_REFRESH_TOKEN", "JOBBER_GRAPHQL_VERSION" ], "mcp_ready": "full", "spec_format": "internal-yaml" } }, { "name": "kalshi", "category": "payments", "api": "Kalshi Trade Manual", "description": "Trade prediction markets, persist tick data, and answer category-level P&L questions Kalshi.com cannot.", "search_terms": [ "kalshi", "Kalshi Trade Manual", "kalshi-pp-cli", "Portfolio Attribution", "See your realized P&L broken down by market category and series over any time window — answer 'did politics actually make money this quarter?' in one command.", "Odds History Tracker", "markets history", "Show how a market's yes/no price moved over time, with a sparkline rendering — built from snapshots captured by every markets sync.", "Win Rate Analytics", "portfolio winrate", "Calculate your win/loss ratio, expected value, and ROI across all settled positions, optionally sliced by category.", "Settlement Calendar", "portfolio calendar", "See upcoming settlements with your positions, expected payouts, and category breakdown over the next N days.", "Market Movers", "markets movers", "Find markets with the biggest price swings since the last sync — sorted by absolute delta or by volume change.", "Cross-Market Correlation", "markets correlate", "Compute Pearson correlation of two markets' price histories — find correlated events for hedging or signal discovery.", "Exposure Analysis", "portfolio exposure", "Break down total exposure by category with concentration warnings when any bucket exceeds a configurable risk threshold.", "Subaccount roll-up", "subaccounts rollup", "Aggregate positions, fills-today, balance, and exposure-by-category across every subaccount you can see — household view of risk and resting orders.", "Watchlist with snapshot diffs", "watch diff", "Maintain a local watchlist of tickers; `watch diff` shows price/volume change vs the last sync per watched market — Riley's daily-snapshot ritual reduced to one command." ], "path": "library/payments/kalshi", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "kalshi-pp-mcp", "transports": [ "stdio" ], "tool_count": 96, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "KALSHI_TRADE_MANUAL_KALSHI_ACCESS_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "kit", "category": "marketing", "api": "Kit", "description": "Manage Kit subscribers, tags, forms, sequences, broadcasts, purchases, and email marketing automation data from the terminal.", "search_terms": [ "kit", "kit-pp-cli", "Manage Kit subscribers, tags, forms, sequences, broadcasts, purchases, and email marketing automation data from the terminal.", "Creator Snapshot", "workflow creator-snapshot", "One-call read-only operating snapshot for Kit account, growth, audience, content, webhooks, and broadcast stats.", "Audience Health", "workflow audience-health", "Read-only subscriber status counts, recent growth stats, and largest tags by subscriber count.", "Content Inventory", "workflow content-inventory", "Read-only inventory of sequences, sequence emails, snippets, forms, templates, and recent broadcast stats.", "Subscriber Lookup", "workflow subscriber-lookup", "Read-only subscriber dossier by email or id with profile, custom fields, tags, attribution, and email stats." ], "path": "library/marketing/kit", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "kit-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 72, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "KIT_API_KEY" ], "mcp_ready": "full" } }, { "name": "klaviyo", "category": "marketing", "api": "Klaviyo", "description": "Marketing automation, profiles, events, campaigns, flows, segments, and templates.", "search_terms": [ "klaviyo", "klaviyo-pp-cli", "Marketing automation, profiles, events, campaigns, flows, segments, and templates.", "Campaign Deploy", "campaigns deploy", "Create an email template, create a draft campaign, and assign the template to the campaign message in one audited workflow.", "Campaign Image Swap", "campaigns image-swap", "Find a campaign message template and replace an image URL inside the HTML while preserving the rest of the draft.", "Flow Decay", "flow-decay", "Identify flows whose open or click performance has decayed across recent time buckets using synced local data.", "Cohort Retention", "cohort", "Group profiles by first event date and compute retention or repeat-action curves from synced profiles and events.", "Attribution Join", "attribution", "Join order events with campaign and flow attribution properties to summarize revenue by channel and source.", "Profile Dedup", "dedup", "Find profiles that appear duplicated by email, phone, or cross-channel collisions in the local profile mirror.", "Campaign Reconcile", "reconcile", "Compare campaign UTM evidence with local Klaviyo order events and optional Shopify credentials when available.", "Brief To Strategy", "plan brief-to-strategy", "Turn a growth brief into a structured Klaviyo campaign, flow, segment, and experiment strategy.", "QA Gate", "plan qa-gate", "Run a launch-readiness checklist for links, offers, dates, timezone, fallback tokens, compliance, and deliverability flags." ], "path": "library/marketing/klaviyo", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "klaviyo-pp-mcp", "transports": [ "stdio" ], "tool_count": 308, "public_tool_count": 11, "auth_type": "api_key", "env_vars": [ "KLAVIYO_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "lawhub", "category": "education", "api": "LawHub", "description": "Local-first LSAT practice analytics from authenticated LawHub score metadata, with SQLite, weakness reports, question notes, and safe review links back to LawHub.", "search_terms": [ "lawhub", "lawhub-pp-cli", "Local-first LSAT practice analytics from authenticated LawHub score metadata, with SQLite, weakness reports, question notes, and safe review links back to LawHub.", "Safe LSAT analytics mirror", "sync report-metadata", "Stores user-owned performance metadata without persisting question text, passages, answer choices, or official explanations.", "Weakness report", "Ranks question types and sections by accuracy from local SQLite.", "Review links", "review open", "Jumps back into LawHub for official content review instead of copying official LSAT content locally.", "Question notes", "questions note", "Adds user-authored wrong-answer review notes to local question metadata.", "Agent-shaped output", "--agent --select", "Compact JSON and field selection for low-token agent workflows." ], "path": "library/education/lawhub", "printer": "nolan", "printer_name": "Nolan McCafferty", "creator": { "handle": "nolan", "name": "Nolan McCafferty" }, "contributors": [ { "handle": "tmchow", "name": "Trevin Chow" } ] }, { "name": "lemonsqueezy", "category": "payments", "api": "Lemon Squeezy", "description": "Every Lemon Squeezy resource, plus a local SQLite mirror that surfaces MRR, churn, license seats", "search_terms": [ "lemonsqueezy", "Lemon Squeezy", "lemonsqueezy-pp-cli", "Every Lemon Squeezy resource, plus a local SQLite mirror that surfaces MRR, churn, license seats, and discount-campaign pace no other LS tool ships.", "Revenue snapshot", "revenue-snapshot", "Point-in-time revenue rollup combining LS's denormalized 30-day/lifetime store counters with refund-adjusted net from local orders.", "MRR trend", "mrr-trend", "Weekly MRR over a sliding window, classified as new / renewal / refunded with a week-over-week net delta.", "Churn watch", "churn-watch", "Lists subscriptions that flipped to past_due/unpaid/cancelled/expired in a window, with customer email and dollar exposure per row.", "Dunning alert", "dunning-alert", "Lists subscription-invoices with status=failed whose parent subscription is still active or past_due — the recoverable window.", "License-key roll-up", "license-rollup", "Per-variant and per-key activation statistics joined across license-keys, license-key-instances, and variants.", "Refund cascade", "refund-cascade", "Given a refunded order ID, walks order → order-items → license-keys → instances, then optionally disables the keys via --apply.", "Campaign watch", "campaign-watch", "Per discount code: redemptions used vs cap, redemption velocity over last 24h, projected sellout time at current pace (needs >=6h of redemption activity to stabilise).", "Webhook audit", "webhook-audit", "Cross-store webhook coverage matrix grouped by URL host, flagging stale destinations (localhost, ngrok, *.test, *.local)." ], "path": "library/payments/lemonsqueezy", "printer": "jcastillo725", "printer_name": "Joseph Alvin Castillo", "creator": { "handle": "jcastillo725", "name": "Joseph Alvin Castillo" }, "mcp": { "binary": "lemonsqueezy-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 51, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "LEMONSQUEEZY_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "linear", "category": "project-management", "api": "Linear", "description": "Offline-capable, agent-native CLI for the Linear API with SQLite-backed sync, FTS5 search, cross-cycle comparison, project burndown, and pp_created fixture lifecycle for safe live testing.", "search_terms": [ "linear", "linear-pp-cli", "Today View", "today", "See all of your assigned issues across every team for today, ranked by priority and cycle deadline.", "Bottleneck Detection", "bottleneck", "See which team members are overloaded and which issues are blocked before sprint planning.", "Project Burndown", "projects burndown", "Project a project's landing date by linear-regressing remaining estimate against the team's measured velocity.", "Cycle Comparison", "cycles compare", "Side-by-side metrics between any two cycles: completion %, scope added, scope cut, carryover, average cycle time.", "Stale Issue Radar", "stale", "Find issues that haven't been touched in N days, grouped by team and project.", "Slipped Issues", "slipped", "Show what carried over from last cycle into this cycle, grouped by team and reason heuristic.", "Blocking Queue", "blocking", "Show issues you are blocking — sorted by downstream impact (downstream count × downstream priority).", "Duplicate Detection", "similar", "Find issues that look like duplicates of a query string using offline FTS5 fuzzy matching.", "Velocity Trends", "velocity", "Track sprint completion rates over the last N cycles to spot productivity trends.", "Initiatives Health", "Rolled-up portfolio view per initiative: child project progress, milestone target-vs-projected dates, slippage flags.", "At-Risk Milestones", "milestones at-risk", "List portfolio milestones whose projected landing date has slipped past their target, ranked by slip magnitude.", "Test Fixture Lifecycle", "pp-test list", "List Linear issues this CLI created in the current or named session, then archive them with pp-cleanup.", "Trust Mode Mutation Guard", "issues create --trust-mode strict", "Refuse mutations on Linear issues not in the local pp_created ledger when --trust-mode strict is set; works on create and any future mutation surface." ], "path": "library/project-management/linear", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "linear-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 28, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "LINEAR_API_KEY" ], "mcp_ready": "full", "spec_format": "graphql" } }, { "name": "loopnet", "category": "commerce", "api": "Loopnet", "description": "LoopNet shows you today — this CLI remembers, building the price-cut, days-on-market, and supply trends LoopNet...", "search_terms": [ "loopnet", "loopnet-pp-cli", "Price-cut detection", "price-cuts", "Surfaces every synced listing whose asking price dropped between syncs, with old price, new price, percent cut, and days on market at the cut.", "Days-on-market", "dom", "Computes true days on market for every live listing from the date the CLI first saw it, and flags aged inventory past a threshold.", "Market velocity", "velocity", "Reports absorption for a submarket: new listings, delistings, median days on market, and net supply change per period.", "Delisting detection", "delisted", "Lists listings present in a prior sync but absent now — sold, withdrawn, or expired.", "Cap-rate and yield distribution", "caprate", "Reports the cap-rate, NOI, and price-per-square-foot distribution (count, min, median, quartiles, max) for synced for-sale listings in a submarket, and flags listings whose cap rate falls outside the interquartile range.", "Distress and motivation scan", "distress", "Flags listings carrying motivation signals: price-reduced and must-sell keyword hits in the description, Ten-X auction listings, and recent price cuts.", "Submarket digest", "digest", "Rolls a synced submarket into one report: live supply count, recent price cuts, median days on market, new and delisted counts, and distress hits.", "Pipeline feed export", "feed", "Exports the latest synced submarket as a run-stamped JSON or CSV file, with records mapped to the six CRE market-intelligence data categories." ], "path": "library/commerce/loopnet", "printer": "melanson633", "printer_name": "melanson633", "creator": { "handle": "melanson633", "name": "melanson633" }, "mcp": { "binary": "loopnet-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "lunch-money", "category": "payments", "api": "Lunch Money", "description": "A Go CLI for Lunch Money's official v2 OpenAPI — offline SQLite store, subscription detection, and bulk smart...", "search_terms": [ "lunch-money", "Lunch Money", "lunch-money-pp-cli", "Bearer token from the Lunch Money developers page. The value IS the bearer token; the CLI prepends Authorization: Bearer for you.", "Subscription Detective", "transactions subscriptions", "Find regular-cadence merchant charges that are not yet linked to a recurring item, so you can promote them before subscription creep sneaks past you.", "Recurring Miss Audit", "recurring missing", "List recurring items whose next expected date falls in the requested month but have no matching transaction yet, so you can catch missed bills.", "Duplicate Charge Finder", "transactions duplicates", "Detect near-duplicate transactions in a window (same merchant, amount within tolerance, date within range) so you can group or delete them in bulk.", "Stale Balance Audit", "accounts stale", "Surface manual accounts and manual crypto whose balance has not been updated in N days, so net worth stays honest.", "Net Worth At Date", "net-worth on", "Reconstruct net worth at any historical date by walking balance_history across every account type, with last-known-balance carry-forward where needed.", "Bulk Smart Retag", "transactions retag", "Match transactions by regex on payee/notes via local FTS, preview the affected set, then bulk-apply tag/category changes via the API.", "Uncategorized Triage Inbox", "triage", "Pull all unreviewed transactions, compute a suggested category from prior categorizations of the same merchant, and optionally mass-apply the suggestion.", "Budget Burn-Down", "budgets burn", "For the current budget period, project end-of-month spend per category at the current linear rate and flag categories projected to overshoot.", "Morning Triage", "changed", "List everything created or edited in the local store since a cutoff (e.g. --since 8h, --since 2026-05-01). Use at session start to orient before taking action." ], "path": "library/payments/lunch-money", "printer": "salmonumbrella", "printer_name": "salmonumbrella", "creator": { "handle": "salmonumbrella", "name": "salmonumbrella" }, "mcp": { "binary": "lunch-money-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 59, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "LUNCHMONEY_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "mailchimp", "category": "marketing", "api": "Mailchimp Marketing", "description": "Every Mailchimp endpoint plus the workflow commands the API forces you to compose yourself.", "search_terms": [ "mailchimp", "Mailchimp Marketing", "mailchimp-pp-cli", "Subscribe and tag in one call", "subscribe", "Upsert a member by email and apply tags in a single command. Auto-computes the MD5 subscriber hash so you never see it.", "CSV bulk subscribe with batch decode", "bulk-subscribe", "Read a CSV, fan out through Mailchimp's /batches endpoint (the official 10-concurrent-connection escape hatch), poll until done, decode the tar.gz of JSONL results within the 10-minute response URL window, and print per-row outcomes.", "Campaign performance digest (single + rollup)", "digest", "Single-campaign mode (digest ) joins report + email-activity + ecommerce-product-activity into one summary with opens/clicks/bounces/revenue + top-clicked links + top-converted products. Rollup mode (digest --last N or --week) renders a multi-campaign summary table with aggregate stats. --md renders either as paste-ready markdown.", "Segment health audit", "segments audit", "Find empty segments, segments that haven't grown in 90 days, and segments not referenced by any recent campaign. Reads the segments endpoint and joins with member counts from the local SQLite store.", "Send-checklist CI gate", "send-checked", "Run the official send-checklist before sending. Exits 2 with the failing items if any have type=error or is_ready=false; otherwise sends.", "E-commerce attribution per campaign", "attribution", "Join a campaign's e-commerce product activity report with synced store orders to compute attributed revenue, top products by attributed revenue, and conversion rate (orders divided by opens).", "Per-domain deliverability rollup", "deliverability", "Roll up domain-performance reports across the last N campaigns. Surfaces per-domain (gmail.com, yahoo.com, outlook.com) bounce, spam, open, and click rates. Highlights domains performing below the account average.", "Head-to-head campaign comparison", "compare", "Side-by-side metric diff for two campaigns. Fetches both campaigns' report + email-activity in parallel, renders open rate / CTR / click-to-open / bounces / unsubscribes / revenue with a winner per metric, computes delta, and surfaces top differences (subject line, send time, audience size). --md renders as paste-ready markdown." ], "path": "library/marketing/mailchimp", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "mailchimp-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 291, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "MAILCHIMP_USERNAME", "MAILCHIMP_PASSWORD" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "marginalrevolution", "category": "media-and-entertainment", "api": "Marginal Revolution", "description": "Read, filter, and extract links from Marginal Revolution through its public RSS feed", "search_terms": [ "marginalrevolution", "Marginal Revolution", "marginalrevolution-pp-cli", "Read, filter, and extract links from Marginal Revolution through its public RSS feed", "Recent-feed search", "search", "Search the current public RSS feed by title, excerpt, body text, author, and category.", "Outbound link extraction", "links", "Extract external links from recent posts so agents can quickly follow cited sources.", "Feed taxonomy scan", "categories", "Summarize category counts in the current feed for quick topical orientation." ], "path": "library/media-and-entertainment/marginalrevolution", "printer": "hinuri", "printer_name": "Nuri Chang", "creator": { "handle": "hinuri", "name": "Nuri Chang" }, "mcp": { "binary": "marginalrevolution-pp-mcp", "transports": [ "stdio" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "marianatek", "category": "productivity", "api": "Mariana Tek", "description": "Search Mariana Tek studio schedules, book classes, watch cancellations, and sync reservations into an offline class catalog.", "search_terms": [ "marianatek", "Mariana Tek", "marianatek-pp-cli", "Every Mariana Tek booking feature, plus multi-tenant search, cancellation watching, and an offline class catalog no other tool has. Mariana Tek powers hundreds of boutique-fitness, yoga, sauna, and wellness studios via per-brand subdomains; this CLI works against any of them.", "Watch for cancellation", "watch", "Poll a sold-out class (or a filter) and emit a structured event the moment a spot opens — optionally auto-book in the same tick.", "Multi-tenant unified schedule", "schedule", "Query the merged class catalog across every tenant you have logged into, with structured filters that the per-tenant iframe widget cannot offer.", "Regulars / personal affinity", "regulars", "Group your local reservation history by instructor, class type, time-of-day, day-of-week, or location and rank the dimensions you actually use.", "Expiring credits + memberships", "expiring", "Surface credit packs and memberships about to lapse, with remaining balance and the classes that would consume them best.", "Cross-tenant calendar conflicts", "conflicts", "Read reservations across all logged-in tenants, optionally pull an exported ICS calendar, and flag overlapping intervals or insufficient buffer.", "FTS5 catalog search", "search", "Full-text search across cached class sessions, instructors, locations, and class types — ranks by BM25 and respects --any-tenant.", "Book-regular compound", "book-regular", "Resolve a natural slot key ('tue-7am-vinyasa') against the regulars table, find the next matching upcoming class, and book it.", "Multi-tenant doctor", "doctor", "Per-tenant token expiry, last-sync timestamp, row counts, and a live class-probe for reachability." ], "path": "library/productivity/marianatek", "printer": "salmonumbrella", "printer_name": "salmonumbrella", "creator": { "handle": "salmonumbrella", "name": "salmonumbrella" } }, { "name": "mercury", "category": "payments", "api": "Mercury", "description": "Business banking API for accounts, transactions, payments, recipients, cards, invoices, treasury, and webhooks", "search_terms": [ "mercury", "mercury-pp-cli", "Business banking API for accounts, transactions, payments, recipients, cards, invoices, treasury, and webhooks", "Agent money movement plan", "workflow payment-plan", "Builds a read-only approval plan with body, idempotency key, dry-run command, and execute command before payment or transfer writes.", "Agent-native local archive", "workflow archive", "Syncs supported Mercury resources into a local SQLite store for offline search and analytics.", "Structured command introspection", "agent-context", "Emits machine-readable command metadata for agents and MCP hosts." ], "path": "library/payments/mercury", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "mercury-pp-mcp", "transports": [ "stdio" ], "tool_count": 75, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "MERCURY_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "meta-ads", "category": "marketing", "api": "Meta Ads", "description": "The first agent-native Meta Ads CLI with local SQLite history and compound queries the live API cannot answer.", "search_terms": [ "meta-ads", "Meta Ads", "meta-ads-pp-cli", "The first agent-native Meta Ads CLI with local SQLite history and compound queries the live API cannot answer.", "Creative-Fatigue Observatory", "fatigue", "Detect ads whose CPM is drifting up, frequency is climbing, and CTR is falling across a configurable window.", "Creative Decay Curve", "decay", "Compare a creative's first-impression CTR against its current CTR, with projected dead-date.", "Audience Overlap Cartographer", "overlap", "Pairwise overlap percentages across custom audiences, with cannibalization recommendations.", "Learning-Phase Forensics", "learning", "Surface adsets stuck in algorithmic learning >N days with root-cause hint (budget too low, audience too narrow, events too sparse).", "Spend Reconciliation", "reconcile", "Per-day diff between Meta-reported account spend and sum-of-insights spend; flags days where attribution drift exceeds threshold.", "Bottleneck Surfacer", "bottleneck", "Highest-spend adsets with worst ROAS, ranked with 'why' column joining learning state and effective status.", "Stale Active Ads", "stale", "Active ads with zero impressions in N days.", "Account Inventory Roll-up", "inventory", "Group every ad in an account by effective_status, surface ads where configured status='ACTIVE' but effective_status='WITH_ISSUES' or 'DISAPPROVED'." ], "path": "library/marketing/meta-ads", "printer": "sdhilip200", "printer_name": "Dhilip Subramanian", "mcp": { "binary": "meta-ads-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 11, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "META_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "midjourney", "category": "ai", "api": "Midjourney", "description": "Inspect Midjourney jobs, queue, folders, and discovery feeds from the terminal", "search_terms": [ "midjourney", "midjourney-pp-cli", "Inspect Midjourney jobs, queue, folders, and discovery feeds from the terminal", "Submit Midjourney image jobs", "imagine", "Submit Midjourney imagine jobs through the browser-observed /api/submit-jobs flow, including model/version, style, reference, draft, and tuning flags.", "Rerun existing jobs", "rerun", "Submit the observed Midjourney reroll payload for an existing job ID.", "Export rendered images", "download", "Export rendered Midjourney job images through Chrome CDP when direct CDN fetches are blocked by Cloudflare or CORS." ], "path": "library/ai/midjourney", "printer": "dave-agent-cerebro", "printer_name": "Dave Fano", "creator": { "handle": "dave-agent-cerebro", "name": "Dave Fano" }, "mcp": { "binary": "midjourney-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 12, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "MIDJOURNEY_COOKIE_HEADER" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "mobalytics-lol", "category": "media-and-entertainment", "api": "mobalytics-lol", "description": "Every League of Legends aggregator, plus a local SQLite for cross-champion queries no single page surfaces.", "search_terms": [ "mobalytics-lol", "mobalytics-lol-pp-cli", "Counter-pool analysis", "counter-pool", "Given our champion pool and the enemy pool, return the full matchup matrix ranked by WR delta with sample-size floor — the SQL coaches do in their head.", "Patch meta-shift", "meta-shift", "Diff two tier_snapshots and list champions that gained or lost ≥1 tier or ≥2% WR since a prior patch, with sample-size guard.", "Head-to-head champion compare", "compare", "Side-by-side join across tier, build, counters, and matchups for two champions — including item-overlap percentage.", "ARAM batch item-set export", "item-set", "Write LoL client item-set JSON for N champions in ARAM mode in one command, refreshing all stale files in the client config folder.", "Duo-finder with candidate-pool filter", "duo-finder", "Best support pairings for a given ADC, restricted to a candidate support pool — coaches' player pools are fixed.", "Personal pool tier digest", "pool-digest", "For each champion in your pool: current tier, WR delta since last patch, top-1 counter, top-1 synergy — all in one composite query.", "Power-spike phase filter", "power-spike", "List champions ranked by early/mid/late spike strength for a chosen role — inverts Mobalytics's per-champion data into a leaderboard.", "Flex-pick detector", "flex", "Champions that are ≥A-tier in 2+ roles for the same patch and rank — the SQL no aggregator surfaces because they index by role first.", "Region-split tier compare", "tier-list", "Same patch, same rank — three regions side-by-side. Surfaces pick-priority drift between KR/EUW/NA that no aggregator defaults to." ], "path": "library/media-and-entertainment/mobalytics-lol", "printer": "QuantumGlitch", "printer_name": "QuantumGlitch", "creator": { "handle": "QuantumGlitch", "name": "QuantumGlitch" } }, { "name": "monarch-money", "category": "payments", "api": "Monarch Money", "description": "Read Monarch Money account balances, tags, transactions, and cashflow summaries from the terminal.", "search_terms": [ "monarch-money", "Monarch Money", "monarch-money-pp-cli", "Use Monarch Money account balances, tags, transactions, cashflow summaries, and explicit transaction CRUD workflows from the terminal.", "Guarded GraphQL query runner", "query", "Runs custom read-only Monarch Money GraphQL query files and refuses files that contain GraphQL mutations.", "Dry-run transaction CRUD", "transactions create|update|set-tags|delete", "Creates, updates, tags, and deletes individual transactions through explicit commands that dry-run by default and require --yes to apply." ], "path": "library/payments/monarch-money", "printer": "count", "printer_name": "Count", "creator": { "handle": "count", "name": "Count" } }, { "name": "movie-goat", "category": "media-and-entertainment", "api": "Movie Goat", "description": "The movie CLI that combines TMDb's discovery engine with OMDb's multi-source ratings — and ships a SQLite watchlist that flags what's streaming on your services right now.", "search_terms": [ "movie-goat", "Movie Goat", "movie-goat-pp-cli", "Tonight Picker", "tonight", "Pick what to watch tonight from trending titles actually streaming on your services.", "Multi-Source Ratings Card", "ratings", "TMDb + IMDb + Rotten Tomatoes + Metacritic ratings for any title in one card.", "Marathon Planner", "marathon", "Plan a franchise marathon with watch order, total runtime, and suggested breaks.", "Career Timeline", "career", "Explore any actor or director's full filmography with ratings and chronology.", "Watchlist", "watchlist list", "Local SQLite watchlist; flag rows that are streamable on your services.", "Head-to-Head Versus", "versus", "Compare two movies or shows side-by-side across ratings, cast, runtime, and streaming.", "Recommendation Queue", "queue", "Suggest next-watch picks derived from your watchlist's recommendations and similars.", "Recurring Collaborators", "collaborators", "List people who appear in 2+ of a person's credits, with count and titles." ], "path": "library/media-and-entertainment/movie-goat", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "movie-goat-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 25, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "TMDB_API_KEY", "OMDB_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "multimail", "category": "social-and-messaging", "api": "MultiMail", "description": "Every MultiMail feature plus oversight velocity, trust ladder status, and cross-mailbox search no other tool has.", "search_terms": [ "multimail", "multimail-pp-cli", "Fleet health", "Single-command account-wide health snapshot: mailbox count, oversight queue depth, webhook delivery rate, domain verification status, usage vs plan limits.", "Bulk oversight decide", "oversight bulk-decide", "Approve or reject all pending emails matching a filter (by mailbox, sender, or age) in one command.", "Oversight velocity", "See approval/rejection rates and median decision latency per mailbox across your entire fleet.", "Trust ladder status", "trust status", "Fleet-wide view of each mailbox's oversight mode, time-at-level, and upgrade eligibility.", "Trust timeline", "Per-mailbox chronological history of every oversight mode change with timestamps and who triggered it.", "Send and wait", "emails send-and-wait", "Send an email and block until a reply arrives or timeout — the agent test loop in one command.", "Allowlist coverage", "mailboxes allowlist coverage", "See what percentage of recent recipients are covered by allowlist patterns vs gated.", "Inbox health", "Per-mailbox health snapshot: unread count, oldest unread age, reply rate, and thread depth.", "Stale thread detection", "threads stale", "List conversation threads with no reply in N days — surfaces dropped conversations.", "Compliance snapshot", "audit compliance", "Cross-entity compliance report: oversight bypass count, approval/rejection counts, decision latency percentiles per mailbox.", "Webhook health", "webhooks health", "Per-webhook success rate, failure count, last delivery timestamp, and consecutive failure streak." ], "path": "library/social-and-messaging/multimail", "printer": "H179922", "printer_name": "H179922", "creator": { "handle": "H179922", "name": "H179922" }, "mcp": { "binary": "multimail-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 86, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "MULTIMAIL_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "myfitnesspal", "category": "productivity", "api": "MyFitnessPal", "description": "Pull every meal you ever logged out of MyFitnessPal — per-food CSV, agent-shaped trends, and a local SQLite store...", "search_terms": [ "myfitnesspal", "myfitnesspal-pp-cli", "Pull your MyFitnessPal diary, foods, exercises, and measurements into a local SQLite store, run trend reports offline, and export per-food CSV that the official UI never gives you.", "MyFitnessPal closed their public API. This CLI reads cookies from your logged-in\nbrowser session (Chrome, Firefox, Safari, Brave) the same way python-myfitnesspal\nand AdamWalt's MCP server do. Log in at myfitnesspal.com, then run:\n\n myfitnesspal-pp-cli auth login --chrome\n\nCookies are read from the .myfitnesspal.com domain. The api.myfitnesspal.com\nsubdomain receives them automatically because the session cookie is host-scoped\nto the parent domain. Some commands additionally need an mfp-user-id header,\nwhich the CLI bootstraps via /user/auth_token after first login.", "Per-food CSV export", "export csv", "Export your food diary to CSV with one row per logged food, not per meal. Premium MFP only ships per-meal CSVs.", "Agent context dump", "context", "Single-call snapshot of the last N days: diary totals, weight trend, current goals, recent foods, macro deltas — sized for an agent context window.", "Top foods by nutrient driver", "analytics top-foods", "Pareto query: which N foods drove X% of your protein/carbs/fat/fiber/sugar/calories over a window?", "Find food in diary (FTS)", "find", "Full-text search across every diary entry and food in the local store. Returns date, meal, servings, calories per match.", "Adherence streak", "analytics streak", "Longest run of consecutive days where calorie totals fall within ±tolerance of your goal." ], "path": "library/productivity/myfitnesspal", "printer": "nickscarabosio", "printer_name": "Nick Scarabosio", "creator": { "handle": "nickscarabosio", "name": "Nick Scarabosio" }, "mcp": { "binary": "myfitnesspal-pp-mcp", "transports": [ "stdio" ], "tool_count": 15, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "namecheap", "category": "developer-tools", "api": "Namecheap", "description": "Curated OpenAPI description for Namecheap's XML API. The real API uses a single", "search_terms": [ "namecheap", "namecheap-pp-cli", "Manage Namecheap domains, DNS, account balances, pricing, contacts, TLDs, and SSL metadata from the terminal using Namecheap’s XML API.", "XML-to-JSON envelope conversion", "users get-balances", "Converts Namecheap XML envelopes into stable JSON so agents can filter, select, and compose responses without XML parsing.", "Namecheap query-auth injector", "domains check", "Maps clean env vars to Namecheap’s required ApiUser/ApiKey/UserName/ClientIp query parameters and normalizes command-shaped paths to /xml.response.", "Safety-first domain operations", "domains check --dry-run", "Supports dry-run previews and explicit destructive MCP annotations for paid and DNS-changing operations." ], "path": "library/developer-tools/namecheap", "printer": "cathryn-lavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathryn-lavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "namecheap-pp-mcp", "transports": [ "stdio" ], "tool_count": 22, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "NAMECHEAP_USERNAME", "NAMECHEAP_API_KEY", "NAMECHEAP_CLIENT_IP", "NAMECHEAP_SANDBOX" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "nasa-images", "category": "media-and-entertainment", "api": "NASA Image and Video Library", "description": "Every NASA Image and Video Library endpoint, plus a local SQLite mirror, FTS search, resumable bulk download,...", "search_terms": [ "nasa-images", "NASA Image and Video Library", "nasa-images-pp-cli", "Resumable album bulk download", "download album", "Bulk-download every asset in a curated NASA album with byte-range resume — re-runs pick up exactly where the last failed transfer left off.", "Caption text fetch", "captions fetch", "Returns the captions file CONTENT (.srt or .vtt), not just the URL — with an optional `--format text` mode that strips cue numbers and timecodes for readable transcripts.", "Metadata sidecar with leak-field filter", "metadata fetch", "Follows the /metadata/{id} indirection, fetches the metadata.json sidecar, flattens AVAIL:* and EXIF fields, and drops internal-path leak fields (SourceFile, File:Directory, AVAIL:Owner).", "Deterministic best-variant picker", "assets best", "Parses an asset's rendition manifest, classifies each file by variant (orig/large/medium/small/thumb), applies a caller preference order with optional byte ceiling, and prints exactly one URL.", "Local chronological FTS search (recent)", "recent", "FTS5 search over the synced local mirror (title, description, description_508, keywords, album), with chronological sort the upstream API doesn't expose.", "NASA center profile", "center profile", "Local aggregation over the synced cache: counts by media_type, year-bucket histogram, top keywords, and top photographers for one of the 11 NASA centers.", "Unused-in-album anti-join", "unused-in", "Lists nasa_ids in a curated album that haven't been downloaded yet locally — anti-join against the downloads ledger.", "Topic timeline histogram", "timeline", "Local GROUP BY strftime('%Y-%m', date_created) over FTS-matched rows; prints month-bucket counts showing when a topic got coverage.", "Citation string generator", "citation", "Generates a ready-to-paste citation string (APA / MLA / Chicago) from cached metadata (photographer, date, center, nasa_id, URL)." ], "path": "library/media-and-entertainment/nasa-images", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "nasa-images-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "notion", "category": "productivity", "api": "Notion", "description": "Every Notion database queryable offline — cross-workspace SQL joins, stale detection, and relation graph traversal...", "search_terms": [ "notion", "notion-pp-cli", "Workspace Change Diff", "changed", "Show everything in the workspace added, edited, or deleted since your last sync or a given timestamp.", "Stale Page Detection", "stale", "List pages and records not edited in N days, filterable by database, parent, or tag." ], "path": "library/productivity/notion", "printer": "neektza", "printer_name": "Nikica Jokic", "creator": { "handle": "neektza", "name": "Nikica Jokic" }, "mcp": { "binary": "notion-pp-mcp", "transports": [ "stdio" ], "tool_count": 47, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "NOTION_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "nse-india", "category": "developer-tools", "api": "NSE India", "description": "Fetch NSE India quotes, market status, order books, filings, indices, and cached equity analytics from the terminal.", "search_terms": [ "nse-india", "NSE India", "nse-india-pp-cli", "Fetch NSE India quotes, market status, order books, filings, indices, and cached equity analytics from the terminal.", "Delivery Spike Detector", "delivery-spike", "Flags stocks where today's delivery-to-traded ratio is significantly above their 20-session rolling average — early signal of institutional accumulation.", "Pre-Market IEP Drift Analyzer", "iep-drift", "Tracks how accurately each stock's pre-market IEP (Indicative Equilibrium Price) predicts the actual opening price over 30 sessions.", "Announcement Flood Detector", "announcement-flood", "Surfaces companies whose filing cadence has spiked above their own historical baseline — a leading indicator of imminent corporate actions like rights issues or mergers.", "Sector Breadth Analyzer", "sector-breadth", "Computes advance/decline ratio, median pChange, and delivery breadth for every constituent of a named index — far richer than the index headline number.", "Index Basket Contributor", "index-driver", "Decomposes any day's index move into per-stock point contributions — identifies the 3-5 stocks driving 80%+ of the index change.", "Portfolio P&L Tracker", "portfolio pnl", "Tracks unrealized P&L, daily delta, and drawdown for a personal holdings file against the synced quote history.", "Portfolio Margin Health Dashboard", "portfolio margin-health", "Aggregates VaR margin, extreme loss margin, and adhoc margin across a full portfolio — shows total margin-at-risk and which holdings are the biggest margin consumers.", "Delivery-Price Divergence Scanner", "delivery-divergence", "Detects when price is rising but delivery % is falling (distribution signal) or price falling while delivery is rising (accumulation signal) — separates smart money from retail." ], "path": "library/developer-tools/nse-india", "printer": "lavs9", "printer_name": "Mayank Lavania", "creator": { "handle": "lavs9", "name": "Mayank Lavania" } }, { "name": "numista", "category": "other", "api": "Numista Documentation", "description": "Every Numista catalogue and collection feature, with offline FTS5 search and a monthly-quota tracker no Numista SDK has.", "search_terms": [ "numista", "Numista Documentation", "numista-pp-cli", "Monthly quota tracker with short-circuit", "--quota", "Print the current month's used/remaining/reset Numista quota and exit, with zero API calls.", "Lookup-log audit", "audit", "Query the local lookup_log directly to see every API call, its endpoint, duration, and cache-hit status — aggregated by day, endpoint, or type ID.", "Quota-aware batch lookup", "types batch", "Parse a CSV / JSONL / text list of Numista type IDs (N# numbers) and look up each one against the API — with cache reuse, --dry-run cost forecast, and --resumable splitting across UTC months.", "Series scan", "types series", "For one type (e.g., N#11013 — Australia 3 pence George VI), pull every year-of-issue, every issue's prices across all grades, and persist the full price/mintage curve to the local store — then print the scarcity and price-evolution table.", "Collection valuation", "collection value", "Sum the current estimated value of every item in a user's Numista collection, fetching missing prices on demand, and emit a per-item breakdown sorted by value.", "Stale-price refresh", "refresh", "Refresh cached types by re-fetching only fields that actually change (prices, mintage) while leaving cataloger-set identity fields untouched. --dry-run --older 30d lists what needs refresh without spending a call.", "Issuer-scoped crawl", "crawl issuer", "Crawl every type from one issuer (e.g., 'australia') matching a year range, persist to local store, and print a summary table. Forecasts call cost as %-of-monthly-quota and requires confirmation before crawling.", "Watchlist", "Track price changes for a set of types over time. `watchlist add N#` registers a type; `watchlist check` refreshes prices, snapshots them to the prices table with a timestamp, and prints the diff since the last snapshot.", "Bulk collection import", "users collected-items add --from-file", "Import a list of new collected items from CSV / JSONL with --dry-run cost forecast. Idempotent on (user_id, type_id, issue_id, grade) so re-running the same file is safe.", "Collection-folder hydrate", "users collections hydrate", "Given a collection-folder-id, fan out get-item for every item, optionally fan out get-prices, and persist everything to the local store. Refuses to start when remaining quota is less than the item count." ], "path": "library/other/numista", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "numista-pp-mcp", "transports": [ "stdio" ], "tool_count": 17, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "NUMISTA_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "nvd", "category": "developer-tools", "api": "National Vulnerability Database", "description": "The NVD is the U.S. government repository of standards-based vulnerability management data.", "search_terms": [ "nvd", "National Vulnerability Database", "nvd-pp-cli", "CVE search", "json search-cves", "Search National Vulnerability Database CVEs from the JSON API with agent-safe output controls.", "CPE search", "json search-cpes", "Search CPE names for affected products and platforms before vulnerability lookups.", "Offline vulnerability archive", "workflow archive", "Archive vulnerability data locally for repeatable security research and offline analysis." ], "path": "library/developer-tools/nvd", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "nvd-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "nylas", "category": "productivity", "api": "Nylas", "description": "Every Nylas API, plus a local SQLite mirror, cross-grant search, and confirm-by-hash sending no other Nylas tool has.", "search_terms": [ "nylas", "nylas-pp-cli", "Local sync", "sync", "Pull messages, events, threads, and contacts for one or all grants into a local SQLite mirror with per-(grant, resource) cursors so re-runs are incremental.", "Since-window query", "since", "Query the local mirror for resources changed in the last N (e.g. 2h, 24h) across all grants in one shot.", "Cross-grant FTS search", "search", "FTS5 search over messages, threads, events, and contacts spanning every connected grant in a single query (use --type to filter by resource).", "Export", "Stream the local mirror (or a filtered slice) to NDJSON for downstream analytics tools like DuckDB or notebooks.", "Contact gravity", "gravity", "Rank contacts by cross-grant interaction weight (sent + received + meeting-attended), unified by email address.", "Response-time analytics", "response-time", "Compute median and p90 first-response latency on threads where the grant-holder replied, sliced by grant or counterparty domain.", "Webhook replay", "webhook-replay", "Re-fire any past webhook delivery from the local store into a local handler URL, optionally filtered by trigger or grant.", "Send-preview confirm-by-hash", "grants messages send", "Use --dry-run to print the exact wire payload for any grants messages send call; pair with --yes (or --agent) to bypass interactive confirmation only when you've reviewed the preview.", "Idempotent send", "Pass the global --idempotent flag so an already-existing create result is treated as a successful no-op, making the send safe to retry inside an agent loop.", "Grants doctor", "Health-check every grant: token expiry, missing scopes for advertised features, recent webhook failures, sync lag.", "SQL escape hatch", "sql", "Read-only SQL query against the local mirror with --json output.", "Agent mode", "--agent (global flag)", "Single flag that forces --json --compact --no-input --no-color --yes defaults so any read command is LLM-safe in one switch." ], "path": "library/productivity/nylas", "printer": "natekettles", "printer_name": "Nathan Kettles", "creator": { "handle": "natekettles", "name": "Nathan Kettles" }, "mcp": { "binary": "nylas-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 211, "public_tool_count": 1, "auth_type": "bearer_token", "env_vars": [ "NYLAS_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "nynj-world-cup-concierge", "category": "travel", "api": "NYNJ World Cup Concierge", "description": "Extract public NYNJ World Cup Concierge Explore NYNJ, Fan Experiences, and Watch Parties guidance.", "search_terms": [ "nynj-world-cup-concierge", "NYNJ World Cup Concierge", "nynj-world-cup-concierge-pp-cli", "Read-only extractor for the public NYNJ World Cup Concierge Explore NYNJ, Fan Experiences, and match-viewing guidance.", "Trip-window fan experience extraction", "extract --category Fan Experiences --date-window-start 2026-07-02 --date-window-end 2026-07-06 --exclude-undated --agent", "Filters official NYNJ fan experiences to activities whose public date ranges overlap a trip window, excluding undated guidance from itinerary feeds." ], "path": "library/travel/nynj-world-cup-concierge", "printer": "amit", "printer_name": "Amit", "creator": { "handle": "amit", "name": "Amit" }, "contributors": [ { "handle": "ridegoodwaves", "name": "Amit" } ] }, { "name": "obsidian", "category": "productivity", "api": "Obsidian", "description": "SYNTHETIC OpenAPI 3.0 spec mapping Obsidian's official command-line interface (v1.12+) to virtual REST endpoints....", "search_terms": [ "obsidian", "obsidian-pp-cli", "Note-taking knowledge base reached through the official Obsidian CLI shipped in the desktop app (v1.12+). Vault is local; no public network API.", "Vault health score", "health", "Composite 0-100 vault-health score combining connectivity (1 - orphan ratio), freshness (1 - share of notes >N days old), integrity (1 - broken-wikilink ratio), and consistency (1 - frontmatter-drift ratio). --explain prints the formula and raw inputs.", "Broken wikilinks with source context", "broken", "Unresolved wikilinks joined against the local mirror so each missing target carries the path and title of the note that pointed at it — answers 'where is the broken link' not just 'what is broken'.", "Raw SQL on the vault mirror", "vault-sql", "Run arbitrary SELECT/WITH queries against the local obsidian SQLite mirror (notes, obsidian_tags, obsidian_links, frontmatter_kv, vault_sync_state). Read-only by driver mode plus a query-shape gate.", "Mirror-ranked orphans", "orphans", "Vault notes with no incoming wikilinks, ranked by modification age with title, mtime, and word count for triage. Falls back to the live `obsidian orphans` subcommand when the mirror is empty.", "Stale notes still being linked", "stale", "Notes whose modified_at is older than N days AND have at least one incoming wikilink — the incoming-link gate flags 'outdated reference' candidates distinct from plain orphans. --include-orphans relaxes the gate.", "Mirror coverage report", "load", "Quick vault-mirror inventory (note count, distinct tag count, link counts by type, last sync time). The thin alternative to `health` for a fast 'how full is the mirror' answer before running Tier-3 analytics." ], "path": "library/productivity/obsidian", "printer": "DrDriftwood", "printer_name": "Angelo Pullen", "creator": { "handle": "DrDriftwood", "name": "Angelo Pullen" }, "mcp": { "binary": "obsidian-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 13, "public_tool_count": 13, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "offerup", "category": "commerce", "api": "OfferUp", "description": "Search local OfferUp listings from your terminal, keep them in a local database", "search_terms": [ "offerup", "offerup-pp-cli", "Search local OfferUp listings from your terminal, keep them in a local database, and spot underpriced deals before anyone else — no login and no paid key for the things that matter most.", "The real going rate", "price-check", "See the real going rate for an item in your area — median, 25th/75th percentile, min, max, and the firm-vs-negotiable split — computed across every listing you've pulled.", "Spot the underpriced finds", "deals", "Surface listings priced a chosen percentage below the local median for that item — the underpriced finds, ranked by how far under they are.", "What's new since you looked", "new-since", "Show only the listings that appeared since a cutoff for a saved search, so you never re-scan items you already saw.", "Catch price drops", "price-drops", "Detect listings whose price fell between syncs — the same item, now cheaper — sorted by the size of the drop.", "Size up a seller", "seller-scan", "Pull a seller's full synced inventory alongside their reputation badges (business/dealer/TruYou), join date, and the median asking price across their listings.", "Daily deal briefing", "digest", "A single composite report for a saved search combining what's new, what dropped in price, and what's underpriced." ], "path": "library/commerce/offerup", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "offerup-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "cookie", "env_vars": [ "OFFERUP_COOKIE" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "ollama-cloud", "category": "ai", "api": "Ollama Cloud", "description": "Routes every prompt to the right hosted Ollama model. Wraps chat, embeddings, catalog, and the OpenAI-compatible...", "search_terms": [ "ollama-cloud", "Ollama Cloud", "ollama-cloud-pp-cli", "Ollama Cloud is Ollama's hosted inference API.", "Model advisor", "advise", "Picks the right Ollama Cloud model for a prompt by combining live catalog, heuristic prompt-feature extraction, curated cost/latency metadata, and an optional cheap meta-LLM tiebreak.", "Side-by-side comparison", "compare", "Runs the same prompt against N hosted models in parallel and emits side-by-side response, tokens, and latency.", "Advisor explain", "With --explain, advise emits the full scoring trace: feature extraction, per-model scores, filter passes, tiebreak rationale.", "Advisor replay", "advise-replay", "Replays advisor recommendations and reports divergence between recommended models and actually-chosen models. Foundation for the divergence canary; the prompt corpus is not retained so judge-LLM scoring is not in scope until a corpus sidecar ships.", "Budget probe", "budget", "Probes the free-tier weekly cap with a 1-token chat. Parses Ollama Cloud's 429 prose and emits a structured verdict (ok | exhausted | unknown) with the upgrade URL so agents can pre-flight quota before launching long sessions.", "Cost trace", "cost-trace", "Aggregates advisor-log cost estimates over a time window; compares per-model and per-task-hint spend." ], "path": "library/ai/ollama-cloud", "printer": "rvdlaar", "printer_name": "Rick van de Laar", "creator": { "handle": "rvdlaar", "name": "Rick van de Laar" }, "mcp": { "binary": "ollama-cloud-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 8, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "OLLAMA_CLOUD_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "open-meteo", "category": "other", "api": "Open-Meteo", "description": "Forecasts, historicals, marine, air quality, flood, climate, ensemble, and seasonal data from Open-Meteo's free tier.", "search_terms": [ "open-meteo", "open-meteo-pp-cli", "Forecasts, historicals, marine, air quality, flood, climate, ensemble, and seasonal data from Open-Meteo's free tier.", "Forecast diff", "See exactly what changed since the last forecast pull for this location — temperature deltas, new precipitation hours, weather-code shifts.", "Climate-vs-now comparison", "compare", "Compare today's weather (or any forecast hour) against the 30-year climate normal for that date and place.", "Activity verdict", "is-good-for", "Verdict (GO / CAUTION / STOP) for surfing, skiing, hiking, running, biking based on combined forecast + marine + air-quality thresholds.", "Climate normals", "normals", "Compute the 30-year (or user-specified) climate normal for any (location, day-of-year, variable) tuple.", "Multi-location panel", "panel", "One-command snapshot panel for N locations side-by-side — batched in a single Open-Meteo call when possible.", "Forecast accuracy back-test", "accuracy", "For any past date, compare what the model predicted (cached snapshot) against what actually happened (archive ground truth).", "Weather-code mix", "weather-mix", "Distribution of WMO weather conditions (% clear, % rain, % storms, etc.) over an arbitrary historical window for a place." ], "path": "library/other/open-meteo", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "open-meteo-pp-mcp", "transports": [ "stdio" ], "tool_count": 11, "public_tool_count": 11, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "openalex", "category": "other", "api": "OpenAlex", "description": "The OpenAlex API provides access to a comprehensive catalog of scholarly works, authors, sources, institutions,...", "search_terms": [ "openalex", "openalex-pp-cli", "Free scholarly graph API for works, authors, sources, institutions, topics, funders, and citation-aware research intelligence.", "Agent-ready works search", "works list", "Search scholarly works with compact JSON, field selection, filters, sorting, and live API fallback.", "Author discovery", "authors list", "Search authors and retrieve canonical OpenAlex author records for citation and collaborator research.", "Institution discovery", "institutions list", "Search institutions with country/type metadata for affiliation and ecosystem analysis.", "Source discovery", "sources list", "Search journals, repositories, and venues with compact agent-oriented output.", "Topic taxonomy lookup", "topics list", "Explore OpenAlex topics for research-area discovery and downstream filtering." ], "path": "library/other/openalex", "printer": "hiten-shah", "printer_name": "Hiten Shah", "creator": { "handle": "hiten-shah", "name": "Hiten Shah" }, "mcp": { "binary": "openalex-pp-mcp", "transports": [ "stdio" ], "tool_count": 43, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "OPENALEX_API_KEY" ], "mcp_ready": "full" } }, { "name": "openfda", "category": "developer-tools", "api": "OpenFDA", "description": "The FDA safety data terminal. Every drug adverse event, device recall, food contamination, and product label the FDA...", "search_terms": [ "openfda", "openfda-pp-cli", "Optional. Without key: 40 req/min, 1K/day. With key: 240 req/min, 120K/day. Get a free key at https://open.fda.gov/apis/authentication/", "Drug Event Signal Tracking", "drug-events trend", "Track adverse event signal over time for a drug — spot emerging safety signals by charting report frequency across quarters or years", "Drug Reaction Comparison", "drug-events compare", "Compare adverse reaction profiles between two drugs side-by-side — see which reactions are unique to each and which overlap", "Reaction Co-occurrence", "drug-events cooccur", "Find reaction co-occurrence patterns for a drug — which side effects tend to appear together in the same report", "Polypharmacy Analysis", "drug-events polypharmacy", "Analyze adverse events for drug combinations — find safety signals that only appear when specific drugs are taken together", "Recall-Event Correlation", "drug-recalls correlate", "Correlate drug recall enforcement actions with adverse event report spikes — see if recalls follow signal escalation", "Device Inventory Risk Check", "device check", "Check a CSV inventory of medical devices against FDA recall and adverse event databases — flag devices with active safety concerns", "Manufacturer Dossier", "Build a cross-domain intelligence dossier for any manufacturer — recalls, adverse events, 510(k) clearances, and PMA approvals aggregated in one view" ], "path": "library/developer-tools/openfda", "printer": "H179922", "printer_name": "H179922", "creator": { "handle": "H179922", "name": "H179922" }, "mcp": { "binary": "openfda-pp-mcp", "transports": [ "stdio" ], "tool_count": 25, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "FDA_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "openipa", "category": "developer-tools", "api": "IndicePA", "description": "Search Italy's IndicePA for public administrations, PEC addresses, IPA codes, billing codes, and compliance details.", "search_terms": [ "openipa", "IndicePA", "openipa-pp-cli", "Search Italy's IndicePA for public administrations, PEC addresses, IPA codes, billing codes, and compliance details.", "Doctor compliance PA", "doctor", "Dato un codice fiscale, verifica in un colpo se l'ente ha SFE attivo, NSO abilitato e domicilio digitale — checklist compliance PA completa.", "Batch CF → codici destinatario SDI", "fatturazione batch", "Legge CF da stdin, chiama WS01_SFE_CF in parallelo, restituisce NDJSON con CF + cod_uni_ou + stato_canale per pipeline di fatturazione.", "Stats aggregati per regione/categoria", "stats", "Conta enti, AOO, UO e percentuale con SFE/NSO attivo per regione o categoria — tutto da SQLite locale senza API call.", "Enti senza canale SFE attivo", "report sfe-mancante", "Lista di tutti gli enti non abilitati alla fatturazione elettronica su SDI, filtrabile per regione e categoria — per audit compliance.", "Struttura gerarchica ente", "enti tree", "Vista ad albero di un ente con tutte le sue AOO e UO associate — Ente → AOO[N] → UO[M] in output testuale o JSON annidato.", "Verifica domicilio digitale attivo/storico", "domicilio verifica", "Controlla se una PEC è il domicilio digitale attivo di un ente, storico (cessato) o sconosciuta — produce stato classificato.", "Ricerca AOO per nome", "aoo cerca", "Cerca Aree Organizzative Omogenee per descrizione parziale — endpoint WS18 che riempie il gap asimmetrico rispetto alla ricerca enti.", "Ricerca per indirizzo sede", "sede enti", "Cerca enti IPA per indirizzo sede, comune e categoria — non disponibile nei web service ufficiali IPA (WS01-WS23), accede al portale PortaleServices.", "Ricerca AOO per sede", "sede aoo", "Cerca AOO per sede geografica e denominazione, con auto-paginazione --tutti — non disponibile nei web service ufficiali IPA.", "Responsabile Transizione Digitale", "rtd cerca", "Cerca il RTD di un ente per nominativo, ente o area geografica — dato non esposto dai web service ufficiali IPA (WS01-WS23).", "RTD con email", "rtd email", "Cerca il RTD e recupera automaticamente email e PEC dalla UO — due chiamate API in un solo comando (PortaleServices + WS06)." ], "path": "library/developer-tools/openipa", "printer": "aborruso", "printer_name": "aborruso", "creator": { "handle": "aborruso", "name": "aborruso" } }, { "name": "openrouter", "category": "ai", "api": "OpenRouter", "description": "Inspect OpenRouter models, providers, credits, activity, and cost attribution with local caching and agent-friendly output.", "search_terms": [ "openrouter", "openrouter-pp-cli", "Inspect OpenRouter models, providers, credits, activity, and cost attribution with local caching and agent-friendly output.", "Cost-by-cron rollup", "usage cost-by", "Group your OpenRouter spend by which cron/agent fired the call, not just by model. Joins local generations with caller tags from your tool-call logger.", "Models query DSL", "models query", "Query the model catalog with structured filters (tools=true, cost.completion<1, ctx>=64k) — compiled to SQL over a local SQLite cache. Works offline.", "Providers degraded watch", "providers degraded", "Returns the set of currently-degraded provider/model pairs by polling /providers and per-model /endpoints. Pipe into your router to preempt 429s.", "Generation cost forensics", "generation explain", "For a generation id, returns the cost, latency, prompt/completion token counts, AND a delta vs the cheapest provider for the same model+token-count.", "Cost regression alarm", "usage anomaly", "Flags days where per-model cost exceeds 2σ of the trailing 7-day mean. Deterministic z-score, no LLM in the loop. Designed for cron.", "Weekly-cap ETA", "key eta", "Projects when your weekly OpenRouter cap will trip, based on /key.limit_reset, current usage, and your trailing 7-day burn rate.", "Per-cron budget contract", "budget", "Set a weekly USD cap per cron job (budget set scan-pipeline 2usd). Pre-flight check returns exit 0 (under cap) or 8 (over) from tagged generations.", "Endpoint failover map", "endpoints failover", "For a model id, lists all providers serving it ranked by current status, pricing, and observed p50 latency from local cache. Pipe-feeds routers." ], "path": "library/ai/openrouter", "printer": "rvdlaar", "printer_name": "Rick van de Laar", "creator": { "handle": "rvdlaar", "name": "Rick van de Laar" } }, { "name": "opensnow", "category": "productivity", "api": "OpenSnow", "description": "Hyper-local weather forecasts and conditions for any mountain location and elevation, worldwide. Provides current conditions, hourly forecasts, 5-day day/night snow forecasts, resort snow reports, and expert-written Daily Snow posts. Authentication via api_key query parameter (partnership access only).", "search_terms": [ "opensnow", "opensnow-pp-cli", "Powder Day Scorer", "powder-score", "Rate upcoming days 1-10 for powder quality by combining forecast snow totals, wind, temperature, and historical averages", "Multi-Resort Powder Ranker", "powder-rank", "Rank all synced resorts by powder potential, combining expected snowfall, base depth, and terrain openness", "Storm Tracker", "storm-track", "Show storm progression — when snow starts, peaks, and ends — by correlating rolling hourly forecasts over time", "Favorites Dashboard", "dashboard", "One-command view of all favorited locations with current temp, 24h snow, 5-day total, and operating status", "Overnight Snowfall Check", "overnight", "Check the semi-daily forecast for the overnight period at favorited resorts — the powder hunter's morning ritual", "Conditions Diff", "diff", "Compare current snow report against the last-synced version to see what changed: new snow, lifts opened or closed, status changes", "Daily Snow Digest", "digest", "Pull all Daily Snow posts for favorited regions, strip HTML to clean text, and show a summary digest", "Historical Snowfall Trends", "history", "Show snowfall trends, season totals vs averages, and base depth progression from cached report snapshots" ], "path": "library/productivity/opensnow", "printer": "davemorin", "printer_name": "Dave Morin", "creator": { "handle": "davemorin", "name": "Dave Morin" }, "mcp": { "binary": "opensnow-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "OPENSNOW_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "ordertogo", "category": "food-and-dining", "api": "OrderToGo", "description": "Browse, cart, and place orders at any OrderToGo.com restaurant from the terminal — pure-Go agent-native client...", "search_terms": [ "ordertogo", "ordertogo-pp-cli", "Browse, cart, and place orders at any OrderToGo.com restaurant from the terminal with safety rails for agent-driven ordering", "OrderToGo authenticates via Firebase phone-OTP on the web. The CLI does not implement\nphone OTP — instead, `auth login --chrome` imports your existing OrderToGo session\ncookies from your local Chrome profile. After import, every command travels with the\ncookie. Re-run `auth login --chrome` if your session expires.", "Reuse-last with budget gate", "order plan", "Recompose your previous order locally, validate against tax, and refuse to fire if total exceeds your --max cap.", "Headless full-auto place", "order place", "Drive a headless Chrome via chromedp to complete the Braintree DropIn flow with your saved card, with the budget cap enforced before the browser opens.", "What's my usual", "usual", "Cluster your historical orders by item-set similarity and surface the recurring set that defines 'your usual' at any restaurant you order from.", "Spending analytics", "spending", "Total spent, average order, days since last order, top items, and weekly cadence — all from local order history with one SQL query.", "Auto-tip from history", "Pass --tip auto and the CLI applies your average tip percentage from history at this restaurant.", "Closed-check before place", "Refuse to fire if the restaurant is not currently open at the requested pickup time, using cached hours.", "Agent-context snapshot", "agent-context", "Single-call structured dump: account, default restaurant, your usual, last-order summary, budget hint, days-since-last.", "Verify-env safe by construction", "All side-effect commands short-circuit when PRINTING_PRESS_VERIFY=1 is set, printing 'would place: ' instead of submitting." ], "path": "library/food-and-dining/ordertogo", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "ordertogo-pp-mcp", "transports": [ "stdio" ], "tool_count": 15, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "outlook-calendar", "category": "productivity", "api": "Outlook Calendar", "description": "The first Outlook calendar CLI built for AI agents on personal Microsoft 365 accounts — with offline conflict...", "search_terms": [ "outlook-calendar", "Outlook Calendar", "outlook-calendar-pp-cli", "Drive your personal Microsoft 365 calendar from agentic workflows: read, write, sync, and run offline analytics like conflicts, freetime, and recurring-drift that no Graph endpoint exposes.", "Cross-calendar conflicts", "conflicts", "Find overlapping events across all your Outlook calendars in one pass — the double-bookings Outlook's own UI never shows.", "Free-time finder with working hours", "freetime", "Compute N-minute gaps in your working hours over the next K days, honoring all calendars and optional OOF/tentative exclusion.", "Weekly review (change set)", "review", "Diff against the last delta-sync snapshot: what was added, rescheduled, cancelled, or had its RSVP change.", "Pending invites", "pending", "List events whose RSVP is still pending and whose start time is in the future, ordered by start.", "Recurring drift", "recurring-drift", "For each recurring-series master, list instances whose start/end/subject/location diverged from the master pattern.", "Meeting prep dossier", "prep", "For upcoming events in the next N hours, return a dossier: subject, location, attendee emails, organizer, body excerpt, attachments list, recurrence/online-meeting flags.", "Attendee co-occurrence", "with", "How often have I met with this person, and when did I see them last? Counts and recent N events from local store.", "Time-zone audit", "tz-audit", "Surface events whose start time-zone differs from the calendar's default or from their own end-time TZ — likely-broken displays on other devices." ], "path": "library/productivity/outlook-calendar", "printer": "brennaman", "printer_name": "Paul Brennaman", "creator": { "handle": "brennaman", "name": "Paul Brennaman" }, "mcp": { "binary": "outlook-calendar-pp-mcp", "transports": [ "stdio" ], "tool_count": 31, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "OUTLOOK_CALENDAR_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "outlook-email", "category": "productivity", "api": "Outlook Email", "description": "Drive your personal Microsoft 365 inbox from agents — read, send, sync, and run offline triage analytics that...", "search_terms": [ "outlook-email", "Outlook Email", "outlook-email-pp-cli", "Drive your personal Microsoft 365 inbox from agentic workflows: read, send, sync, and run offline triage analytics like followup, senders, waiting, and digest that no Graph endpoint exposes.", "Unanswered sent mail", "followup", "List emails you sent more than N days ago that the recipient never replied to — close the loops you forgot about.", "Sender volume rollup", "senders", "Group your inbox by sender over a window: count, unread, last-received, dominant folder — see who's drowning your inbox.", "What arrived since", "since", "Show what landed since a timestamp, grouped by focused/other, sender, and folder. Perfect for 'what did I miss while I was heads-down'.", "Open flagged todos", "flagged", "List flagged messages with open due dates, days-overdue, age. The inbox-zero work list Outlook never aggregates.", "Stale unread report", "stale-unread", "Unread messages older than N days, grouped by folder. Surfaces the unread debt hiding in subfolders.", "Waiting-on-me conversations", "waiting", "Conversations where the last message is not from you and is unread or unanswered for N days. The 'someone's waiting on you' work list.", "Top conversations", "conversations", "Conversations ranked by message count, participants, and unread tail. Find the threads burning your attention budget.", "Quiet senders", "quiet", "Senders you used to hear from but who've gone silent for N days. Useful for relationship lapse detection.", "Daily digest", "digest", "One-shot daily summary: received/sent/unread/flagged counts, top senders, top conversations, focused/other ratio.", "Stale attachments", "attachments-stale", "Attachments older than N days and over a size threshold, sortable by size. The mailbox-quota rescue plan.", "Likely duplicates", "dedup", "Find probable duplicate threads or messages by conversation_id, internet_message_id, or normalized (subject, from, to).", "Plan-then-execute bulk archive", "bulk-archive", "Read a sender list or query, print a move plan, optionally execute it. Safe by default, no surprises." ], "path": "library/productivity/outlook-email", "printer": "brennaman", "printer_name": "Paul Brennaman", "creator": { "handle": "brennaman", "name": "Paul Brennaman" }, "mcp": { "binary": "outlook-email-pp-mcp", "transports": [ "stdio" ], "tool_count": 38, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "OUTLOOK_EMAIL_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "pagliacci", "category": "food-and-dining", "api": "Pagliacci Pizza", "description": "Order Seattle's Pagliacci Pizza from the terminal — half-and-half pies, small-party planner, slice rotation, and rewards stacking.", "search_terms": [ "pagliacci", "Pagliacci Pizza", "pagliacci-pp-cli", "Order Seattle's Pagliacci Pizza from the terminal — half-and-half pies, small-party planner, slice rotation, and rewards stacking.", "Today's slices across all stores", "slices today", "See which Pagliacci slices are available right now at every Seattle store, sorted by proximity to your saved address.", "Open stores tonight", "store tonight", "List stores that are still open and can deliver to your saved address right now, sorted by ETA.", "Stack discounts to maximize savings", "rewards stack", "Compute the best application of stored coupons, reward redemption, and account credit for a given order total. Defaults to single-best-coupon + credit; multi-coupon stacking is flagged --experimental.", "Reorder the family favorite", "orders reorder", "Re-create a past order as a fresh cart, with price revalidation since prices change. Add --send to also submit.", "Address-aware delivery time picker", "address best-time", "Resolve a saved address label to the next available delivery slot in one call.", "Household ordering rhythm", "orders summary", "Aggregate orders over a time range with top items, store breakdown, and order frequency.", "Half-and-half pizza builder", "menu half-half", "Build a half-and-half pizza in one command, with each side's toppings validated against the menu and priced via ProductPrice.", "Small-party order planner", "orders plan", "Given the number of people and a saved address, suggest a complete order plan: best store, delivery slot, sized cart contents, and the optimal discount stack." ], "path": "library/food-and-dining/pagliacci", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "pagliacci-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 57, "public_tool_count": 26, "auth_type": "composed", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "pcgs", "category": "other", "api": "Pcgs", "description": "The first CLI for the PCGS Public API — cert lookup, full CoinFacts extraction, and the 1,000-call-per-day budget...", "search_terms": [ "pcgs", "pcgs-pp-cli", "PCGS Public API CLI — verify PCGS-graded coin certs, extract full CoinFacts metadata, and stay under the 1,000-call-per-day budget.", "Quota-aware batch with dry-run + resumable checkpointing + column passthrough", "coin batch", "Parse a CSV / JSON wrapper / JSONL / plain-text cert list and look up every cert against PCGS. --dry-run forecasts cost (live calls, cache hits, %-of-quota) without spending a single call. --resumable + --checkpoint split a list larger than the 1,000/day cap across UTC days. --list-certs emits the parsed cert list to stdout without calling. Non-cert input columns round-trip to output as `_keep.` for downstream re-keying.", "Mutable-only refresh (with --dry-run for stale-watching)", "refresh", "Refresh cached coins by updating only the fields PCGS can actually change — Population, PopHigher, PriceGuideValue, AuctionList, Images, CoinFactsNotes — while leaving cert identity fields untouched. Emits a per-field diff. --dry-run --older 30d --field price-guide lists which cached coins need refresh without calling the API.", "Spec-number population sweep", "coin pop-curve", "Pull every grade 1–70 (and PlusGrade variants, plus the 82–98 Details codes when --include-details) for one PCGSNo in one command, persist the full population curve to local store, and print the scarcity table.", "Lookup-log audit", "audit", "Query the lookup_log table directly: every API call, its endpoint, IsValidRequest, ServerMessage, and request hash. Aggregate by day, by endpoint, or by cert; filter to failed calls only.", "Submission fan-out", "order hydrate", "Take a PCGS submission number, fetch the order, then fan out CoinFacts (and optionally images) for every cert in the order. Respects cache and refuses to start when remaining quota is less than the cert count.", "Local search across cached coins (with --top-pct rarity)", "search", "FTS5 + numeric filters over your local cache: search by Name, Country, SeriesName, Category, Designer, MintLocation, or variety fields, plus range filters on Year, Grade, PriceGuideValue, Population, PopHigher, Mintage, Weight, Diameter. --max-pop and --top-pct flags expose continuous rarity slicing (e.g. --top-pct 5 = top 5% rarest in the scoped cohort) — no API call." ], "path": "library/other/pcgs", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "pcgs-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 12, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "PCGS_AUTH_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "pdok-location", "category": "developer-tools", "api": "PDOK Location", "description": "Geocode Dutch addresses, reverse-geocode coordinates, convert RD/WGS84, and query PDOK location data with offline helpers.", "search_terms": [ "pdok-location", "PDOK Location", "pdok-location-pp-cli", "Geocode Dutch addresses, reverse-geocode coordinates, convert RD/WGS84, and query PDOK location data with offline helpers.", "Batch CSV geocode", "batch geocode", "Geocode an entire CSV of Dutch addresses in one command — outputs lat/lon, RD X/Y, match score, and an error column for failed rows.", "Suggest+lookup one-shot", "resolve", "Type a partial address, get the canonical match with full GeoJSON geometry — the suggest→lookup chain collapsed into a single command.", "Cross-source nearest", "nearest", "From any lat/lon or RD coordinate, return the nearest address, nearest parcel, nearest hectometer marker, and the gemeente/provincie containing the point — all in one call.", "RD ↔ WGS84 coordinate conversion", "convert rd-to-ll", "Convert Dutch RD (EPSG:28992) coordinates to WGS84 lat/lon and back, with pure-math precision — no API call needed.", "WKT ↔ GeoJSON conversion", "convert wkt-to-geojson", "Take any WKT geometry (POINT, POLYGON, MULTIPOLYGON, MULTILINESTRING) and emit GeoJSON — or convert GeoJSON back to WKT.", "Offline gemeente / provincie gazetteer", "gemeente get", "After a one-time sync, look up any of the 342 Dutch gemeenten or 12 provincies fully offline — name, centroid, codes, parent provincie.", "Local FTS over cached results", "search", "Full-text search across every address, gemeente, and lookup you've previously fetched — finds matches locally before falling back to the API.", "Multi-collection OGC search with optional bbox", "features search", "Search across multiple Location API OGC collections (adres, perceel, gebouw, ...) with an optional bounding-box filter, flattened to JSON or CSV.", "Confidence-gated best match", "top", "Return the single best match for a query if (and only if) the Solr score clears a threshold — exits non-zero when no match clears the bar.", "Perceel by kadastrale aanduiding", "perceel lookup", "Look up a Dutch cadastral parcel by its full kadastrale aanduiding (e.g. 'AMR03 N 1234') and get back the GeoJSON parcel feature.", "Gemeente containing a point", "gemeente of-point", "Given any lat/lon or RD coordinate, return which gemeente and provincie contain it — using the offline gazetteer with an API fallback." ], "path": "library/developer-tools/pdok-location", "printer": "markvandeven", "printer_name": "markvandeven", "creator": { "handle": "markvandeven", "name": "markvandeven" } }, { "name": "plane", "category": "project-management", "api": "Plane", "description": "The Plane REST API Visit our quick start guide and full API documentation at [developers.plane.so](https://developers.", "search_terms": [ "plane", "plane-pp-cli", "Open-source project management — issues, cycles, modules, sub-issues, and workspaces. A self-hostable Jira/Linear/ClickUp alternative.", "Issue Relations", "relations", "Flat list/set/unset of issue blocking, blocked_by, duplicate, relates_to and temporal links without hand-driving the relations endpoint (unset bridges Plane CE's missing DELETE via a configurable Django-shell call).", "Module Membership & Sync Enrichment", "module", "Manage an issue's module membership (of/create-issue/sync) and auto-enrich issue module_ids during sync (on by default), since Plane's issue API never returns module membership." ], "path": "library/project-management/plane", "printer": "sidorovanthon", "printer_name": "Anton Sidorov aka anticodeguy", "creator": { "handle": "sidorovanthon", "name": "Anton Sidorov aka anticodeguy" }, "mcp": { "binary": "plane-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 125, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "PLANE_API_KEY_AUTHENTICATION" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "podcast-goat", "category": "media-and-entertainment", "api": "Podcast GOAT", "description": "Pull long-form podcast transcripts as speaker-labeled markdown — cookie-first across the four major paid...", "search_terms": [ "podcast-goat", "Podcast GOAT", "podcast-goat-pp-cli", "Cookie chain for the four bundled member publishers (set via\n`auth login --chrome --service `),\nplus optional api_key vars for paid fallbacks. No credential required for the\nfree Dwarkesh / RSS / yt-dlp tier — that's the default dispatch.", "Topic bundle for one-shot agent runs", "magic", "Bundle top-N cached transcripts about a topic into one markdown file an agent can summarize in a single call.", "Dispatcher decision trace", "episode get --explain", "Dry-run shows which source tier will fire and why earlier tiers were skipped, with projected cost before any paid call.", "Local quote grep with speaker context", "episode quote", "FTS5 phrase search returns the matched segment plus N surrounding segments preserving the canonical speaker shape and deeplink timestamp.", "Cross-source content diff", "source compare", "For an episode resolvable on multiple sources, fetch all available adapters and diff segment count, token count, distinct speakers, label confidence.", "Bilingual zh-Hans + en aligned transcript", "episode get --bilingual", "yt-dlp dual-language auto-subs, greedy nearest-neighbor alignment, emits one markdown file with paired Chinese + auto-translated English per turn.", "Per-service cookie freshness table", "auth services", "One-row-per-service table of cookie age, expiry, last-fetch result, with remediation hint when stale.", "Distinct-speaker corpus index", "speakers list", "Aggregate speaker names across the cached corpus with episode counts, optionally filtered by show.", "Spend pivot by show + provider", "budget show --by-show", "Pivot spend.jsonl joined to episodes by URL; group by show, provider, month to attribute cost." ], "path": "library/media-and-entertainment/podcast-goat", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "podcast-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "composed", "env_vars": [ "SPOKEN_API_KEY", "TADDY_API_KEY", "TADDY_USER_ID", "OPENAI_API_KEY", "DEEPGRAM_API_KEY", "ELEVENLABS_API_KEY" ], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "podscan", "category": "media-and-entertainment", "api": "Podscan", "description": "Podscan REST API — search 51M+ podcast episodes and 4.4M+ podcasts. Full transcripts, AI-extracted entities,...", "search_terms": [ "podscan", "podscan-pp-cli", "Search every public podcast conversation. Wraps the Podscan REST/Firehose/Exports APIs with mention monitoring, guest history, topic trend charts, idea sourcing, and sponsor intel — across 51M+ episodes, 4.4M+ podcasts.", "Mention monitoring", "mentions", "Aggregate every podcast that mentioned a brand/term, ranked by audience reach with snippet of surrounding transcript.", "Guest history", "guest", "Find every podcast appearance of a person across the catalog, with optional quote-count for an include term.", "Topic trend chart", "topic trend", "Bucket episode mentions by week/month and render an ASCII trend chart for any term.", "Idea sourcing (asks)", "asks", "Extract question-shaped sentences from transcripts about a topic — startup-idea radar from public conversations.", "Sponsor competitor overlap", "sponsor competitors", "Heuristic intersection of shows where a target brand and candidate brands both appear — competitive media planning.", "Standing watch", "watch list", "Manage Podscan Firehose alerts as standing brand-mention watches." ], "path": "library/media-and-entertainment/podscan", "printer": "gregvanhorn", "printer_name": "Greg Van Horn", "creator": { "handle": "gregvanhorn", "name": "Greg Van Horn" }, "mcp": { "binary": "podscan-pp-mcp", "transports": [ "stdio" ], "tool_count": 14, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "PODSCAN_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "pointhound", "category": "travel", "api": "Pointhound", "description": "Every Pointhound flight search, plus a local SQLite of every deal you've ever seen, balance-aware reachability, and...", "search_terms": [ "pointhound", "pointhound-pp-cli", "Reachability from points balance", "from-home", "Tell me where I can fly with the points I actually hold — feed in your Chase UR, Amex MR, Bilt, Capital One, and Citi TY balances and get back every destination reachable in the requested cabin within those balances, ranked by lowest effective spend.", "Effective-cost ranking via transfer ratios", "compare-transfer", "Given a transferable points program (Chase UR, Amex MR, etc.) and a route, list every redemption ranked by source-program points spent — multiplying each offer's price by the real transfer ratio (1:1 instant for UR→United vs 0.333:1 up_to_72 for Marriott→United).", "Saved-route polling with delta exit code", "watch", "Register a route as a saved watch; subsequent runs poll Pointhound and exit with code 2 only when a new or cheaper deal appears since the last snapshot. Perfect for cron.", "Fan-out search and store", "batch", "Issue N route+date searches in parallel from a CSV file (or repeated --route flags); all results are snapshotted to the local SQLite store with throttling.", "Top Deals matrix with persistence", "top-deals-matrix", "Submit a multi-origin × multi-destination × month-range matrix search (e.g. SFO,LAX → LIS,FCO,LHR across Oct-Dec) and snapshot every result. Mirrors Pointhound's Premium Top Deals product but with offline access and cabin filtering.", "Cross-snapshot drift report", "drift", "For a watched route, diff the latest snapshot against the previous and show per-offer status: new, cheaper, disappeared, unchanged. Includes the points delta and timestamp gap.", "Deal-rating explore via Scout", "explore-deal-rating", "Use Pointhound's `scout.pointhound.com/places/search` `dealRating` and `isTracked` fields to discover airports near a metro that historically have high-frequency deals, optionally chaining into `batch` to fetch live offers for them.", "Best-month heatmap", "calendar", "For a route + cabin, batch-search every month over a 12-month window and produce a month-grid showing min points cost per month (and the offer that achieved it).", "Transfer-source lookup", "transferable-sources", "Given an airline redeem program (e.g. United MileagePlus), list every transferable earn program that feeds it with the ratio and transfer time (instant vs up_to_72)." ], "path": "library/travel/pointhound", "printer": "salmonumbrella", "printer_name": "salmonumbrella", "creator": { "handle": "salmonumbrella", "name": "salmonumbrella" }, "mcp": { "binary": "pointhound-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "pokeapi", "category": "media-and-entertainment", "api": "PokéAPI", "description": "Fully offline Pokédex with SQL, full-text search, type math, and a damage calculator no other Pokémon tool ships as a CLI.", "search_terms": [ "pokeapi", "pokeapi-pp-cli", "Reverse ability search", "pokemon by-ability", "Find every Pokémon with a given ability. Live API has no reverse index — this is a single SQL query against the local store.", "Reverse move-effect search", "move find", "Find moves by status effect, damage class, type, or target — e.g. all moves that paralyze a Steel-type.", "Team partner suggester", "team suggest", "Given an in-progress team, score every remaining Pokémon by how well it covers the team's typing gaps. Returns top candidates.", "Move-learnset diff between forms", "pokemon diff-learnset", "Compare the move learnsets of two Pokémon (often regional forms or megas) and surface what each can learn that the other cannot.", "Cross-generation Pokémon timeline", "pokemon history", "Show how a Pokémon has changed over generations: type changes, stat changes, ability changes, and which generation it was introduced in.", "Regional-form comparator", "pokemon forms", "List every form for a species (e.g. Vulpix vs Alolan Vulpix) with type, stat, and ability deltas inline.", "Evolution-requirement reverse lookup", "evolve into", "Given a target Pokémon, surface the species you would need to evolve and the conditions (item, level, friendship, time of day) to get there.", "Coverage-gap finder", "team gaps", "List which of the 18 types your in-progress team has neither defensive resistance nor offensive super-effectiveness against.", "Local FTS search", "search", "Full-text search across Pokémon, moves, abilities, items, and locations — names plus flavor text — with relevance ranking.", "SQL passthrough", "sql", "Read-only SQL access to the local store. Power users and agents can compose joins the CLI doesn't expose directly.", "Region encounter map", "encounters by-region", "Render a region-level encounter table joining locations, areas, encounters, and species — every Pokémon you can find in (e.g.) Kanto.", "Damage calculator", "damage", "Compute expected damage range for a move from one Pokémon to another, factoring in STAB, type effectiveness, level, and base stats.", "Stat ranker", "pokemon top", "Rank Pokémon by a base stat (attack, special-attack, speed, hp, etc.), optionally filtered by type. Returns the top N." ], "path": "library/media-and-entertainment/pokeapi", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "pokeapi-pp-mcp", "transports": [ "stdio" ], "tool_count": 98, "public_tool_count": 98, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "pop", "category": "payments", "api": "POP", "description": "POP API for European electronic invoicing workflows. This Printing Press blueprint intentionally exposes only the...", "search_terms": [ "pop", "pop-pp-cli", "European electronic invoicing API for compliant XML, PEPPOL, PDF, validation, status tracking, and archival workflows.", "JSON invoice passthrough", "create-xml", "Send full POP invoice payloads through one top-level command to generate FatturaPA XML and optionally submit it to SdI.", "PEPPOL retrieval shortcut", "peppol", "Fetch PEPPOL documents from a promoted command without traversing the raw API path tree.", "Grouped SdI lifecycle", "sdi-via-pop get-invoice-status", "Track, verify, retrieve, and preserve SdI documents from one grouped command surface." ], "path": "library/payments/pop", "printer": "mircobabini", "printer_name": "Mirco Babini", "creator": { "handle": "mircobabini", "name": "Mirco Babini" }, "mcp": { "binary": "pop-pp-mcp", "transports": [ "stdio" ], "tool_count": 8, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "POP_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "posthog", "category": "developer-tools", "api": "PostHog", "description": "Every PostHog resource in one CLI — with offline search, agent-native output, and cross-resource analytics no...", "search_terms": [ "posthog", "posthog-pp-cli", "Every PostHog resource in one CLI — with offline search, agent-native output, and cross-resource analytics no dashboard exposes.", "Flag Blast Radius", "flags blast-radius", "Find every insight, dashboard, experiment, and survey that references a flag before you archive or rename it.", "Flag Rollout Health", "flags rollout-health", "Go/no-go confidence for a flag ramp — error rate and key metric movement correlated with flag exposure.", "LLM Cost Attribution", "llm cost-attribution", "Break down LLM spend by feature flag variant — see whether the expensive model variant pays for itself.", "Persons At-Risk", "Surface which users in a cohort are going quiet and recently hit errors — before they churn.", "Event Property Drift", "events property-drift", "Catch tracking regressions — properties that silently disappeared from an event between two time windows.", "Experiment Pre-Check", "experiments pre-check", "Know today whether an experiment will reach significance this sprint, or needs traffic adjustment now.", "Flag Stale Finder", "flags stale", "List flags that haven't been evaluated in N days — cleanup candidates before they accumulate.", "Dashboard Health", "Find broken dashboards before a stakeholder meeting does — stale data, deleted cohorts, archived flags." ], "path": "library/developer-tools/posthog", "printer": "riteshtiwari", "printer_name": "riteshtiwari", "creator": { "handle": "riteshtiwari", "name": "riteshtiwari" }, "mcp": { "binary": "posthog-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "api_key", "env_vars": [ "POSTHOG_PERSONAL_APIKEY_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "postman-explore", "category": "developer-tools", "api": "Postman Explore", "description": "Public API network directory for discovering community collections, workspaces, and APIs", "search_terms": [ "postman-explore", "Postman Explore", "postman-explore-pp-cli", "Public API network directory for discovering community collections, workspaces, and APIs", "Canonical collection lookup", "canonical", "One command finds the best community Postman Collection for a vendor, ranked by publisher verification, fork count, and recency.", "Trend ranking by custom metric", "top", "Rank entities by any metric (weekForks, monthViewCount, etc.) with category and entity-type narrowing.", "Publisher gravitas (cross-team comparison)", "publishers top", "Aggregate fork counts across every entity per publisher within a category; rank teams by total community gravity.", "Updated-within-window drift", "drift", "Report locally synced entities whose API-side updatedAt timestamp falls inside a time window.", "Verified publishers only", "browse", "When passed --verified-only, the browse command filters to entities owned by publishers with the verified-team flag set.", "Fork velocity (accelerating collections)", "velocity", "Rank collections by acceleration ratio: (weekForkCount × 4) / monthForkCount. Surfaces collections breaking out before they top the popular list.", "Similar collection finder (more-like-this)", "similar", "Given an entity numeric id, return collections with overlapping name, summary, and category — ranked by FTS relevance score against the seed entity's text.", "Category landscape report", "category landscape", "For a category slug, return: total entity counts per type, top 5 publishers by aggregate fork count, and top 5 entities by viewCount. One command, one structured payload." ], "path": "library/developer-tools/postman-explore", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "postman-explore-pp-mcp", "transports": [ "stdio" ], "tool_count": 8, "public_tool_count": 8, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "printify", "category": "commerce", "api": "Printify", "description": "Create and audit Printify products with manifest-driven image uploads, personalization checks, and local proofing.", "search_terms": [ "printify", "printify-pp-cli", "Create and audit Printify products with manifest-driven image uploads, personalization checks, and local proofing.", "Personalization Coverage Audit", "personalization-audit", "Audit a product for documented personalization placeholder fields, missing text/image setup, and unsupported browser-only gaps.", "Placement Matrix", "placement-matrix", "Show variant, print-area, placeholder, uploaded image, x/y/scale/angle, and missing-placement rows for a product.", "Catalog Margin Matrix", "catalog-margin-matrix", "Join catalog variants and shipping data to estimate per-variant cost and margin at a target retail price.", "Product Manifest Drift", "product-drift", "Compare an intended product manifest against the current Printify product payload after create or update.", "Personalized Batch Manifest Compiler", "personalization-batch", "Expand a reusable product manifest and CSV rows into per-product manifests using documented image and text placeholder fields.", "Asset Reuse Map", "asset-reuse", "List uploaded images, where each is used, unused uploads, and products sharing the same artwork.", "Fulfillment Risk Scan", "fulfillment-risk", "Flag open orders tied to risky product, variant, publish, or shipment states." ], "path": "library/commerce/printify", "printer": "horknfbr", "printer_name": "horknfbr", "creator": { "handle": "horknfbr", "name": "horknfbr" }, "mcp": { "binary": "printify-pp-mcp", "transports": [ "stdio" ], "tool_count": 40, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "PRINTIFY_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "producthunt", "category": "marketing", "api": "Product Hunt", "description": "Read Product Hunt from your terminal — works token-free for the daily skim, unlocks a launch-day cockpit and a marketer research desk in one onboarding step.", "search_terms": [ "producthunt", "producthunt-pp-cli", "Find, monitor, and export Product Hunt launches for launch research, scouting, and competitive tracking without requiring a Product Hunt API application.", "Launch-day tracker", "posts launch-day", "Renders your launch's votes-over-time trajectory side-by-side with today's top 5 launches — the answer to 'am I catching up to the leader.' Sync-driven, refreshes from the local store.", "Hour-by-hour benchmark", "posts benchmark", "Reports percentile curves at hour-N for top-10 and top-50 launches in a topic, computed from accumulated local history. Tells a founder if their hour-6 votes are 'good' for their category.", "Vote trajectory", "posts trajectory", "Plots a single launch's votes-over-time from local snapshots. Foundational for launch-day-tracker; also useful standalone for retro analysis after the fact.", "Comments → genuine questions", "posts questions", "Surfaces only comments that look like real questions (regex `?` plus heuristic verbs like 'how does', 'what's the', 'can it'), ranked by vote count. Cuts hundreds of launch-day comments down to the ones that need a maker's reply.", "Side-by-side launch compare", "posts compare", "Column-aligned comparison of two or more launches: votes, comments, topics, tagline, url, launch-time delta. Replaces juggling browser tabs.", "Category snapshot", "Slide-deck-ready brief for a topic over a window: leaderboard + momentum delta vs prior window + most active poster handles + top emerging tagline tags.", "Brand-mention grep", "posts grep", "Searches taglines and descriptions of launches in a window for a term — your brand, a competitor's brand, a category keyword. Returns matching launches with the matched snippet.", "Lookalike launches", "posts lookalike", "Given a launch slug, finds the most similar prior launches by topic overlap plus tagline FTS rank. Builds a competitive set automatically.", "Launches calendar", "Shows what launched what day in a week (and prior weeks for context), with hour-of-day distribution. Helps a founder pick a strong launch slot.", "Topic watch", "topics watch", "Detects new posts crossing a vote threshold in a topic since the last sync. Synthesizes an offline subscription against an API that has none.", "Time-window posts query", "posts since", "Local-first time-window query: `posts since 2h`, `posts since 24h`. Falls through to live GraphQL if the window extends past the last sync.", "Agent context snapshot", "context", "Returns a single JSON blob covering top posts in a window, top comments, topic followers, and your viewer status. One call answers 'what's the state of this topic right now' for an agent." ], "path": "library/marketing/producthunt", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "producthunt-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "bearer_token", "env_vars": [ "PRODUCT_HUNT_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "pushover", "category": "social-and-messaging", "api": "Pushover", "description": "Pushover from the terminal: send alerts, watch emergency receipts, inspect quota, and keep a redacted local...", "search_terms": [ "pushover", "pushover-pp-cli", "Agent send wrapper", "notify", "Send a notification from an argument or stdin with env/config defaults, named priorities, and emergency validation.", "Emergency lifecycle", "emergency watch", "Send or monitor an emergency notification receipt, polling acknowledgement status and supporting cancellation.", "Quota cockpit", "quota", "Show monthly send limit, remaining sends, and reset time from the app limits endpoint.", "Local notification ledger", "history", "Search and export a local redacted ledger of notifications sent by this CLI and receipt outcomes.", "Inbox sync/search", "inbox sync", "Download Open Client messages into local SQLite before optional server-side delete-through." ], "path": "library/social-and-messaging/pushover", "printer": "twidtwid", "printer_name": "Todd Dailey", "creator": { "handle": "twidtwid", "name": "Todd Dailey" }, "mcp": { "binary": "pushover-pp-mcp", "transports": [ "stdio" ], "tool_count": 26, "public_tool_count": 26, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "pvgis", "category": "other", "api": "Pvgis", "description": "The free, single-binary PVGIS CLI — JRC solar-radiation and PV-yield estimates with offline cache, multi-site...", "search_terms": [ "pvgis", "pvgis-pp-cli", "The free, single-binary PVGIS CLI — fetch JRC solar-radiation and PV-yield estimates with offline cache, multi-site batch, and agent-native JSON.", "Multi-site rank", "sites rank", "Rank a CSV of candidate sites by annual yield/kWp under the same system spec.", "Tilt/azimuth heatmap", "production sweep", "Compute a 2D grid of yields across tilt and azimuth, cache it, and serve future point queries from local interpolation.", "Database comparator", "production compare", "Run the same site under PVGIS-SARAH3, PVGIS-NSRDB, and PVGIS-ERA5; report yield deltas.", "Yield delta vs reference", "sites diff", "Compare annual production at a baseline site against a target site under identical system specs.", "TMY climate fingerprint search", "weather similar", "Rank cached TMYs by similarity to a target site's 12-month temperature and GHI signature." ], "path": "library/other/pvgis", "printer": "robertobissanti", "printer_name": "Roberto Bissanti", "creator": { "handle": "robertobissanti", "name": "Roberto Bissanti" }, "mcp": { "binary": "pvgis-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "pypi", "category": "developer-tools", "api": "PyPI", "description": "PyPI JSON API. Look up Python package metadata, versions, release files, and vulnerability data. Browse recent updates and newest packages via RSS feeds. No authentication required — all endpoints are public.", "search_terms": [ "pypi", "pypi-pp-cli", "Package metadata lookup", "pypi json get-package-info", "Fetch PyPI package metadata for dependency research and package evaluation.", "Package version lookup", "pypi json get-package-version-info", "Inspect a specific package release for reproducible dependency decisions.", "New package feed", "rss newest-packages", "Watch newest PyPI packages through the RSS API for ecosystem discovery." ], "path": "library/developer-tools/pypi", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "pypi-pp-mcp", "transports": [ "stdio" ], "tool_count": 4, "public_tool_count": 4, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "rappi", "category": "food-and-dining", "api": "Rappi", "description": "The first agent-native CLI for Rappi Mexico — read-only catalog browsing with offline SQLite snapshots, cross-city...", "search_terms": [ "rappi", "rappi-pp-cli", "Read-only Rappi Mexico catalog: restaurants by city/category, supermarkets and pharmacies by type, store details, plus offline SQLite search across the full crawled catalog.", "Restaurants diff", "See newcomers and closures in any city + cuisine between two snapshots — answers \"what's new in Roma Norte sushi this week\" in one command.", "Restaurants top", "Top-rated restaurants with both a minimum rating AND a minimum review-count floor — the listicle-grade filter Rappi UI hides.", "Store coverage matrix", "stores coverage", "Cross-city, cross-store-type coverage matrix (CDMX × markets × pharmacies × liquor × express, all in one table) for the cities you sync.", "Coverage delta", "stores coverage-diff", "Delta-vs-last-snapshot of the (city, store_type) coverage matrix — see store openings and store-type expansions over time.", "Open at time", "restaurants open", "Restaurants open at an arbitrary local time (e.g., \"23:30 on Sunday\") parsed from schema.org openingHours — beyond Rappi's \"open now\" view.", "Cuisine by neighborhood", "restaurants by-neighborhood", "Group restaurants by neighborhood within a city (Polanco vs Condesa vs Roma Norte) and rank by count or top-rated per neighborhood.", "Multi-category overlap", "restaurants multi-category", "Restaurants listed under two or more cuisine categories — surfaces fusion places and mis-categorized spots in one query.", "Geo-radius restaurants", "restaurants near", "Restaurants within a Haversine radius of a lat/lng with optional category filter — sorted by distance.", "Brand presence matrix", "restaurants brand", "Find every city × category where a restaurant brand (e.g., \"Sushi Itto\") appears in the synced catalog.", "Pharmacy near supermarket adjacency", "stores adjacency", "Stores of type A within a Haversine radius of stores of type B (e.g., pharmacies within 1km of supermarkets) — for concierge-style \"one-stop trip\" planning." ], "path": "library/food-and-dining/rappi", "printer": "bobeglz", "printer_name": "bobe", "creator": { "handle": "bobeglz", "name": "bobe" }, "mcp": { "binary": "rappi-pp-mcp", "transports": [ "stdio" ], "tool_count": 7, "public_tool_count": 7, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "recipe-goat", "category": "food-and-dining", "api": "Recipe GOAT", "description": "Search trusted recipe sites, rank results, save a local cookbook, and enrich nutrition data with USDA FoodData Central.", "search_terms": [ "recipe-goat", "Recipe GOAT", "recipe-goat-pp-cli", "Search trusted recipe sites, rank results, save a local cookbook, and enrich nutrition data with USDA FoodData Central.", "Best-version ranker", "goat", "Query any dish across 37 recipe sites and rank results by normalized rating × review count × author trust × site trust × recency.", "Substitution lookup", "sub", "Aggregate ingredient substitutions from King Arthur, Serious Eats, AllRecipes reviews, and Budget Bytes. Ranked by source trust with ratios and context.", "Pantry match", "cookbook match", "Find recipes in the local cookbook that you can make right now with listed ingredients, or with ≤N missing ingredients.", "Tonight picker", "tonight", "Pick dinner in 2 seconds: filter cookbook by time budget, recency from cook log, and dietary/kid-friendly flags.", "Review-modification digest", "recipe reviews", "Surface the top modifications cooks actually made to a recipe (\"added an egg: 22 cooks; baked 5 min less: 17; honey instead of sugar: 14\").", "USDA nutrition backfill", "recipe get --nutrition", "When a site omits nutrition, parse ingredients, match USDA FoodData Central IDs, compute per-serving macros locally.", "Kid-friendly filter", "search --kid-friendly", "Filter recipes against an editable ingredient-exclusion list (capers, anchovies, excess heat, raw fish, etc.). Personalizable per-child.", "Unit-reconciling shopping list", "meal-plan shopping-list", "Aggregate ingredients across planned meals, reconcile units (2 cup + 1 cup milk → 3 cup), group by grocery aisle.", "Inline seasonal flag", "recipe get", "Flag out-of-season ingredients inline (\"⚠ asparagus is out of season in November — peak April–June\") and suggest in-season swaps.", "Honest cost estimate", "recipe cost", "Rough cost per serving using Budget Bytes line-item data plus USDA retail averages as fallback. Always shows an honesty band (±30%)." ], "path": "library/food-and-dining/recipe-goat", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "recipe-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 3, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "USDA_FDC_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "redfin", "category": "other", "api": "Redfin", "description": "Search Redfin homes for sale via internal Stingray endpoints, sync to local SQLite, and run workflows the website doesn't expose — saved-search diff, $/sqft net-HOA ranking, sold comps, multi-region trends.", "search_terms": [ "redfin", "redfin-pp-cli", "Search Redfin homes from the terminal with offline sync, ranking, diff, sold comps, and market trends.", "Saved-search watch with diff", "watch", "Re-run a saved gis search and surface what's NEW, REMOVED, PRICE-CHANGED, or STATUS-CHANGED since the last sync.", "$/sqft net-HOA ranking", "rank", "Rank synced listings by price-per-sqft, with optional HOA-fee subtraction over a 5-year horizon.", "Side-by-side compare", "compare", "Pull 2-8 listings through the combined Stingray detail endpoint and emit aligned columnar output (price, $/sqft, beds, baths, lot, year, schools, AVM delta, last sale, taxes).", "Sold-comp recipe", "comps", "For a subject listing, derive a circular polygon from --radius, run a sold-status search, filter by --sqft-tol and --bed-match, return the ranked comp set.", "Stale + price-drop scan", "drops", "List active listings whose price dropped by N% in a window, OR whose days-on-market exceed a threshold.", "Multi-region union ranking", "Union synced listings across multiple region slugs and rank across the entire set, deduped by listing URL.", "Trends overlay across regions", "trends", "Pull aggregate-trends for N regions and emit one tidy long table (region × month × metric) over a window.", "Bulk export past the 350 cap", "export", "Slice the price space into bands, page-walk gis-csv per band until each returns under 350 rows, dedupe on listing URL, emit one CSV/JSON.", "Neighborhood market summary", "summary", "Single command: active count, pending count, sold-90d count, median list, median sold, median DOM, median $/sqft, % with price drops, plus a trends snapshot.", "Region appreciation ranker", "appreciation", "For all child neighborhoods under a parent metro, call aggregate-trends and rank by YoY median-sale % change." ], "path": "library/other/redfin", "printer": "rderwin", "printer_name": "rderwin", "creator": { "handle": "rderwin", "name": "rderwin" }, "contributors": [ { "handle": "jwmoss", "name": "Jonathan Moss" } ], "mcp": { "binary": "redfin-pp-mcp", "transports": [ "stdio" ], "tool_count": 3, "public_tool_count": 0, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "render", "category": "cloud", "api": "Render", "description": "Every Render endpoint, plus diff, drift, cost, audit, and orphan analytics no other Render tool ships.", "search_terms": [ "render", "render-pp-cli", "Env-var diff across services and env-groups", "env diff", "Compare env vars between any two services, env-groups, or a service vs an env-group, three-way diff style.", "Env-var promotion with allow/deny lists", "env promote", "Copy env vars from a source service or env-group to a target with --only/--exclude/--dry-run.", "Blueprint drift detection", "drift", "Compare a checked-in render.yaml against live workspace state and report added/removed/modified entities by name.", "Cost rollup across services and datastores", "cost", "Sum monthly cost across services, postgres, key-value, redis, and disks; group by project, environment, or owner.", "Stale preview environment cleanup", "preview-cleanup", "List preview services older than --stale-days N; delete in bulk on --confirm.", "Orphan resource sweep", "orphans", "Find unattached disks, empty env-groups, custom-domains pointing at deleted services, registry credentials referenced by no service, and disk snapshots beyond retention.", "Cross-resource env-var locator", "env where", "For a given env-var key, list every service and env-group that defines it with hash, length, and last-modified timestamp (never raw value).", "Incident timeline merge", "incident-timeline", "Merge deploys, events, and audit-logs for one service into one chronological table for a given window.", "Audit-log forensic search", "audit search", "FTS5 search across cached audit logs by actor, target, action, and time window.", "Deploy-to-deploy diff", "deploys diff", "Show commit range, env-var changes, image-tag changes, and plan/region/scale changes between two deploys of one service.", "Rightsizing recommendations from metrics", "rightsize", "For each service, fetch last --since 7d of CPU and memory; compute p95 utilization; flag services breaching --high or --low thresholds against plan capacity." ], "path": "library/cloud/render", "printer": "giacaglia", "printer_name": "Giuliano Giacaglia", "creator": { "handle": "giacaglia", "name": "Giuliano Giacaglia" }, "mcp": { "binary": "render-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 196, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "RENDER_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "resend", "category": "productivity", "api": "Resend", "description": "The full Resend API (100 endpoints across emails, broadcasts, audiences, contacts, domains, templates, webhooks)...", "search_terms": [ "resend", "resend-pp-cli", "Recipient email timeline", "emails to", "Every email sent to a single recipient address, with delivery status and timestamps, ordered newest-first.", "Cross-event delivery trace", "emails timeline", "Collapsed event chain for a single email: sent → delivered → opened → clicked → bounced, in one ordered table.", "Audience inventory rollup", "audiences inventory", "Per-audience rollup: contact count, unsubscribed count, last-broadcast timestamp, recent open-rate.", "Cross-audience contact lookup", "contacts where", "Find every audience, segment, and topic a contact (by email or name) belongs to in one query.", "Broadcast performance dashboard", "broadcasts performance", "Open / click / bounce rate across all broadcasts, sortable; not limited to a single broadcast or 30-day window.", "Domain health summary", "domains health", "Verification + DKIM/SPF/DMARC status across every domain in one table, flags missing or unverified records.", "Deliverability summary", "Bounce rate, complaint rate, and suppression count over a rolling window (default 7d) computed from local event data.", "API-key rotation audit", "api-keys rotation", "API keys sorted by age + last-used timestamp (joined from logs); flags stale keys older than N days." ], "path": "library/productivity/resend", "printer": "giacaglia", "printer_name": "Giuliano Giacaglia", "creator": { "handle": "giacaglia", "name": "Giuliano Giacaglia" }, "mcp": { "binary": "resend-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 83, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "RESEND_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "restaurant365-odata", "category": "commerce", "api": "Restaurant365 OData Connector", "description": "Read-only OpenAPI description for documented Restaurant365 OData v2 reporting views.", "search_terms": [ "restaurant365-odata", "Restaurant365 OData Connector", "restaurant365-odata-pp-cli", "Read-only Restaurant365 OData CLI for schema discovery, safe sampling, backfill planning, export, sync, and deleted-record checks.", "Redacted tenant sampler", "sample", "Samples one Restaurant365 OData view while returning only columns and row counts by default.", "Refresh planner", "backfill-plan", "Builds Restaurant365-safe date-window and rowVersion request plans without fetching rows.", "Delete tombstone counter", "deleted-records", "Reads EntityDeleted with optional entity and rowVersion filters, returning counts by default.", "Metadata-first discovery", "list-views", "Reports supported views, field counts, field types, date fields, rowVersion support, and refresh pattern from $metadata.", "Bounded export guard", "export", "Exports a view to JSONL or CSV and requires date filters for known date-window views." ], "path": "library/commerce/restaurant365-odata", "printer": "sdhilip200", "printer_name": "Dhilip Subramanian", "mcp": { "binary": "restaurant365-odata-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 17, "public_tool_count": 0, "auth_type": "basic", "env_vars": [ "RESTAURANT365_ODATA_USERNAME", "RESTAURANT365_ODATA_PASSWORD" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "revenuecat", "category": "payments", "api": "RevenueCat", "description": "Every RevenueCat v2 endpoint, plus a local database, offline search", "search_terms": [ "revenuecat", "revenuecat-pp-cli", "Every RevenueCat v2 endpoint, plus a local database, offline search, and revenue/churn/refund intelligence the dashboard charts can't compose.", "Revenue snapshot", "revenue-snapshot", "Point-in-time MRR, ARR, active subscriptions, trials, and revenue in your chosen currency, with deltas against your last snapshot.", "MRR trend", "mrr-trend", "MRR over time with new / expansion / contraction / churn movement decomposition and week-over-week deltas.", "Churn watch", "churn-watch", "Which subscriptions flipped to billing-issue, grace, expired, or cancelled in a window, with per-subscription dollar exposure.", "Dunning alert", "dunning-alert", "Subscriptions still in grace or billing-issue state joined with their unpaid invoices, ranked by recoverable amount.", "Entitlement rollup", "entitlement-rollup", "Per-entitlement active-customer counts and product attachments, flagging customers whose entitlement state disagrees with their subscription state.", "Refund cascade", "refund-cascade", "Traces a subscription or purchase through its transactions, refund history, and resulting entitlement loss; --apply issues the refund.", "Trial funnel", "trial-funnel", "New trials to conversion-to-paying funnel with stage-to-stage drop-off.", "Webhook audit", "webhook-audit", "Lists configured webhook integrations grouped by destination host, flagging duplicate or stale destinations." ], "path": "library/payments/revenuecat", "printer": "jcastillo725", "printer_name": "Joseph Alvin Castillo", "creator": { "handle": "jcastillo725", "name": "Joseph Alvin Castillo" }, "mcp": { "binary": "revenuecat-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 100, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "REVENUECAT_API_KEY", "DEVELOPER_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "roam", "category": "productivity", "api": "Roam HQ", "description": "Every Roam HQ surface — chat, transcripts, On-Air events, SCIM, webhooks — in one local-first CLI with offline...", "search_terms": [ "roam", "Roam HQ", "roam-pp-cli", "Local-first CLI for the Roam HQ API (chat, On-Air events, transcripts, SCIM, webhooks) with offline FTS search and agent-friendly JSON output.", "Cross-resource grep", "grep", "Search across every chat message and meeting transcript at once with --since, --from-user, --in-meeting, --in-group filters.", "Decision extractor", "decisions", "Surface decision-shaped lines (\"we decided\", \"action item\", \"agreed\", \"let's go with\") from synced transcripts.", "Attendance drift", "onair-attendance-drift", "Compare invited guests vs actual attendance for an On-Air event; print invited-no-show and walk-in sets.", "Stale on-air reaper", "onair-reaper", "Find recurring On-Air events with zero attendance over N days. --apply cancels them via the absorbed cancel endpoint.", "Transcript prompt fan-out", "transcript-fanout", "Run a single question against every transcript in a date range; one row per transcript with answer + citation.", "Stdin chat relay", "relay", "Pipe arbitrary stdin lines into a Roam group via /chat.post with deterministic idempotency keys and 429 backoff.", "Webhook tail", "webhook-tail", "Tail recent webhook deliveries from the local subscription registry, --since filtered.", "Token tier doctor", "doctor token", "Probe one representative GET per spec family (HQ, On-Air, Chat, SCIM, Webhooks) and print which families this key can reach.", "SCIM roster diff", "scim-diff", "Diff a CSV/JSON HRIS roster against /Users SCIM list; print add/update/remove sets. --apply runs SCIM CRUD.", "Mention inbox", "mention-inbox", "Local FTS over messages.text for @user tokens with --since filter; tail format." ], "path": "library/productivity/roam", "printer": "gregvanhorn", "printer_name": "Greg Van Horn", "creator": { "handle": "gregvanhorn", "name": "Greg Van Horn" }, "mcp": { "binary": "roam-pp-mcp", "transports": [ "stdio" ], "tool_count": 85, "public_tool_count": 85, "auth_type": "bearer", "env_vars": [ "ROAM_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "robinhood", "category": "payments", "api": "Robinhood", "description": "Welcome to Robinhood Crypto Trading API documentation for traders and developers!", "search_terms": [ "robinhood", "robinhood-pp-cli", "Agent-native CLI + MCP for the whole of Robinhood: brokerage accounts (individual + retirement), positions, options and option chains, portfolio performance (YTD/1w/1m/1y/5y/all), transfers, dividends, orders, and watchlists across api.robinhood.com and the bonfire gateway — plus the official Robinhood Crypto Trading API as the documented subset. Reads are live; writes default to dry-run behind a ROBINHOOD_PP_ALLOW_WRITES gate.", "Unified Robinhood browser plus official Crypto route map", "brokerage all-routes", "Expose the merged Robinhood-published Crypto OpenAPI and authenticated brokerage/account browser route inventory so agents can search stocks, options, account, history, documents, transfers, and crypto from one map.", "Write-gated brokerage and crypto execution previews", "brokerage execute", "Plan and dry-run Robinhood brokerage/account and official Crypto API requests with explicit risk labels, default dry-run write behavior, and the ROBINHOOD_PP_ALLOW_WRITES=1 gate before any PP-side live mutation.", "Ticker and account surface evidence pack", "brokerage browser-routes", "Ship the sanitized CDP route templates captured across ticker, option-chain, portfolio, account, settings, documents, transfer, market, and crypto pages for downstream agent routing." ], "path": "library/payments/robinhood", "printer": "zaydiscold", "printer_name": "zaydiscold", "mcp": { "binary": "robinhood-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 16, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "ROBINHOOD_API_KEY", "ROBINHOOD_PRIVATE_KEY_B64" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "safari-history", "category": "productivity", "api": "Safari History", "description": "Reverse-engineered from the hand-built safari-history-pp-cli command/data shape", "search_terms": [ "safari-history", "Safari History", "safari-history-pp-cli", "Query local Safari browsing history from a snapshot index; no remote API spec.", "Session Timeline Reconstruction", "timeline", "Reconstructs session-level browsing timelines from visit-time gaps and redirect chains.", "Derived Dwell Estimate", "dwell", "Estimates per-domain time-on-site from visit-time gaps (Safari stores no native dwell).", "Navigation Graph", "graph", "Builds a page-node / referrer-edge navigation graph (JSON or Graphviz dot)." ], "path": "library/productivity/safari-history", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "safari-history-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 19, "public_tool_count": 19, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "sqlite" } }, { "name": "scrape-creators", "category": "developer-tools", "api": "Scrape Creators", "description": "The easiest way to scrape public social media data at scale. Extract profiles, posts, videos, comments, and more from TikTok, Instagram, YouTube, Twitter, LinkedIn, Facebook, Reddit, and 27+ platforms.", "search_terms": [ "scrape-creators", "Scrape Creators", "scrape-creators-pp-cli", "Cross-platform presence matrix", "creator find", "Given a single handle, see which of 11+ platforms the creator is on, with follower counts side-by-side.", "Trend triangulation across platforms", "trends triangulate", "Snapshot a hashtag or keyword on TikTok, YouTube, Reddit, and Threads in one call to see which platform it's rising fastest on.", "Transcript full-text search across 5 platforms", "transcripts search", "FTS5-indexed search across all transcripts you've synced — TikTok, YouTube, Instagram, Facebook, and Twitter videos.", "Ad library unified search", "ads search", "Search Facebook, Google, and LinkedIn ad libraries in one query — see every ad a brand is currently running.", "Engagement spike detector", "content spikes", "Find videos that performed significantly above a creator's average — the ones that actually went viral.", "Multi-creator comparison", "creator compare", "Compare two or more creators side-by-side on follower count, engagement rate, posting cadence, and content volume.", "Follower growth tracker", "creator track", "Snapshot a creator's follower count daily across every platform; chart their growth trajectory over time.", "Content cadence analysis", "content cadence", "See when a creator posts — by day of week and hour — across every platform you've synced for them.", "Engagement rate ranker", "content analyze", "Rank a creator's synced content by engagement rate (not raw likes) so you see their true best performers.", "Trend delta tracker", "trends delta", "Track whether a hashtag is growing or shrinking by comparing video counts across snapshot intervals.", "Brand ad campaign monitor", "ads monitor", "Snapshot a brand's ads on Facebook, Google, and LinkedIn into SQLite; on rerun, diff new ads vs ones that disappeared.", "Link-in-bio universal resolver", "bio resolve", "Paste any linktree.ee, komi.io, pillar.io, linkbio, or linkme URL and get the unified destination list.", "Credit burn rate monitor", "account budget", "See how fast you're spending API credits and how many days remain at current pace, fused with the API's own usage history." ], "path": "library/developer-tools/scrape-creators", "printer": "adrianhorning08", "printer_name": "Adrian Horning", "creator": { "handle": "adrianhorning08", "name": "Adrian Horning" }, "mcp": { "binary": "scrape-creators-pp-mcp", "transports": [ "stdio" ], "tool_count": 114, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SCRAPE_CREATORS_API_KEY_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "seats-aero", "category": "travel", "api": "Seats Aero Partner", "description": "Seats.aero Partner API for award travel availability, cached search, route lists, and trip revalidation details.", "search_terms": [ "seats-aero", "Seats Aero Partner", "seats-aero-pp-cli", "Search Seats.aero award-flight availability, route coverage, and trip details from the terminal.", "Seats.aero Partner API key from https://seats.aero/partner-api.", "Award deal finder", "seats-aero-partner-search", "Find bookable award seats between airports with cabin, direct-flight, carrier, date, and lowest-mileage filters in one agent-safe command.", "Program route atlas", "routes", "List every route tracked for a mileage program so agents can discover origin-destination coverage before searching availability.", "Bulk award calendar", "availability", "Pull a mileage program availability feed by cabin, date window, and regions to build award calendars and destination shortlists." ], "path": "library/travel/seats-aero", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "seats-aero-pp-mcp", "transports": [ "stdio" ], "tool_count": 4, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SEATS_AERO_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "sec-edgar", "category": "developer-tools", "api": "SEC EDGAR", "description": "Every SEC filing, every XBRL fact, every insider trade — synced into a local SQLite store you can pivot, search,...", "search_terms": [ "sec-edgar", "SEC EDGAR", "sec-edgar-pp-cli", "Every SEC filing, every XBRL fact, every insider trade — synced into a local SQLite store you can pivot, search, and watch offline.", "The SEC requires a User-Agent header with a name and contact email on every request to data.sec.gov and www.sec.gov. There is no API key. Set SEC_EDGAR_USER_AGENT='Your Name your@email.com' and the CLI will send it on every call.", "Coverage-list 8-K item pivot", "watchlist items", "Across a saved watchlist of CIKs, surface 8-Ks filed in the window grouped by Item code (2.05 restructuring, 5.02 exec change, 4.02 non-reliance).", "Insider cluster detector", "insider-cluster", "Flag issuers where 3+ distinct insiders filed Form 4 with the same transaction code (open-market buy or sale) within a rolling N-day window.", "Live filing watch with filters", "watch", "Stream the SEC Atom getcurrent feed with multi-dimensional filtering: form type, 8-K item, CIK watchlist, and keyword regex. Emits one NDJSON line per match.", "XBRL peer-group bench", "industry-bench", "Take an XBRL concept for one reporting period, group by SIC code, and emit percentile statistics (p10/p50/p90) across every public-company filer in that SIC.", "Cross-section concept across companies", "cross-section", "Pivot a single XBRL concept across an explicit company list and the last N reporting periods. Output as a wide pivot table (one row per company, one column per period).", "Restatement / non-reliance scanner", "restatements", "Surface 8-K Item 4.02 (non-reliance on prior financials) plus all 10-K/A and 10-Q/A amendments filed in the window — the textbook accounting-irregularity signal.", "Late filer scanner", "late-filers", "Find issuers that filed an NT 10-K, NT 10-Q, or NT 20-F in the window — the SEC's 'I'm going to miss my reporting deadline' notification.", "13F holdings delta", "holdings delta", "Diff an institutional investor's 13F holdings across two consecutive quarters. Categorize each issuer as ADD / EXIT / INCREASE / DECREASE with share-count delta." ], "path": "library/developer-tools/sec-edgar", "printer": "ChrisDrit", "printer_name": "Chris Drit", "creator": { "handle": "ChrisDrit", "name": "Chris Drit" }, "mcp": { "binary": "sec-edgar-pp-mcp", "transports": [ "stdio" ], "tool_count": 7, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SEC_EDGAR_USER_AGENT" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "semrush", "category": "marketing", "api": "Semrush", "description": "Every Semrush Analytics + Projects feature, plus a local SQLite store and cross-domain joins no other Semrush tool has.", "search_terms": [ "semrush", "semrush-pp-cli", "Every Semrush Analytics + Projects feature, plus a local SQLite store and cross-domain joins no other Semrush tool has.", "Weekly Drift Report", "drift", "Diff this week's domain + keyword snapshot against last week's to see what moved, without re-spending credits on the data you already pulled.", "Snapshot Tag + Diff", "snapshot", "Tag the current local-store state of any resource (e.g. monday-baseline) and later diff any two tags to see exactly what moved between them.", "Backlink Delta Since Last Sync", "backlink new", "Show only the referring domains and backlinks first seen in a window, so the 'did anything new link to us this week' question is a one-liner.", "Budget Ledger", "budget", "Every API call's documented unit cost is logged locally; budget rolls up spend by day, command, resource, and projects month-end burn from the current balance probe.", "Keyword Gap", "Set-difference of organic keywords across two or more domains in the same database, with intersection and unique-to-each modes.", "Backlink Gap", "Find referring domains that link to a competitor but not to you, filtered by authority score.", "Audit Triage", "Rank Site Audit pages by weighted issue severity (errors x3, warnings x1, notices x0.1) so you fix the highest-impact pages first.", "Position Drift", "tracking drift", "Window-function over Position Tracking snapshots: which keywords moved more than N positions, dropped off page 1, or entered page 1, per region and device.", "Country Fan-out", "domain regions", "Run Domain Overview across multiple country databases in one shot, persist all rows with the database key so later cross-region drift queries work.", "SERP Feature Monitor", "serp-features", "Time-series view of which SERP features (featured snippet, People Also Ask, video, image pack) have appeared and disappeared for a tracked keyword.", "Cannibalization Detector", "cannibalization", "List phrases where the same domain ranks for multiple URLs (a known SEO problem) with the URLs and their respective positions.", "Audit Regression Watch", "audit regression", "Diff the latest two Site Audit snapshots for a project: new issue IDs introduced, issues resolved, count delta per severity." ], "path": "library/marketing/semrush", "printer": "Charles-Garrison", "printer_name": "Charles Garrison", "creator": { "handle": "Charles-Garrison", "name": "Charles Garrison" }, "mcp": { "binary": "semrush-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 97, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SEMRUSH_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "sendgrid", "category": "productivity", "api": "Twilio Sendgrid", "description": "Every Twilio SendGrid endpoint, plus offline suppression diffs, stats time-series rollups, and a template-variable...", "search_terms": [ "sendgrid", "Twilio Sendgrid", "sendgrid-pp-cli", "Suppression sync", "Bidirectional sync between SendGrid suppressions and an external CSV/CRM source, with dry-run preview and unified schema across the four inconsistent suppression types.", "Template variable lint", "templates lint", "Statically extracts {{handlebars}} from a template version and cross-checks them against a contact record or JSON payload, flagging missing or typo'd variables before send.", "Suppression diff", "Three-way diff between the local SQLite mirror, live API, and an external CSV; shows adds, drops, and drift across the suppression universe.", "Stats time-series rollup", "stats rollup", "Pulls flat windowed stats from the API, stores them in SQLite, and computes day/week/month rollups plus WoW/MoM deltas.", "Bounce investigate", "bounce why", "Joins suppressions, email activity, and stats locally to produce a narrative explaining why a specific address keeps bouncing.", "Template version diff", "templates diff", "Side-by-side semantic diff of two template versions (HTML, plain text, subject, test data) with HTML-aware normalization.", "Activity tail", "Streams Email Activity events with rate-limit-aware polling (respects the 6/min cap), local FTS, and filters by status/from/to.", "Subuser rollup", "subusers rollup", "Fans out per-subuser stats pulls in parallel, caches them locally, and produces a single aggregated table for ESP operators managing tenant hierarchies." ], "path": "library/productivity/sendgrid", "printer": "natekettles", "printer_name": "Nathan Kettles", "creator": { "handle": "natekettles", "name": "Nathan Kettles" }, "mcp": { "binary": "sendgrid-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 391, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SENDGRID_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "sentry", "category": "monitoring", "api": "Sentry", "description": "Error tracking and performance monitoring - projects, issues, events, releases", "search_terms": [ "sentry", "sentry-pp-cli", "Error tracking and performance monitoring - projects, issues, events, releases", "Sentry organization inventory", "organizations list", "List Sentry organizations available to the authenticated token with structured output.", "Seer model inventory", "seer", "List the active LLM model names available through Sentry Seer." ], "path": "library/monitoring/sentry", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "sentry-pp-mcp", "transports": [ "stdio" ], "tool_count": 219, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SENTRY_AUTH_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "servicetitan-pricebook", "category": "sales-and-crm", "api": "ServiceTitan Pricebook", "description": "Sync ServiceTitan Pricebook services, materials, equipment, vendors, markups, warranties, and cost-drift audits.", "search_terms": [ "servicetitan-pricebook", "ServiceTitan Pricebook", "servicetitan-pricebook-pp-cli", "Sync ServiceTitan Pricebook services, materials, equipment, vendors, markups, warranties, and cost-drift audits.", "Markup drift audit", "markup-audit", "Find every material and equipment SKU whose actual markup has drifted off the materials-markup tier ladder.", "Cost-drift report", "cost-drift", "Show every SKU whose cost moved since a given date, with old and new cost, old and new price, and whether the price followed.", "Missing vendor-part audit", "vendor-part-gaps", "List materials and equipment whose primary vendor part number is empty — the missing 2M Part # sweep.", "Warranty attribution lint", "warranty-lint", "Flag equipment whose warranty text is not prefixed Manufacturer's, or that is missing JKA's 1-year parts & labor line.", "Orphan SKU finder", "orphan-skus", "List materials, equipment, and services assigned to inactive or non-existent categories.", "Vendor quote reconcile", "quote-reconcile", "Match a vendor cost file against synced SKUs by vendor part number and print a no-write diff of proposed cost changes; accepts CSV or Claude-extracted JSON from a quote, order confirmation, or invoice PDF.", "Hold-markup repricer", "reprice", "Compute the tier-correct price for markup-drifted SKUs and emit the exact update payloads; preview by default, --apply to write.", "Pricebook health summary", "health", "One compact rollup of markup-drift, vendor-part-gap, warranty-lint, cost-drift, orphan-SKU, duplicate, and weak-copy counts.", "Bulk-write planner", "bulk-plan", "Turn a reviewed cost or copy change file into a single pricebook bulk-update payload instead of N individual update calls.", "Duplicate-SKU detector", "dedupe", "Cluster near-duplicate materials and equipment so excess pricebook growth can be collapsed.", "Sales-copy description audit", "copy-audit", "Flag SKUs whose display name or description is empty, too short, ALL-CAPS, a bare part number, or otherwise not customer-facing.", "Natural-language part finder", "find", "Forgiving ranked search over synced SKUs tuned for describing a part you do not know the code for." ], "path": "library/sales-and-crm/servicetitan-pricebook", "printer": "pierc", "printer_name": "Pierce", "creator": { "handle": "pierc", "name": "Pierce" }, "mcp": { "binary": "servicetitan-pricebook-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 40, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "ST_CLIENT_ID", "ST_CLIENT_SECRET" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "setlist-fm", "category": "media-and-entertainment", "api": "setlist.fm", "description": "Search setlist.fm artists, setlists, venues, cities, and concert histories through the setlist.fm API.", "search_terms": [ "setlist-fm", "setlist.fm", "setlist-fm-pp-cli", "Search setlist.fm artists, setlists, venues, cities, and concert histories through the setlist.fm API.", "Setlist prediction", "predict", "Generate a likely setlist for an upcoming show using recency-weighted per-song probability from the artist's recent tour.", "Per-song stats", "song-stats", "For one song: total plays, first/last date, longest gap, average set position, percentage of shows that included it.", "Overdue songs", "overdue", "Rank an artist's songs by shows-since-last-played to surface what is most due to return.", "Tour shape", "tour-shape", "Median set length, encore frequency, song-position histogram, top openers and closers for one tour.", "Tour comparison", "compare", "Overlap percent, dropped songs, debuts, and set-position shifts between two named tours of one artist.", "Encore intelligence", "encore", "Top encore openers, top encore closers, percent of shows that had an encore at all.", "Cover finder", "covers", "All cover songs an artist has played live, ranked by frequency with the original artist.", "Setlist diff", "setlist-diff", "Side-by-side song diff of two setlist IDs.", "Song gap", "song-gap", "Biggest dry spells for one song and when the comeback happened.", "Rare debuts", "debut", "Songs an artist has played exactly once live.", "Attended dashboard", "attended-stats", "Total shows, unique artists/songs/venues/cities, biggest streak, longest gap, decade breakdown for a user.", "Bingo card", "bingo", "Printable bingo card of N most-likely-to-play songs for an upcoming show.", "Venue loyalty", "venue-loyalty", "Top venues an artist plays at, by frequency. Detects 'home venue' patterns.", "Since-cursor digest", "since", "Setlist updates since a given timestamp; pair with sync for delta refresh.", "Spotify playlist export", "playlist", "Generate a Spotify playlist from an artist's most recent setlist (or merged last N setlists) — output as CSV, M3U, or Spotify-search URIs, or use the Spotify Web API to create the playlist directly." ], "path": "library/media-and-entertainment/setlist-fm", "printer": "davemorin", "printer_name": "Dave Morin", "creator": { "handle": "davemorin", "name": "Dave Morin" }, "contributors": [ { "handle": "mvanhorn", "name": "Matt Van Horn" } ], "mcp": { "binary": "setlist-fm-pp-mcp", "transports": [ "stdio" ], "tool_count": 15, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SETLIST_FM_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "shopify", "category": "commerce", "api": "Shopify", "description": "Operate a Shopify store from the terminal with curated Admin GraphQL commands, local sync, analytics, and bulk exports.", "search_terms": [ "shopify", "shopify-pp-cli", "Operate a Shopify store from the terminal with local sync, analytics, and bulk exports.", "Sales Funnel from ShopifyQL", "shopifyql funnel", "Three-stage funnel over N days (sessions -> checkouts -> orders) computed via ShopifyQL with real response columns.", "Raw ShopifyQL Query", "shopifyql query", "Run an arbitrary ShopifyQL query string and stream the JSON response.", "Daily Sessions", "shopifyql sessions", "Online Store sessions per day for the last N days.", "Conversion Rate", "shopifyql conversion", "Online Store conversion rate over the last N days, optionally per-day.", "Daily Revenue Breakdown", "report revenue-daily", "Daily revenue, refunds, net, and order count over the last N days from the local orders store.", "Channel Mix", "report channel-mix", "Revenue by sourceName (web, draft_order, pos, channel id) over the last N days.", "Tag-Match Impact", "report show-impact", "Compare revenue for tag-matched orders against the rest over the last N days.", "Attach Rate", "report attach-rate", "Percent of orders containing --anchor that also contain --attached, by case-insensitive line-item title substring.", "Repeat-Purchase Lifecycle", "report customer-lifecycle", "Repeat-purchase distribution and median time-between-orders over the last N days.", "Current Bulk Operation", "bulk-operations current", "Show the currently running or most recent Shopify bulk operation.", "Run Bulk Query", "bulk-operations run-query", "Start a Shopify bulk operation from a GraphQL query string or file.", "Order Tag Mutation", "orders tag", "Add or remove tags on a Shopify order by id or name.", "Customer Tag Mutation", "customers tag", "Add or remove tags on a Shopify customer by id.", "Auth Audit", "Audit OAuth client_credentials setup and access-token freshness.", "Store Daily Brief", "store daily-brief", "Executive store brief with revenue, top products, risk checks, and suggested next actions from the local mirror.", "Store Health Audit", "store audit", "Score store health from refunds, fulfillment risk, shipping anomalies, and dead stock.", "Growth Campaign Brief", "growth campaign-brief", "Generate a data-backed campaign brief from top products, VIPs, and winback opportunities.", "Winback Candidates", "growth winback-candidates", "Rank idle customers by lifetime value and suggest winback angles.", "VIP Segments", "growth vip-segments", "Segment high-value customers by spend, frequency, recency, and recommended action.", "Fulfillment Risk Queue", "ops fulfillment-risk", "Find open fulfillment orders older than a threshold and classify risk.", "Shipping Anomalies", "ops shipping-anomalies", "Find orders with free, missing, or unusually high shipping charges using synced shippingLines.", "Bundle Opportunities", "merchandising bundle-opportunities", "Suggest bundles from co-purchase confidence and lift.", "Dead Stock Actions", "merchandising dead-stock-actions", "Turn inventory with no recent sales into markdown or bundle actions.", "Product Launch Brief", "merchandising launch-brief", "Build a launch/relaunch brief from product sales, inventory, and merchandising evidence." ], "path": "library/commerce/shopify", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "contributors": [ { "handle": "benjaminn8", "name": "Benjamin" } ], "mcp": { "binary": "shopify-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 12, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SHOPIFY_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "skool", "category": "media-and-entertainment", "api": "Skool", "description": "Every Skool community feature, plus a local SQLite mirror, FTS, and cross-community ops no other Skool tool ships.", "search_terms": [ "skool", "skool-pp-cli", "Every Skool community feature, plus a local SQLite mirror, FTS, and cross-community ops no other Skool tool ships.", "Top posts", "posts top", "Rank recent posts by upvotes, comments, or engagement and return them with full content.", "Leaderboard", "Top members by points for the community, with level and bio fields included.", "Digest since", "Aggregate everything new across posts, comments, members, and lessons since a timestamp.", "Cross-community SQL", "sql", "Run read-only SQL across every community in your local store.", "Calendar to ICS", "calendar export", "Export upcoming community events to an .ics file for Google Cal / Outlook.", "Classroom export", "Export an entire course to a markdown bundle (modules, lessons, attachments, video URLs)." ], "path": "library/media-and-entertainment/skool", "printer": "quoxientzero", "printer_name": "Zain Haseeb", "creator": { "handle": "quoxientzero", "name": "Zain Haseeb" }, "mcp": { "binary": "skool-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 21, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "slack", "category": "productivity", "api": "Slack", "description": "Send messages, search conversations, monitor channels, and manage your Slack workspace from the terminal", "search_terms": [ "slack", "slack-pp-cli" ], "path": "library/productivity/slack", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "slack-pp-mcp", "transports": [ "stdio" ], "tool_count": 66, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SLACK_BOT_TOKEN" ], "mcp_ready": "full" } }, { "name": "slickdeals", "category": "commerce", "api": "Slickdeals", "description": "Slickdeals frontpage, coupons, and recommendations from your terminal — agent-native, MCP-compatible, locally...", "search_terms": [ "slickdeals", "slickdeals-pp-cli", "hot deals (live RSS, sorted by thumbs)", "hot", "Top live frontpage deals filtered by min-thumbs, sorted thumbs DESC.", "fresh frontpage RSS", "frontpage-fresh", "Live unfiltered frontpage RSS feed (today's drops).", "client-side live search", "search --live", "Keyword filter on the live frontpage RSS as a fallback for Slickdeals' broken server-side search.", "category browsing with keyword expansion", "category", "Curated forum-id -> keyword map (tech, gaming, home, grocery, apparel, sports) for client-side filtering of the live frontpage.", "live featured-coupons via Nuxt", "coupons", "Live featured coupon list with optional --store merchant filter.", "deal watch with optional snapshot persistence", "watch", "Fetch a single deal from the live frontpage RSS, optionally persisting a snapshot row for time-series analytics.", "daily digest with merchant cap and grouping", "digest", "Summarize the top-N captured snapshots over a window, optionally capped per merchant and grouped by merchant/category.", "compound deal query (store + category + since + min-thumbs)", "deals", "Flagship SQL compound query over captured snapshots: --store costco --since 24h --min-thumbs 50.", "top-stores merchant aggregation", "analytics top-stores", "Merchant aggregation over a time window: deal_count, avg_thumbs, max_thumbs, first/last seen.", "thumbs velocity time-series", "analytics thumbs-velocity", "Chronological thumb-count observations for a deal with per-step delta — momentum signal for arbitrage and auto-snipe." ], "path": "library/commerce/slickdeals", "printer": "beetz12", "printer_name": "David He", "creator": { "handle": "beetz12", "name": "David He" }, "mcp": { "binary": "slickdeals-pp-mcp", "transports": [ "stdio" ], "tool_count": 18, "public_tool_count": 18, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "smartlead", "category": "sales-and-crm", "api": "Smartlead", "description": "Every SmartLead API feature, plus a local mirror that answers campaign-health, silent-lead, and cross-campaign...", "search_terms": [ "smartlead", "smartlead-pp-cli", "Campaign health scorecard", "health", "One-shot scorecard for every campaign — bounce rate, reply rate, silent-lead count, sender count, and a stale flag — without clicking through the dashboard.", "Silent-lead finder", "silent", "Finds leads that were emailed but have not replied within N days — the exact set to follow up with or retire.", "Cross-campaign dupe and domain ledger", "dupes", "Scans the whole lead mirror for emails or domains that appear in two or more campaigns; --domain prints the full pitch ledger for one site.", "Sender health ranking", "sender-health", "Ranks every email sender account by a composite of inbox-warmup landing rate, SMTP/IMAP connection health, and sending utilization.", "Warmup-readiness gate", "warmup-gate", "Checks each sender account against warmup thresholds (--min-days, --min-inbox-rate); with --strict it exits non-zero when any account fails — a scriptable launch gate.", "Reply-rate drift", "drift", "Computes week-over-week reply, open, and bounce deltas for a campaign by querying analytics one seven-day window at a time." ], "path": "library/sales-and-crm/smartlead", "printer": "bossriceshark", "printer_name": "bossriceshark", "creator": { "handle": "bossriceshark", "name": "bossriceshark" }, "mcp": { "binary": "smartlead-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 44, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SMARTLEAD_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "sncf-connect", "category": "travel", "api": "Navitia", "description": "navitia.io is the open API for building cool stuff with mobility data.", "search_terms": [ "sncf-connect", "Navitia", "sncf-connect-pp-cli", "navitia.io is the open API for building cool stuff with mobility data.", "Commute tracker", "commute check", "Save your commute route and check it each morning — next trains plus disruption status in one call, exits non-zero on disruption for cron scripting.", "Disruption digest", "disruptions digest", "Morning brief of all disruptions across your saved lines, ranked by severity: blocked first, then delayed, then informational.", "Isochrone station list", "isochrone stations", "Given a starting point and travel duration, list all train stations reachable within that time.", "Accessibility report", "journey accessibility", "For a planned journey, show elevator and escalator status at each transfer station so you know before you travel.", "Timetable frequency heatmap", "timetable heatmap", "See how many trains run each hour on a line at a stop — ASCII bar chart showing peak and off-peak density.", "Board export", "Export a full departure board as flat CSV or JSONL for pipeline ingestion — all fields, no formatting.", "Vehicle journey trace", "vehicle trace", "Get the full ordered stop sequence for a specific train service — train's perspective, not traveler's.", "Stop cluster", "stops cluster", "Group nearby stops within a radius using Haversine distance — useful for deduplicating station indexes and resolving ambiguous names." ], "path": "library/travel/sncf-connect", "printer": "jmbernabotto", "printer_name": "jmbernabotto", "creator": { "handle": "jmbernabotto", "name": "jmbernabotto" }, "mcp": { "binary": "sncf-connect-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 269, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "SNCF_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "splitwise", "category": "payments", "api": "Splitwise", "description": "Every Splitwise feature, plus an offline SQLite ledger that powers balance, debt-aging, spend analytics", "search_terms": [ "splitwise", "splitwise-pp-cli", "Every Splitwise feature, plus an offline SQLite ledger that powers balance, debt-aging, spend analytics, and full-text search no other Splitwise tool has.", "Net balance overview", "balances", "See everything you owe and are owed across every friend and group in one net-position view.", "Debt aging", "debts", "List who owes you (and whom you owe) sorted by how long the balance has gone unsettled.", "Group ledger with running balance", "ledger", "Every expense in a group, in date order, with a cumulative running balance per member.", "Spend analytics rollups", "spend", "Total shared spend broken down by category, group, or month from your synced history.", "Offline expense search", "search", "Full-text search across your entire expense history, comments, and group/friend names — offline.", "Settle-up plan", "settle-up", "Compute the minimum set of transfers that zeroes out balances in a group, then optionally record the payments.", "Activity diff", "activity", "Show what changed since your last sync — new, edited, and deleted expenses to review.", "Split calculator", "split", "Build and preview the exact expense split (equal, exact, percentage, or shares) before recording it.", "Recurring-expense detector", "recurring", "Surface repeating charges (rent, utilities, subscriptions) from your synced history and flag a month missing an expected entry." ], "path": "library/payments/splitwise", "printer": "vinnyp", "printer_name": "Vinny Pasceri", "creator": { "handle": "vinnyp", "name": "Vinny Pasceri" }, "mcp": { "binary": "splitwise-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 27, "public_tool_count": 2, "auth_type": "bearer_token", "env_vars": [ "SPLITWISE_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "spotify", "category": "media-and-entertainment", "api": "Spotify Web", "description": "An agent-native Spotify CLI with a SQLite-backed local library that lets you ask listening-drift questions no other...", "search_terms": [ "spotify", "Spotify Web", "spotify-pp-cli", "Snapshot-aware playlist diff", "playlists diff", "Compare a playlist's current state against any prior snapshot to see exactly which tracks were added, removed, or reordered.", "ISRC-aware playlist dedupe", "playlists dedupe", "Find duplicate tracks in a playlist by ISRC (catches the album/single/EP/deluxe-reissue dupe class), report by default, --apply to remove.", "Cross-playlist merge with dedupe", "playlists merge", "Combine multiple playlists into one with built-in dedupe and ordering controls.", "Top-tracks rotation drift", "top drift", "Compare two top-tracks snapshots and show who rose, fell, or stayed stable across a time window.", "Release-Radar replacement", "releases since", "List new albums and singles released since a date by artists you follow, sorted newest first.", "Cross-entity track lookup", "tracks where", "For a given track, find every place it appears in your data: which playlists, whether saved, last played, and on which devices.", "Play-history by listening context", "play history", "Bucket your recent play history by the playlist or album that drove each play, ranked by play count and total duration.", "Agent-friendly queue-from-saved", "queue from-saved", "Pick N tracks from your saved library (optionally filtered by artist or playlist origin) and queue them in one command.", "Genre-walked artist discovery", "discover artists", "Find artists you don't follow yet who match the genres of your top, saved, or followed artists, ranked by popularity within each genre.", "Co-occurrence discovery via public playlists", "discover via-playlists", "Find artists frequently co-curated with a seed artist by searching public playlists that contain them and ranking other artists by co-occurrence count.", "Artist deep-dive gap finder", "discover artist-gaps", "For an artist, show their full discography chronologically with each album marked as saved or unsaved against your library.", "New releases in your genres", "discover new-releases", "Filter Spotify's global new-releases feed down to releases whose artists share a genre with your top or followed artists; optionally exclude artists you already follow.", "Play to device by friendly name", "play-on", "Resolve a device by friendly name against the live /me/player/devices list and the locally cached devices_seen table, then start playback. Cached entries let you reference devices that aren't currently online with a typed wake hint instead of a raw 404." ], "path": "library/media-and-entertainment/spotify", "printer": "rob-coco", "printer_name": "Rob Zehner", "creator": { "handle": "rob-coco", "name": "Rob Zehner" }, "mcp": { "binary": "spotify-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 97, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SPOTIFY_OAUTH_2_0" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "squarespace", "category": "commerce", "api": "Squarespace", "description": "Squarespace Commerce plus browser-backed account domains, DNS, email forwarding, and billing reads.", "search_terms": [ "squarespace", "squarespace-pp-cli", "Browser-backed account dashboard reads", "account", "Read Squarespace account dashboard domains, website summaries, domain DNS records, email forwarding, registrar metadata, and per-website domain linkage using a logged-in browser session cookie.", "Friendly site aliases", "site", "Use site, website, pages, and store-pages aliases over the generated Commerce API website profile and store pages endpoints." ], "path": "library/commerce/squarespace", "printer": "zaydiscold", "printer_name": "Zayd", "creator": { "handle": "zaydiscold", "name": "Zayd" }, "mcp": { "binary": "squarespace-pp-mcp", "transports": [ "stdio" ], "tool_count": 0, "public_tool_count": 0, "auth_type": "bearer", "env_vars": [ "COMMERCE_AUTHORIZATION", "SQUARESPACE_ACCOUNT_COOKIE", "SQUARESPACE_ACCOUNT_COOKIE_FILE" ], "mcp_ready": "full", "spec_format": "openapi" } }, { "name": "stackadapt", "category": "marketing", "api": "StackAdapt", "description": "The first agent-native StackAdapt CLI: pacing, delivery drift", "search_terms": [ "stackadapt", "stackadapt-pp-cli", "The first agent-native StackAdapt CLI: pacing, delivery drift, and spend reconciliation the dashboard and warehouse connectors can't answer in one call.", "Pacing observatory", "pacing", "See which campaigns are under- or over-pacing against their budget, not just current spend.", "Delivery drift", "delivery-drift", "Track CTR, CPM, and spend drift week-over-week for a campaign and flag when performance degrades.", "Bottleneck", "Rank the highest-spend campaigns by worst ROAS or CPA, with a reason column.", "Stale campaigns", "stale-campaigns", "Find active campaigns with zero delivery in the last N days." ], "path": "library/marketing/stackadapt", "printer": "sdhilip200", "printer_name": "Dhilip Subramanian", "mcp": { "binary": "stackadapt-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "STACKADAPT_API_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "steam-web", "category": "media-and-entertainment", "api": "Steam Web", "description": "Look up Steam players, games, achievements, friends, and stats from the command line", "search_terms": [ "steam-web", "Steam Web", "steam-web-pp-cli", "Library backlog audit", "library audit", "Surface never-launched games, paid titles you bounced off in under 2 hours, and where your hours actually went by genre.", "Friend playtime comparison on one app", "friends compare", "Rank everyone in your friend list by hours spent in a specific game, with throttled fan-out so you don't trip Steam's 25 req/s budget.", "Next easiest achievement to unlock (cross-library)", "next-achievement", "Across your entire library, surface the achievement with the highest global unlock percentage that you still don't have.", "Per-app achievement workbench", "achievement-hunt", "Render the full achievement schema for one app side-by-side with your unlock state and the global rarity of each achievement in one table.", "Rarest unlocked achievements (flex view)", "rare-achievements", "Surface your rarest achievement unlocks across all owned games — the inverse of the next-achievement query, sorted by ascending global percentage.", "Library diff between two SteamIDs", "library compare", "Set operations across two libraries — what's mine-only, what's theirs-only, what's shared with playtime delta.", "Currently-playing friends", "currently-playing", "Show which friends are in-game right now and what they're playing — one batched API call across the friend list, no fanout.", "Achievement leaderboard among friends", "achievement-leaderboard", "Rank your friends by achievement completion percentage for one app, throttled fan-out via the same limiter that powers friends compare.", "Review velocity for one app", "review-velocity", "Reviews per day and voted-up share over a rolling window for one app — date-bucket aggregation over the cursor-paginated appreviews stream.", "News full-text search across tracked apps", "news search", "FTS5 search across the title and contents of every news post you've synced, optionally scoped by appid or date range.", "Concurrent-player trend for one app", "play-trend", "Show concurrent-player count over time for one app as a sparkline plus min/max/last over a rolling window — value scales with how often you sample." ], "path": "library/media-and-entertainment/steam-web", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "steam-web-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 169, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "STEAM_WEB_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "strava", "category": "productivity", "api": "Strava", "description": "Every Strava feature, plus offline analytics — training load, power curves, zone time", "search_terms": [ "strava", "strava-pp-cli", "Every Strava feature, plus offline analytics — training load, power curves, zone time, and segment progression — that the website can't show you.", "Segment Effort Progression", "segments progress", "See your entire effort history on a segment — date, time, avg power, avg HR, delta from PR — so you can track if you're actually improving.", "Training Load Timeline (CTL/ATL/TSB)", "training load", "See your Chronic Training Load, Acute Training Load, and Training Stress Balance as sparklines so you can spot overtraining or undertaper before a race.", "Zone Time Distribution", "training zones", "See how many minutes per week you actually spent in each heart rate or power zone, so you can tell if your training distribution matches your plan.", "Power Curve", "athlete power-curve", "See your best mean power for every standard duration (1s to 60min) so you can identify strengths, weaknesses, and fitness changes across seasons.", "HR Drift Detector", "activities drift", "Measure aerobic decoupling in an activity — the ratio of HR rise to pace drop in the second half — to assess aerobic fitness without lab testing.", "Bulk Activity Updater", "activities bulk-update", "Update gear, name template, or description across hundreds of activities at once with a preview-before-commit safety net.", "Gear Retirement Tracker", "gear status", "See total mileage on each shoe and bike, your configured replacement threshold, and an estimated retirement date based on your recent usage rate.", "KOM Gap Tracker", "segments kom-gap", "See exactly how far you are from the KOM on each starred segment, ranked by the gap you're most likely to close." ], "path": "library/productivity/strava", "printer": "azaaron", "printer_name": "azaaron", "creator": { "handle": "azaaron", "name": "azaaron" }, "mcp": { "binary": "strava-pp-mcp", "transports": [ "stdio" ], "tool_count": 34, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "STRAVA_STRAVA_OAUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "stripe", "category": "payments", "api": "Stripe", "description": "Every Stripe feature, plus a local SQLite mirror with FTS, cross-entity SQL, and analytics no other Stripe tool ships.", "search_terms": [ "stripe", "stripe-pp-cli", "Payment processing and financial infrastructure API", "Customer health score", "health", "Compute a 0-100 health score for one or many customers from local SQLite, factoring in failed-payment count, dispute history, MRR contribution, subscription status, and account age.", "Dunning queue", "dunning-queue", "List invoices in past_due/uncollectible state ranked by days-overdue, with last failure reason and customer email pulled from the local store.", "Cross-entity SQL", "sql", "Run read-only SQLite queries against the local Stripe mirror. All synced data lives in a generic 'resources' table — query with json_extract(data, '$.field') and filter by resource_type.", "Payout reconciliation pivot", "payout-reconcile", "Join payouts to balance_transactions to charges to customers from local store; flag missing balance_transactions and mismatches; CSV export.", "Customer 360 dossier", "customer-360", "One-shot dossier: customer profile + active subs + recent invoices + payment methods + recent charges + open disputes + lifetime spend.", "Subscriptions at risk", "subs-at-risk", "List subscriptions whose default payment method's card expires in a window, sorted by current MRR contribution.", "Agent-shaped events since cursor", "events-since", "Fetch all Events since a cursor, persist new cursor in profile, no daemon. One-shot replacement for stripe-cli's listen daemon.", "Metadata grep", "metadata-grep", "Search every synced resource's metadata bag for a key/value across resource types; returns (resource_type, id, matched_kv) rows." ], "path": "library/payments/stripe", "printer": "crodorg", "printer_name": "Chris Rodriguez", "creator": { "handle": "crodorg", "name": "Chris Rodriguez" }, "mcp": { "binary": "stripe-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 534, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "STRIPE_SECRET_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "substack", "category": "media-and-entertainment", "api": "Substack", "description": "Run your Substack growth loop from the command line — publish, schedule, engage", "search_terms": [ "substack", "substack-pp-cli", "Run your Substack growth loop from the command line — publish, schedule, engage, and measure with cross-table joins no single Substack API call can.", "Note-to-subscriber attribution ledger", "growth attribution", "Connect every Note you posted to the paid and free subscribers that actually arrived in the 24-hour window after, so you stop guessing which content drove growth.", "Engagement reciprocity ledger", "engage reciprocity", "See net-give/net-take per writer you engage with — who reciprocates your restacks/comments, who quietly free-rides on yours.", "Cadence guard", "notes schedule --guard", "Refuse to fire (or queue) a Note that lands less than 30 minutes after your last own-Note or violates your time-of-day rotation. Returns typed exit 2 with a JSON diagnosis.", "Goal-aware best-time recommender", "growth best-time", "Top day-of-week × hour cells ranked for whichever growth signal you pick (paid subs, likes, restacks, or comments) — not a single average.", "Hook-pattern miner", "discover patterns", "Mechanically extracts which hook patterns (curiosity-gap colon, 3-sentence formula, em-dash reframe, question opener) actually rank in a niche, with restack/comment ratios.", "Swap-partner finder", "recs find-partners", "Score candidate publications for a Substack Recommendations swap by mutual-overlap density across followee + recommendation graphs.", "Pod restack scoreboard", "growth pod", "Given a list of handles, render a member × member engagement matrix — last 30 days of restacks/comments/likes between every pair.", "Voice fingerprint", "Measurable voice profile — sentence length, em-dash rate, colon-hook rate, hook-line ratios, vocabulary uniqueness — for any handle, with --diff to compare against another writer.", "Portfolio Dashboard", "portfolio", "One-screen status of every publication you own: subscriber count, paid count, last-published-at, drafts pending, next scheduled. No tab-switching, no CSV exports.", "Cross-Publication Twin", "posts twin", "Duplicate a published post into another publication you own as a draft. Preserves paywall markers, sections, and re-uploads images to the target publication's CDN.", "Subscriber Churn Diff", "subs churn", "Diff two SQLite snapshots of your subscriber list: who newly subscribed, who unsubscribed, who upgraded free->paid, who downgraded paid->free, since a chosen window.", "Cross-Sell Candidates", "subs cross-sell", "SQL join across your publications' subscriber lists: emails paid on one publication but free or absent on the others, sorted by paid-publication coverage. The cross-sell list Substack does not ship.", "Best Posts Cross-Publication", "posts best", "Rank posts by views, likes, comments, or restacks within a window. Optionally aggregate across every publication you own to find your overall top performer.", "Bilingual Pair Tracker", "posts pairs", "Record EN<->DE post pairings in a local table. 'posts pair ' adds; 'posts pairs --missing' lists posts in one language with no recorded twin in the other.", "Full-Text Grep", "grep", "FTS5 over post bodies + Notes + comments, ranked by bm25, returning snippets and source URLs. Optional scope (posts/notes/comments/all), publication, and since filter.", "Schedule Board", "ASCII calendar of the next 30 days showing scheduled posts across every publication you own. Multi-pub editorial overview in one screen." ], "path": "library/media-and-entertainment/substack", "printer": "chirantan", "printer_name": "Chirantan Rajhans", "creator": { "handle": "chirantan", "name": "Chirantan Rajhans" }, "contributors": [ { "handle": "JPresting", "name": "JimPresting" }, { "handle": "tmchow", "name": "Trevin Chow" } ], "mcp": { "binary": "substack-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 39, "public_tool_count": 0, "auth_type": "cookie", "env_vars": [], "mcp_ready": "partial", "spec_format": "internal" } }, { "name": "sumble", "category": "sales-and-crm", "api": "Sumble", "description": "Every Sumble v6 feature, plus the credit-awareness the API itself won't give you", "search_terms": [ "sumble", "sumble-pp-cli", "Every Sumble v6 feature, plus the credit-awareness the API itself won't give you: cost estimates before every billed call, a running balance, a budget guard, and a local SQLite cache so you never pay twice.", "Pre-call cost estimate", "cost-estimate", "See exactly how many credits a billed Sumble call will cost before you run it.", "Running credit balance", "balance", "Show remaining Sumble credits and recent burn without spending any.", "Budget ceiling guard", "budget", "Set a credit ceiling so any call whose estimate exceeds it is refused before it dials.", "Spend report", "spend", "Break down credits spent over time by endpoint and by day.", "Stale-cache report", "stale", "List cached organizations, people, and jobs older than Sumble's freshness window.", "Tech-stack diff", "stack-diff", "Compare two cached organizations' technology stacks — shared and unique technologies.", "Free-first reconcile", "reconcile", "Resolve a CSV of company names/URLs to Sumble IDs via the cheap match endpoint, then report which still need a billed enrich." ], "path": "library/sales-and-crm/sumble", "printer": "cpard", "printer_name": "Kostas Pardalis", "mcp": { "binary": "sumble-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 19, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SUMBLE_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "suno", "category": "media-and-entertainment", "api": "Suno", "description": "The correct, offline-first Suno CLI — every feature the abandoned clients have, plus a local SQLite library", "search_terms": [ "suno", "suno-pp-cli", "The correct, offline-first Suno CLI — every feature the abandoned clients have, plus a local SQLite library, full-text search, and agent-native output none of them ship.", "Lyric-line grep", "grep", "Find clips by remembered lyric, prompt, or tag phrases via local full-text search.", "Library analytics", "analytics", "Grouped roll-ups across your whole library: counts, average duration/bpm, total plays and upvotes by any clip field.", "Variation lineage", "lineage", "Render the iteration tree of a track: its extends, covers, and remixes, reconstructed from local links.", "Top tracks", "top", "Ranked flat list of your best clips by plays, upvotes, or duration, with machine-readable output.", "Raw SQL", "sql", "Run read-only SQL directly against your local synced clip store.", "Credit throttle report", "credits --forecast", "Remaining credits plus your recent generation volume measured against Suno's captcha-throttle threshold." ], "path": "library/media-and-entertainment/suno", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "contributors": [ { "handle": "horknfbr", "name": "Scott Macdonald" } ], "mcp": { "binary": "suno-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 37, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SUNO_TOKEN", "SUNO_JWT" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "supabase", "category": "developer-tools", "api": "Supabase", "description": "Every Supabase runtime endpoint — PostgREST CRUD, Auth Admin, Storage objects, Edge Function invoke — plus the...", "search_terms": [ "supabase", "supabase-pp-cli", "Cross-project secret-name audit", "secrets where-name", "Find every project (across orgs) holding a secret with a given name, plus when each was last synced.", "Function inventory rollup", "functions inventory", "Per-project, per-org rollup of every edge function with slug, version, status, and last-deployed timestamp.", "Branch-drift sweep", "branches drift", "List preview branches older than N days that haven't been merged or deleted, grouped by parent project.", "Auth user lookup with context", "auth-admin lookup", "Look up an Auth user by email and optionally join their row from a user-named PostgREST context table on user_id.", "RLS-aware schema introspection", "pgrst schema", "Fetch the per-project PostgREST OpenAPI from the Management API and list tables, columns, types, and detected indexes for typed query planning.", "Project estate rollup", "projects estate", "One-row-per-project rollup of function count, branch count, api-key count, secret-name count, and last-synced-at.", "Storage bucket usage rollup", "storage usage", "For each bucket, list objects and aggregate file count, total bytes, and largest object.", "Cross-project recent signups", "auth-admin recent", "Iterate synced projects, call Auth Admin per project, aggregate users created within the window into one table." ], "path": "library/developer-tools/supabase", "printer": "giacaglia", "printer_name": "Giuliano Giacaglia", "creator": { "handle": "giacaglia", "name": "Giuliano Giacaglia" }, "mcp": { "binary": "supabase-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 162, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SUPABASE_ACCESS_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "superhuman", "category": "productivity", "api": "Superhuman", "description": "The Superhuman CLI that doesn't log you out, with a local inbox, agent-native I/O, and triage rules the web app...", "search_terms": [ "superhuman", "superhuman-pp-cli", "Workflow compound commands", "workflow", "Compound commands that combine multiple API operations into one verb (see `workflow --help`).", "Capability discovery via `which`", "which", "Resolve a natural-language capability query to the best matching command from this CLI's curated feature index." ], "path": "library/productivity/superhuman", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "superhuman-pp-mcp", "transports": [ "stdio" ], "tool_count": 11, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SUPERHUMAN_JWT" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "surgegraph", "category": "ai", "api": "Surgegraph Facade", "description": "SurgeGraph is the Answer Engine Optimization (AEO) platform that tracks AI citations, scores pages for citation readiness, and one-click fixes the gaps — now every workflow runs from the terminal or any agent.", "search_terms": [ "surgegraph", "Surgegraph Facade", "surgegraph-pp-cli", "Visibility weekly delta", "visibility delta", "See exactly what moved in AI Visibility week over week — overview, trend, sentiment, or traffic — without screenshotting two dashboard tabs and diffing them by hand.", "Prompts that lost AI mentions", "visibility prompts losers", "Surface tracked prompts whose citation count or first-position rank dropped vs the prior window — the report a CMO asks for every Monday and the dashboard can't produce.", "Citation-domain rank shift", "visibility citation-domains rank-shift", "Watch which domains gained or lost citation share for your project's AI-tracked prompts over a 30-day window — useful when a competitor starts crowding the answer set.", "Knowledge-library impact", "knowledge impact", "Rank a project's knowledge libraries by how often their grounded URLs actually appear in tracked AI citations — answers \"is this library worth maintaining?\".", "Topic-coverage drift", "research drift", "Diff a topic_research's hierarchical map against the writer_documents you've already shipped — covered vs gap, ranked for action.", "Gap to publish pipeline", "research gaps publish", "Take topic-gap output, bulk-create documents in 50-doc batches, and queue them into a WordPress integration — one idempotent command for the content-ops ritual.", "Stale-doc projection", "docs stale", "List writer and optimized docs not updated in the last N days, ranked by recent AI-source traffic — the refresh queue in one query.", "Competitor topic diff", "research domain diff", "Set-diff a competitor's domain_research topic tree against your own topic_research — instant view of what they cover and you don't.", "Cross-project visibility roll-up", "visibility portfolio", "Roll up AI Visibility deltas across every project in the organization — the agency-portfolio view the single-project UI doesn't produce.", "Quota burn-down forecast", "account burn", "Project credit exhaustion from your last 30 days of usage snapshots — a pre-flight check before queueing a large bulk-publish run.", "Traffic-page to citation join", "visibility traffic-citations", "For each top-traffic page, list the tracked prompts whose AI citations resolved to it — answers \"why is this page getting AI traffic?\".", "Agent context bundle", "context bundle", "Emit a JSON blob shaped for an agent's context window covering prompts, citations, docs, and topic-maps for one project — the handoff payload an agent's loop needs.", "Local search", "search", "Full-text search across local cache: AI Visibility prompts, citations, writer documents, optimized documents, and topic-map nodes — one query, multi-entity hits.", "Sync diff", "Emit per-resource sync cursors and total row counts from the local store — the inspection primitive for agent loops that need to know whether a re-sync is due." ], "path": "library/ai/surgegraph", "printer": "ng-plentisoft", "printer_name": "SurgeGraph Team", "creator": { "handle": "ng-plentisoft", "name": "SurgeGraph Team" }, "mcp": { "binary": "surgegraph-facade-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 68, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "SURGEGRAPH_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "table-reservation-goat", "category": "food-and-dining", "api": "Table Reservation GOAT", "description": "One reservation CLI for OpenTable, Tock, and Resy — search all three networks at once, watch for cancellations, book, and track changes from a local store agents can query.", "search_terms": [ "table-reservation-goat", "Table Reservation GOAT", "table-reservation-goat-pp-cli", "Cross-network unified search", "goat", "One query across OpenTable and Tock simultaneously, ranked by relevance, earliest availability, and price band.", "Cross-network cancellation watcher", "watch", "Persistent local watcher that polls both networks for openings on your target venues and party size, with notifications and optional auto-book.", "Multi-venue earliest available", "earliest", "Across a list of restaurants from either network, return the earliest open slot per venue within a time horizon.", "Per-restaurant change feed", "drift", "Show what changed at a specific venue since the last sync — new experiences, slot price moves, hours changes." ], "path": "library/food-and-dining/table-reservation-goat", "printer": "pejmanjohn", "printer_name": "Pejman Pour-Moezzi", "creator": { "handle": "pejmanjohn", "name": "Pejman Pour-Moezzi" }, "mcp": { "binary": "table-reservation-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 12, "public_tool_count": 12, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "techmeme", "category": "productivity", "api": "Techmeme", "description": "Tech news aggregation and curation. No official API exists. This spec describes the RSS, OPML, search, and HTML surfaces available for programmatic access. No authentication required.", "search_terms": [ "techmeme", "techmeme-pp-cli", "What Did I Miss", "since", "See every tech headline from the last N hours — the perfect catch-up when you've been away", "Topic Tracker", "track", "Save topics and get alerts when they hit Techmeme — persistent monitoring without browser tabs", "Source Rankings", "sources", "See which publications dominate Techmeme and track source frequency over time", "Trending Topics", "trending", "Extract the hottest topics from recent headlines using frequency analysis on cached data", "Daily Digest", "digest", "Get a day's tech news grouped by topic — the briefing you'd write if you had time", "Story Velocity", "velocity", "Find stories that are blowing up — multiple sources covering the same topic in a short window", "Author Spotlight", "author", "Find all Techmeme headlines by a specific journalist across the cached archive" ], "path": "library/productivity/techmeme", "printer": "davemorin", "printer_name": "Dave Morin", "creator": { "handle": "davemorin", "name": "Dave Morin" }, "mcp": { "binary": "techmeme-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "tella", "category": "media-and-entertainment", "api": "Tella Public", "description": "Every Tella API operation behind one CLI, with a local SQLite store, FTS5 transcript search, and webhook tooling...", "search_terms": [ "tella", "Tella Public", "tella-pp-cli", "Cross-video transcript search", "transcripts search", "FTS5 search across every cached clip transcript in your workspace; returns video, clip, and timecode hits in milliseconds.", "Watch-milestone digest", "videos viewed", "Roll up webhook view-milestone events into a per-video summary over a window (e.g. who crossed 75% in the last 7 days).", "Webhook tail + replay", "webhooks tail", "Stream new webhook events from the inbox to stdout, and replay any prior message to a local URL with valid HMAC headers — no public tunnel needed.", "Bulk standard edit pass", "clips edit-pass", "Apply a chained set of edits (remove-fillers, trim-silences-gt N, blur preset) across every clip in a playlist in one command.", "Transcript diff (cut vs uncut)", "clips transcript-diff", "Diff a clip's cut transcript against its uncut transcript to surface every word that editing removed (filler, silence, hand-edit) with timecodes.", "Exports waitlist", "exports wait", "Kick off exports for one or more videos and block until each is ready, short-circuiting on the Export ready webhook event.", "Caption-file export", "clips captions", "Format a clip's cut transcript as an SRT or VTT subtitle file ready to attach to an embed or upload.", "Workspace stats", "Local aggregate of video count, clip count, total duration, transcript word count, and export count by month across the cached workspace." ], "path": "library/media-and-entertainment/tella", "printer": "gregce", "printer_name": "Greg Ceccarelli", "creator": { "handle": "gregce", "name": "Greg Ceccarelli" }, "contributors": [ { "handle": "cathrynlavery", "name": "Cathryn Lavery" } ], "mcp": { "binary": "tella-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 51, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "TELLA_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "tenderned", "category": "sales-and-crm", "api": "TenderNed", "description": "Every Dutch public tender, with the sub-threshold long tail that EU TED never sees, in a local-first CLI you can pipe.", "search_terms": [ "tenderned", "tenderned-pp-cli", "Dutch public-tender CLI with offline search, document corpus, and the sub-threshold long tail TED never sees." ], "path": "library/sales-and-crm/tenderned", "printer": "markvandeven", "printer_name": "markvandeven", "creator": { "handle": "markvandeven", "name": "markvandeven" }, "mcp": { "binary": "tenderned-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 7, "public_tool_count": 7, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "tesla", "category": "devices", "api": "Tesla", "description": "Every Tesla mobile-app feature, plus a charging-cost ledger and supercharger queue watcher no other Tesla CLI ships.", "search_terms": [ "tesla", "tesla-pp-cli", "Every Tesla mobile-API feature, plus offline charging history and a SQLite-backed vehicle log no other Tesla CLI has", "Ready-to-drive composite", "ready", "Single yes/no answer to \"can I leave in 5 minutes?\" with reasoned blocker list - SOC vs trip distance, plugged-in, doors closed, sentry off, cabin within 3F of target, no mid-install update", "Charging cost ledger", "cost ledger", "Per-session cost, monthly spend, home-vs-Supercharger ratio with tariff-window aware $/kWh", "Cost counterfactual", "cost what-if", "\"If you had only charged at home you would have saved $X over the last 90 days.\" Re-runs charge rows with home $/kWh substituted for Supercharger sessions", "Supercharger queue watch", "supercharger watch", "Single-poll snapshot of free stalls at a saved Supercharger; --watch repeats every N seconds with JSON-lines transitions", "Drive-and-charge timeline", "timeline", "Stitched drives + charges from synced vehicle_states polls - start/end, distance, energy, efficiency, address-resolved lat/lng", "Vampire-drain monitor", "vampire", "SOC delta vs idle time, flags suspicious sentry sessions or app-wake events", "Keys audit", "Lists every enrolled key with last-seen, role, form-factor; flags keys not seen >90d as stale candidates for removal", "Reachability doctor", "doctor", "Detects signed-command-required errors, classifies the vehicle as REST-friendly vs signed-command-required, prints tesla-control enrollment URL when needed" ], "path": "library/devices/tesla", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "contributors": [ { "handle": "ameshalexk", "name": "Amesh Alex Kuruvilla" } ], "mcp": { "binary": "tesla-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 80, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "TESLA_AUTH_TOKEN" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "ticketmaster", "category": "media-and-entertainment", "api": "Ticketmaster", "description": "Every Discovery v2 endpoint plus offline search, multi-venue watchlists, residency dedup, and on-sale tracking no...", "search_terms": [ "ticketmaster", "ticketmaster-pp-cli", "Multi-venue watchlist sweep", "events upcoming", "Fan out across a venue ID file or list and return one merged, deduplicated, date-sorted event list — the watchlist primitive behind any curated 'what's on at my venues' workflow.", "Residency collapse", "events residency", "Collapse runs of same-name + same-venue events into one row per residency with first_date, last_date, night_count, and id_list — so a 16-night opera season shows as one entry, not 16.", "Attraction tour view with on-sale flag", "events tour", "For a given attraction (artist/team/touring show), return every upcoming event sorted by date, with city, venue, on-sale status, and a flag for events going on-sale within 7 days.", "On-sale-soon scanner", "events on-sale-soon", "Local query for events whose public on-sale falls in the next N days, sorted ascending — the canonical 'presale watch' view that no API endpoint provides.", "Classification bucketing", "events by-classification", "Local join of events × classifications, grouped by segment and genre, with event count and three example events per leaf — the bucketed view newsletter authors and local-scene trackers reach for.", "Named persistent watchlists", "events watchlist", "Save, list, run, and remove named filter sets (venue IDs, attraction IDs, segments, DMA IDs) that persist across runs in the local SQLite store — the generic primitive any curated 'my venues' workflow composes from.", "Stream-shaped dedup", "events dedup", "Read an event JSON array from stdin or the local store, apply a deduplication strategy (name+venue+date, or tour-leg), and write the deduped stream to stdout — composes with any upstream command.", "Markdown what's-on brief", "events brief", "Render a markdown 'what's on' report grouped by night → venue → events with classification labels and price bands, suitable for newsletter, Obsidian, iMessage, or agent context.", "Price-band distribution", "events price-bands", "Bucket events by priceRanges.min into <$50 / $50-100 / $100-200 / $200+ bands and report count + sample events per band, grouped by classification." ], "path": "library/media-and-entertainment/ticketmaster", "printer": "omarshahine", "printer_name": "Omar Shahine", "creator": { "handle": "omarshahine", "name": "Omar Shahine" }, "mcp": { "binary": "ticketmaster-pp-mcp", "transports": [ "stdio" ], "tool_count": 13, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "TICKETMASTER_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "tidycal", "category": "productivity", "api": "TidyCal", "description": "TidyCal's REST API provides a handful of endpoints which can be used to get information about your account and bookings.", "search_terms": [ "tidycal", "tidycal-pp-cli", "Scheduling and booking API for meetings, contacts, booking types, and team calendars.", "Schedule brief", "brief", "Produce a contact-aware schedule brief for a day or date range.", "Schedule triage", "triage", "Identify booking problems such as missing meeting URLs, duplicate contacts, off-hours bookings, cancelled bookings, and incomplete contact data.", "Availability shortlist", "propose-times", "Fetch available TidyCal timeslots for a booking type and rank a paste-ready shortlist by date window, timezone, preference, and weekend policy.", "Follow-up queue", "followups", "Create an AI-ready follow-up queue from recent bookings without sending messages or notifications.", "Assisted booking", "assisted-book", "Book on behalf of a contact through an inspectable dry-run and explicit confirmation gate." ], "path": "library/productivity/tidycal", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "tidycal-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 18, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "TIDYCAL_API_TOKEN", "TIDYCAL_BEARER_AUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "tiktok-shop", "category": "commerce", "api": "TikTok Shop", "description": "Safe v1 TikTok Shop Seller API CLI/MCP for auth readiness, token exchange and refresh, read-only shops, orders, products, inventory search, fulfillment packages, and warehouses.", "search_terms": [ "tiktok-shop", "TikTok Shop", "tiktok-shop-pp-cli", "Safe v1 TikTok Shop Seller API CLI/MCP for auth readiness, token exchange and read endpoints; pre-flight checks gate live writes by default.", "Official-docs safety context", "agent-context", "Emit machine-readable command, auth, official-doc URL, and mutation-policy context so agents can distinguish confirmed safe v1 capabilities from deferred TikTok Shop surfaces.", "Signed dry-run request inspection", "shops info --dry-run", "Build and redact the signed TikTok Shop request shape before any live Open API call, including app key, shop cipher, tokens, and generated sign material.", "Deferred inventory mutation guardrail", "inventory update", "Expose the confirmed inventory update endpoint as an explicit deferred-mutation status instead of executing stock changes before idempotency and retry safety are designed." ], "path": "library/commerce/tiktok-shop", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "contributors": [ { "handle": "mvanhorn", "name": "Matt Van Horn" } ], "mcp": { "binary": "tiktok-shop-pp-mcp", "transports": [ "stdio" ], "tool_count": 11, "public_tool_count": 11, "auth_type": "signed_tiktok_shop_open_api", "env_vars": [ "TIKTOK_SHOP_APP_KEY", "TIKTOK_SHOP_APP_SECRET", "TIKTOK_SHOP_ACCESS_TOKEN", "TIKTOK_SHOP_REFRESH_TOKEN", "TIKTOK_SHOP_SHOP_CIPHER" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "trendhunter", "category": "marketing", "api": "Trend Hunter", "description": "Every Trend Hunter feature, plus a local SQLite corpus, FTS5 search, FAQ Q&A extraction, and agent-native JSON no...", "search_terms": [ "trendhunter", "Trend Hunter", "trendhunter-pp-cli", "Search, sync, and explore TrendHunter trends from the terminal - offline FTS, agent-native JSON, FAQ Q&A extraction, no API key.", "Trend digest", "digest", "Generate a week-over-week digest of new vs repeat trends in a category with top rising keywords.", "Category watch", "watch", "Per-category new-only feed - fills the gap that TrendHunter's RSS is global-only.", "FAQ extraction", "faq", "Extract the FAQPage JSON-LD from a trend page into structured Q&A.", "Rising clusters", "cluster", "Surface rising keyword clusters via FTS5 co-occurrence with a rising-vs-prior-window delta.", "Author velocity", "authors", "Rank TrendHunter authors and futurists by time-windowed publish rate, not lifetime count.", "Megatrend map", "megatrend-map", "Walk the related-trend graph two levels deep from a starting slug, returning depth-1 and depth-2 related slugs.", "Agent brief", "brief", "One-shot agent brief: top-N ranked trends in a category, each with FAQ Q&A and keywords, rendered as JSON or markdown.", "Inbox cursor", "inbox", "Show trends seen since the last invocation of `inbox` - a per-machine cursor table.", "Business scout", "scout", "Pull top trends in a category, score each by relevance to a business profile, optionally route the scoring through a local LLM." ], "path": "library/marketing/trendhunter", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "trendhunter-pp-mcp", "transports": [ "stdio" ], "tool_count": 9, "public_tool_count": 9, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "trigger-dev", "category": "developer-tools", "api": "Trigger.dev", "description": "Durable background jobs and AI agent orchestration — runs, schedules, deployments, batches, queues, waitpoints, env vars, and TRQL analytics", "search_terms": [ "trigger-dev", "Trigger.dev", "trigger-dev-pp-cli", "Durable background jobs and AI agent orchestration — runs, schedules, deployments, batches, queues, waitpoints, env vars, and TRQL analytics", "LLM span cost rollup", "runs span-cost", "Group recent runs by model and task to see which span pairs are eating your LLM budget — the report your finance lead actually wants.", "Real-time failure watch", "runs watch", "Watches runs for new failures and interrupts your terminal the moment one happens — non-zero exit, desktop notification, sound, composable in shell loops.", "Stale schedule detection", "schedules stale", "Lists schedules that stopped firing or whose recent runs have a low success rate — the zombie-cron audit no other tool gives you.", "Env var diff", "envvars diff", "Side-by-side diff of environment variables between two environments — keys missing, keys extra, values that differ (masked).", "Recurring failure patterns", "failures top", "Top recurring (task, error-signature) pairs over a time window — mechanical group-by, no LLM, no NLP.", "Full-text search over run errors", "runs find", "substring grep over the synced runs table — error messages, tags, metadata, task identifiers — ranked by recency.", "Typed exit codes on terminal-state runs", "runs get", "runs get returns typed exit codes per terminal status: 0=COMPLETED, 20=FAILED, 21=CRASHED, 22=SYSTEM_FAILURE, 23=CANCELED, 3=not-found, 4=auth-error.", "TRQL recipe library", "query recipes", "Curated TRQL one-liners for the common analytics questions (failed-last-hour, cost-by-model-7d, oncall-deploy-window) — list them with `query recipes`, run them parameterized with `query run `." ], "path": "library/developer-tools/trigger-dev", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "trigger-dev-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 47, "public_tool_count": 1, "auth_type": "bearer_token", "env_vars": [ "TRIGGER_SECRET_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "trustpilot", "category": "marketing", "api": "Trustpilot", "description": "Every Trustpilot review surface, plus the local SQLite database and balanced good-and-bad agent bundle no other...", "search_terms": [ "trustpilot", "trustpilot-pp-cli", "Every Trustpilot review surface, plus the local SQLite database and balanced good-and-bad agent bundle no other Trustpilot tool ships.", "Balanced recent slice", "top-recent", "Pulls N freshest 4-5 star reviews and N freshest 1-2 star reviews for a company in one call, so agents can quote a balanced view without two separate scrapes.", "One-shot agent bundle", "agent-bundle", "Returns a single JSON payload with company metadata, TrustScore, Trustpilot's own AI summary, top recent good and bad reviews, and the 5-bin rating histogram — everything an external agent needs in one call.", "TrustScore + sentiment drift", "drift", "Week-over-week TrustScore, 1-star %, 5-star %, and review volume reconstructed from locally synced reviews. Trustpilot exposes only the current TrustScore; this surfaces history.", "Multi-company comparison", "compare", "Side-by-side TrustScore, review velocity, and 1/5-star mix across N companies over a chosen window, all read from the local synced store.", "Review-velocity surge", "surge", "Detects statistically significant spikes in total review volume or 1-star volume against a rolling baseline using Z-scores over locally synced rows.", "Offline review FTS", "search-reviews", "Full-text search over synced review titles, bodies, and business replies with star, language, and date filters. FTS5-backed, works offline.", "Business-reply gap", "replies", "Reply rate by star bucket over synced reviews, plus a listing of unreplied 1-stars when --unreplied is set.", "Country-of-reviewer mix", "geo", "Reviewer-country distribution over a window with per-country count, average rating, and 1-star rate.", "Trustpilot topic-AI passthrough", "topics", "Surfaces Trustpilot's own pre-computed topic AI summaries (e.g., 'shipping', 'price', 'condition') as JSON.", "Similar-companies sweep", "similar-sweep", "Takes the 8 'similar businesses' Trustpilot returns for a company, fetches each one's info in parallel, and ranks them by TrustScore and total reviews.", "Sync delta", "whats-new", "Lists reviews that arrived since the last sync, bucketed by star rating, so an agent can poll for fresh customer feedback without re-fetching everything.", "Category leaderboard", "category-top", "Ranks the companies in a Trustpilot category by TrustScore (with an optional minimum-review floor)." ], "path": "library/marketing/trustpilot", "printer": "mvanhorn", "printer_name": "Matt Van Horn", "creator": { "handle": "mvanhorn", "name": "Matt Van Horn" }, "mcp": { "binary": "trustpilot-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "twilio", "category": "social-and-messaging", "api": "Twilio", "description": "Every Twilio Core feature, plus offline message and call history, FTS, and SQL-grade analytics no other Twilio tool...", "search_terms": [ "twilio", "twilio-pp-cli", "Communication APIs for SMS, voice, and messaging", "Failed-message breakdown", "delivery-failures", "See why messages failed last week, grouped by error code and destination country, with the dollar cost of those failures totaled.", "Subaccount spend matrix", "subaccount-spend", "One CSV with every subaccount's last-month spend pivoted across SMS, MMS, voice, and recording categories — the agency-billing report nobody else ships.", "Call timeline stitch", "call-trace", "Given a CallSid, return everything that happened on that call: metadata, recordings, transcriptions, conference participation — in one structured output.", "TCPA opt-out reconciliation", "opt-out-violations", "Find numbers that texted STOP/UNSUBSCRIBE/END/QUIT and any messages your account sent to them afterwards — the TCPA exposure check the Twilio API has no resource for.", "Message status funnel", "message-status-funnel", "Distribution of message terminal statuses (delivered, failed, undelivered, sent) with delivery-rate percentages and median time-to-delivery.", "Call disposition cross-tab", "call-disposition", "Cross-tab of call Status (completed, busy, no-answer, failed, canceled) by AnsweredBy (human, machine_start, fax), with dollar cost per bucket.", "Idle number reclamation", "idle-numbers", "Phone numbers you are paying for but have not used to send or receive in N days — with the dollar amount you are wasting per month.", "Webhook orphan audit", "webhook-audit", "Group your IncomingPhoneNumbers by their Voice/SMS webhook URL to find single-use URLs that may be orphans pointing at deleted endpoints. Add --probe for a live HEAD check.", "Number conversation feed", "conversation", "All messages and calls involving one phone number, merged into a single timestamped timeline with in/out arrows, body, and duration.", "Error code explainer", "error-code-explain", "Top error codes from your recent messages and calls, with curated one-line explanations and fixes for the most common Twilio errors.", "Sync watermark inspector", "sync-status", "Last sync timestamp and row count per resource in the local store — so you know how fresh every other analytic command is.", "Live failure tail", "tail-messages", "Stream new messages with a status filter as they happen — twilio-pp-cli's --follow that twilio-cli does not ship." ], "path": "library/social-and-messaging/twilio", "printer": "CleverAI-ZH", "printer_name": "Stephan Stoeber", "creator": { "handle": "CleverAI-ZH", "name": "Stephan Stoeber" }, "mcp": { "binary": "twilio-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 197, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "TWILIO_ACCOUNT_SID_AUTH_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "ucp", "category": "commerce", "api": "UCP", "description": "A Go CLI for Google's Universal Commerce Protocol — talk to UCP merchants over REST or MCP", "search_terms": [ "ucp", "ucp-pp-cli", "A Go CLI for Google's Universal Commerce Protocol — talk to UCP merchants over REST or MCP, search across them in parallel, build carts, and prep checkout drafts that an AP2 CLI can authorize.", "UCP merchant manifest validator", "check", "Fetch `/.well-known/ucp` for any domain and return a graded report covering schema validity, advertised transports, and capability coverage — works against any merchant publishing a UCP manifest, including MCP-only Shopify-hosted stores.", "Bundled pure-Go mock UCP merchant", "mock serve", "Spawn a UCP-compliant reference merchant locally (pure-Go, no external runtime) so `ucp check`, `search`, `cart`, and `checkout prep` flows work end-to-end without a third-party UCP merchant or extra language toolchains." ], "path": "library/commerce/ucp", "printer": "beetz12", "printer_name": "david", "creator": { "handle": "beetz12", "name": "david" }, "mcp": { "binary": "ucp-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "API_TOKEN" ], "mcp_ready": "full" } }, { "name": "ufo-goat", "category": "other", "api": "War.gov UFO", "description": "Browse, search, and download declassified UAP files from the War.gov PURSUE archive", "search_terms": [ "ufo-goat", "War.gov UFO", "ufo-goat-pp-cli", "Release Sync", "sync", "Automatically detect and fetch new file tranches as the government releases them on a rolling basis", "What's New", "new", "See exactly which files were added since your last sync — the 'what did I miss' command for rolling releases", "Cross-Agency Timeline", "timeline", "View a chronological incident timeline spanning 1944-2025 across all four agencies", "Paired File Discovery", "pairs", "Find video-PDF pairings so researchers can locate the document that accompanies a video and vice versa", "Download Manager", "download", "Download files with resume support, verification, and progress tracking for the 2.3 GB archive", "Agency Breakdown", "agencies", "See which agency contributed what: file counts, types, date ranges, and coverage analysis", "Location Intelligence", "locations", "Aggregate incidents by geographic location for mapping and spatial analysis" ], "path": "library/other/ufo-goat", "printer": "davemorin", "printer_name": "Dave Morin", "creator": { "handle": "davemorin", "name": "Dave Morin" }, "mcp": { "binary": "ufo-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 4, "public_tool_count": 4, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "usgs-earthquakes", "category": "other", "api": "USGS Earthquakes", "description": "Every USGS earthquake feed and event query in one terminal, with offline SQLite cache, agent-native output, and a...", "search_terms": [ "usgs-earthquakes", "USGS Earthquakes", "usgs-earthquakes-pp-cli", "Every USGS earthquake feed and event query in one terminal, with offline SQLite cache, agent-native output, and a live watch mode.", "Live event watch with dedup + pluggable notifier", "watch", "Long-running poll of a USGS summary feed with deduplication against the local store. Invokes an optional shell hook per new event for custom alerting.", "Aftershock sequence query", "aftershocks", "Show events within R km and T days after a mainshock, ordered by time. Local SQLite haversine query with FDSN fallback when uncached.", "Spatial-temporal swarm detection", "swarm-detect", "Detect time-space clusters in the local earthquake store. Grid-bucket clustering finds foreshock/aftershock sequences, volcanic swarms, and induced seismicity hotspots.", "Region or period comparison", "compare", "Side-by-side comparison of two regions or two time periods. Returns parallel columns with counts, max magnitude, and total seismic energy.", "Newsroom event briefing", "brief", "Agent-ready briefing for a single earthquake: magnitude, place, PAGER alert, DYFI felt count, ShakeMap MMI, tsunami status, and product inventory.", "Editorial-rank top events", "top", "Rank recent events by composite editorial score: significance × alert weight × felt count × tsunami flag. Default window 24h, limit 10.", "Stateful change / revision diff", "changes", "Diff since the last sync: what events appeared, what events had magnitudes/depths/alerts revised, what events were retracted. Tracks USGS solution revisions over time. Returns 'no revisions recorded yet' until at least two sync runs have completed.", "USGS event ID decoder", "decode-id", "Parse a USGS event ID into its source network code, sequence, and operator name. Joins the cached contributors dictionary for the network display name." ], "path": "library/other/usgs-earthquakes", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "usgs-earthquakes-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 7, "public_tool_count": 7, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "uspto-tsdr", "category": "developer-tools", "api": "Tsdr", "description": "Beginning on October 2, 2020, you will need an API key to access the TSDR REST API See...", "search_terms": [ "uspto-tsdr", "Tsdr", "uspto-tsdr-pp-cli", "Trademark One-Look Status", "trademark status", "Full current state of a trademark in one command — mark text, status, owner, classes, filing/registration dates, attorney, and prosecution event count", "Prosecution Timeline", "trademark timeline", "Every prosecution event in chronological order — office actions, examiner reviews, publication events, and registration milestones", "Deadline Calculator", "trademark deadlines", "Calculate Section 8, 9, and 15 maintenance deadlines with window-open dates and days-away countdown", "Portfolio Watch", "trademark watch", "Monitor multiple trademarks for status changes — caches previous statuses locally and flags any changes since last check", "Batch Status Check", "trademark batch", "Batch status lookup for multiple trademarks using the multi-case endpoint or individual fallback with rate-limit throttling", "Document Listing", "trademark docs", "List all documents in the prosecution file — office actions, responses, specimens, registration certificates — with type and date filtering" ], "path": "library/developer-tools/uspto-tsdr", "printer": "H179922", "printer_name": "H179922", "creator": { "handle": "H179922", "name": "H179922" }, "mcp": { "binary": "uspto-tsdr-pp-mcp", "transports": [ "stdio" ], "tool_count": 24, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "TSDR_APIKEY_HEADER" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "vestaboard", "category": "devices", "api": "Vestaboard", "description": "Read, render", "search_terms": [ "vestaboard", "vestaboard-pp-cli", "Read, render, and write your Vestaboard from the terminal — with a board preview and character-code table no other Vestaboard tool ships.", "Board preview", "message preview", "See what's on your Vestaboard right now as readable text instead of a raw integer grid.", "Character-code table", "characters", "Print the full Vestaboard character-code table (code to glyph) for hand-building a character-array message." ], "path": "library/devices/vestaboard", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "vestaboard-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 5, "public_tool_count": 1, "auth_type": "api_key", "env_vars": [ "VESTABOARD_API_KEY" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "visit-detroit-blog", "category": "travel", "api": "Visit Detroit Blog", "description": "Detroit's official \\\"Inside the D\\\" blog as a CLI — every article searchable offline", "search_terms": [ "visit-detroit-blog", "Visit Detroit Blog", "visit-detroit-blog-pp-cli", "Detroit's official \"Inside the D\" blog as a CLI — every article searchable offline, sliced across category and neighborhood at once, with related-reads and exports the website can't produce.", "Cross-axis filter (category × neighborhood × date)", "blogs list", "Filter Detroit articles by category AND neighborhood AND date window in one query — the slice the website's single-facet search can't express.", "Related reads", "blogs related", "Find the articles that share the most categories and neighborhoods with a given post, ranked.", "Coverage map (category × neighborhood cross-tab)", "blogs coverage", "Cross-tabulate article counts across every category and every neighborhood to see where coverage is dense or thin.", "Reading list export", "blogs reading-list", "Materialize an ordered, deduped reading list (markdown/json/csv) from any filter to a file — with an option to drop sponsored posts for a neutral handout." ], "path": "library/travel/visit-detroit-blog", "printer": "stanrails", "printer_name": "stanrails", "creator": { "handle": "stanrails", "name": "stanrails" }, "mcp": { "binary": "visit-detroit-blog-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 1, "public_tool_count": 1, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "walkingpad", "category": "devices", "api": "walkingpad", "description": "WalkingPad device CLI", "search_terms": [ "walkingpad", "walkingpad-pp-cli", "Control a WalkingPad treadmill over Bluetooth LE: start and stop the belt, set speed, stream live telemetry, and record walks to a local history store.", "Local walk history", "today", "Keep a permanent local record of every walk — distance, steps, time — that survives the belt's power-cut memory loss.", "Streak tracking", "streak", "See your current consecutive-day walking streak.", "Daily trends", "trends", "Distance, steps, and active minutes per day over a window.", "Calorie estimate", "calories", "Estimate calories burned from your body profile — the number the belt refuses to report.", "Family-generic discovery", "scan", "Find any compatible WalkingPad by its BLE service, not its name." ], "path": "library/devices/walkingpad", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" } }, { "name": "wanderlust-goat", "category": "travel", "api": "Wanderlust GOAT", "description": "Wanderlust GOAT — what a knowledgeable local with great taste would tell you to walk to from here, fused across editorial, local-language, and crowd layers no single tool ranks together.", "search_terms": [ "wanderlust-goat", "Wanderlust GOAT", "wanderlust-goat-pp-cli", "Persona-shaped place discovery within walking distance — two-stage funnel that seeds from Google Places and deep-researches each candidate against locale-specific sources.", "Persona-shaped local fanout", "near", "Find the 3-5 amazing things within walking distance that match your stated identity and criteria — not the 40 closest things.", "Heuristic GOAT compound (no LLM)", "goat", "Same fanout as `near` but with no LLM in the runtime path — criteria-to-source mapping uses static lookup tables so the CLI works standalone.", "Agent research-plan emitter", "research-plan", "Output a JSON query plan agents execute in a loop — typed, country-aware, ordered by trust, ready to fan out.", "Crossover walks", "crossover", "Find pairs where a high-trust restaurant sits within 200m of a Wikipedia-notable historic site or Atlas Obscura entry — food + culture in one walk.", "Golden-hour viewpoint hunt", "golden-hour", "Compute sunrise/sunset/blue-hour locally (pure Go, no API) and pair with viewpoints photographers know about within walking distance.", "Route-view exploration", "route-view", "Walking polyline from A to B, then everything interesting along the path — not just at the endpoints.", "City pre-trip sync", "sync-city", "Pre-cache editorial best-of, Reddit threads, Wikipedia, Wikivoyage, OSM POIs, Atlas Obscura, and regional-language sources for offline use.", "Trust-weighted score explanation", "why", "Print every source that mentioned a place, the trust weight, country boost, walking time, criteria match, and the final goat-score breakdown.", "Reddit-quote extractor", "reddit-quotes", "Surface the highest-scored Reddit comment snippets that mention a place — verbatim quotes, no LLM summarization.", "Sync coverage report", "coverage", "Per-tier row counts, last-sync ages, country-match boost, and which v1 sources are missing for a synced city.", "Quiet-hour discovery", "quiet-hour", "Places that locals describe as quiet at the requested time, intersected with OSM opening hours and walking radius." ], "path": "library/travel/wanderlust-goat", "printer": "jheitzeb", "printer_name": "Joe Heitzeberg", "creator": { "handle": "jheitzeb", "name": "Joe Heitzeberg" }, "mcp": { "binary": "wanderlust-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 2, "public_tool_count": 2, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "wavespeed", "category": "ai", "api": "WaveSpeed", "description": "Docs-derived OpenAPI spec for WaveSpeed AI's REST API.", "search_terms": [ "wavespeed", "wavespeed-pp-cli", "Docs-derived OpenAPI spec for WaveSpeed AI's REST API.", "API key from WaveSpeed access key settings", "Dynamic model runner", "run", "Submit WaveSpeed model runs with prompt shorthand, JSON input merging, schema help, price estimates, waiting, downloads, aliases, and local media file upload coercion.", "Dynamic model schema help", "schema", "Fetch the live WaveSpeed model catalog and print api_schema.api_schemas[0].request_schema for a model or project alias.", "Media upload helper", "upload", "Upload local image, video, or audio files to WaveSpeed media storage for use as model input URLs.", "Output downloader", "download", "Download generated output URLs with directory, exact-path, or templated-path destinations.", "Model price estimate", "price", "Estimate WaveSpeed model pricing with the same input syntax used by run, without submitting a prediction.", "Project aliases", "aliases", "Read wavespeed.json aliases, default model, and output directory settings for repeatable local workflows.", "Brief-to-shotlist planner", "plan brief-to-shotlist", "Turn a free-text brief into a structured shotlist with a hybrid deterministic-parser/LLM planner across platforms and aspect ratios.", "Model pick", "plan model-pick", "Recommend a model for an intent from the live catalog with rationale.", "Cost estimate", "plan cost-estimate", "Price a shotlist against live /model/pricing and the account balance, with cached-pricing fallback and per-shot breakdown.", "Multi-platform pack", "pack", "Produce a multi-platform creative pack from one concept at stable packs/// paths with per-platform manifests, concurrency, cost ceiling, and stdlib image-dimension validation.", "Batch producer", "batch", "Submit many prompts from CSV or JSON with a spend ceiling and fail-fast/fail-tolerant semantics; records completed generations before any abort.", "Controlled variants", "variants", "Sweep seed, style, or model off a base shot to produce comparable outputs with side-by-side metadata.", "Pipeline compose", "compose", "Run an explicit multi-step pipeline (text->image->upscale->video), feeding each step's output to the next, with rollback of later steps on failure.", "Aspect re-framing", "aspects", "Re-frame one image into standard platform aspect ratios, using outpaint when supported and falling back to an anchored re-render otherwise.", "Brand restyle", "restyle", "Apply a brand profile or explicit style to an existing asset via img2img with a style prompt.", "Generation library", "library", "List, search (FTS5), show, tag, export, and cost-report the local generation library by brand, model, platform, and tag.", "Production QA preflight", "qa preflight", "Pass/warn/fail validation of a shotlist: balance vs cost, model availability, prompt safety, platform request-shape, and brand coverage.", "Brand profiles", "brand", "Create, inspect, apply, and edit brand profiles that auto-merge into pack, compose, variants, restyle, and run." ], "path": "library/ai/wavespeed", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "wavespeed-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 9, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "WAVESPEED_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "weather-goat", "category": "other", "api": "Open-Meteo + NWS", "description": "Weather forecasts, severe weather alerts, air quality, and GO/CAUTION/STOP activity verdicts for walk, bike, hike, commute, and drive", "search_terms": [ "weather-goat", "weather-goat-pp-cli" ], "path": "library/other/weather-goat", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "weather-goat-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "whoop", "category": "devices", "api": "WHOOP", "description": "Fetch WHOOP recovery, strain, sleep, workout, cycle, profile, and body-measurement data with OAuth-backed API access.", "search_terms": [ "whoop", "whoop-pp-cli", "Fetch WHOOP recovery, strain, sleep, workout, cycle, profile, and body-measurement data with OAuth-backed API access.", "Multi-week trend rollup", "trend", "Aggregate strain, recovery, or sleep across multiple ISO weeks with mean/min/max.", "Coach digest", "digest", "Markdown or JSON shareable summary of the last N days for sharing with a coach or LLM.", "Workout misclassification flagger", "classify", "Flag workouts whose HR shape looks inconsistent with their declared sport_id.", "Cross-metric correlation", "correlate", "Pearson correlation between two daily metrics over a window.", "Sleep debt + recovery prediction", "sleep-debt", "Rolling 14-day sleep debt accumulation and a heuristic recovery prediction for tomorrow.", "Strain budget recommender", "strain-budget", "Recommend today's strain ceiling given a weekly target and current recovery score.", "Week-over-week diff", "diff", "Compare two ISO weeks side-by-side: strain, recovery, sleep deltas with percent change.", "Webhook listener with shell hook", "watch", "HMAC-validated local HTTP server for Whoop webhooks that runs a configurable shell command per event.", "Journal cross-reference", "journal", "Cross-reference Whoop Journal answers against next-day recovery deltas." ], "path": "library/devices/whoop", "printer": "gregvanhorn", "printer_name": "Greg Van Horn", "creator": { "handle": "gregvanhorn", "name": "Greg Van Horn" }, "mcp": { "binary": "whoop-pp-mcp", "transports": [ "stdio" ], "tool_count": 19, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "WHOOP_OAUTH" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "wikipedia", "category": "media-and-entertainment", "api": "Wikipedia", "description": "Wikipedia REST API. Get article summaries, search, browse related topics, and access on-this-day events. No authentication required. Uses a polite User-Agent header.", "search_terms": [ "wikipedia", "wikipedia-pp-cli", "Article summary", "page get-summary", "Fetch concise Wikipedia article summaries for quick research and agent context.", "On-this-day feed", "feed", "Explore on-this-day events as a ready-made discovery workflow." ], "path": "library/media-and-entertainment/wikipedia", "printer": "hnshah", "printer_name": "Hiten Shah", "creator": { "handle": "hnshah", "name": "Hiten Shah" }, "mcp": { "binary": "wikipedia-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 5, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "wolt", "category": "food-and-dining", "api": "Wolt", "description": "Browse-only Wolt consumer CLI.", "search_terms": [ "wolt", "wolt-pp-cli", "Browse Wolt food delivery from the terminal: cities, nearby venues, menus, prices, ETAs, and cross-venue comparisons.", "Menu browsing with prices", "menu show", "Full venue menu: categories + items + prices + dietary preferences + availability. Discovered via the SSR-embedded React Query state behind the Wolt SPA.", "Menu item search with price cap", "menu search", "Substring search within a venue's menu (name + description), sorted cheapest first, with --max-price filter in cents.", "What's open right now and fast", "venues-now", "Filter nearby venues by open status + ETA cap + cuisine tag in one structured call. Replaces three SPA card-clicks.", "Cross-venue comparison", "venues-compare", "Fan-out per-venue dynamic snapshots and join open status + next-close + delivery configs side by side.", "Cuisine bottleneck", "cuisine-bottleneck", "Which cuisines have the longest average ETA right now near a coordinate — aggregates across nearby venues.", "Order tracking by share link", "track", "Parse a Wolt order share URL and extract the order id. Stub — live JSON tracking endpoint not yet reverse-engineered." ], "path": "library/food-and-dining/wolt", "printer": "Amit-Tabibi", "printer_name": "Amit", "creator": { "handle": "Amit-Tabibi", "name": "Amit" } }, { "name": "x-twitter", "category": "social-and-messaging", "api": "X (Twitter)", "description": "Combined CLI for multiple API services", "search_terms": [ "x-twitter", "X (Twitter)", "x-twitter-pp-cli", "X v2 API mirror with first-class Articles support — tweets, users, lists, spaces, bookmarks, likes via the official OpenAPI; long-form Articles authoring via browser-sniffed editor endpoints (GraphQL with rotating operation hashes).", "Markdown to tweet thread", "thread compose", "Split a markdown file into a numbered tweet thread. Atom-aware splitter honors paragraphs, list items, and code fences. Numbering suffix is reserved before packing so final tweet length stays within 280 chars.", "Markdown to X Article", "articles-publish-md", "Parse a markdown file with YAML frontmatter (title, cover, tags) and convert the body to Draft.js content_state JSON — the format X's Articles editor accepts server-side via ArticleEntityUpdateContent. Supports cover images, body images, paragraphs, H1/H2, ordered/unordered lists, blockquote, fenced code blocks, bold, and italic." ], "path": "library/social-and-messaging/x-twitter", "printer": "cathrynlavery", "printer_name": "Cathryn Lavery", "creator": { "handle": "cathrynlavery", "name": "Cathryn Lavery" }, "mcp": { "binary": "x-twitter-pp-mcp", "transports": [ "stdio" ], "tool_count": 156, "public_tool_count": 0, "auth_type": "bearer_token", "env_vars": [ "X_OAUTH2_USER_TOKEN" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "yahoo-finance", "category": "commerce", "api": "Yahoo Finance", "description": "Quotes, charts, fundamentals, options chains, and a local portfolio/watchlist tracker against Yahoo Finance — no API key, with Chrome-session fallback for rate-limited IPs", "search_terms": [ "yahoo-finance", "Yahoo Finance", "yahoo-finance-pp-cli", "Every Yahoo Finance endpoint plus a SQLite portfolio, covered-call screener, and Chrome-cookie fallback the libraries don't ship.", "Portfolio performance tracker", "portfolio perf", "Track YTD / 1Y / all-time returns on your holdings with cost basis, dividends, and current price baked in.", "Morning digest across watchlist", "digest", "One command: overnight news + biggest movers + earnings today + ex-div dates for everything on your watchlist.", "Dividend income + yield-on-cost", "portfolio dividends", "See total dividend income for the year, per-holding breakdown, and yield on cost.", "Options moneyness + DTE filter", "options-chain", "Filter an options chain to ATM/OTM/ITM contracts within a days-to-expiration window.", "Local SQL screener over synced fundamentals", "screen-local", "Run arbitrary P/E, P/B, yield, margin, and growth filters against the data you've synced locally.", "Chrome cookie import fallback", "auth login --chrome", "Import your live Chrome session cookies when Yahoo's crumb handshake is blocked from your IP.", "Insider net-buying signal screener", "insiders-net-buying", "Surface companies where insiders are net buyers in the last N days, filtered to your watchlist.", "Total-return comparator", "compare", "Multi-symbol price-plus-dividend total return ranked over a range.", "Covered-call screener over holdings", "options-covered-calls", "Scan your holdings for covered-call candidates by annualized yield and DTE.", "Watchlist correlation matrix", "watchlist correlate", "Pairwise Pearson correlation across the symbols in a named watchlist over a date range." ], "path": "library/commerce/yahoo-finance", "printer": "tmchow", "printer_name": "Trevin Chow", "creator": { "handle": "tmchow", "name": "Trevin Chow" }, "mcp": { "binary": "yahoo-finance-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 11, "public_tool_count": 11, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "youtube", "category": "media-and-entertainment", "api": "Youtube Data", "description": "Search YouTube in bulk, grab transcripts, get embed snippets — for the photo-keywords-to-blog-post workflow.", "search_terms": [ "youtube", "Youtube Data", "youtube-pp-cli", "Bulk search from stdin", "youtube search-bulk", "Take a list of search terms from stdin or args, return top-N YouTube videos per term in one JSON document with titles, channels, embed URLs, and thumbnails.", "Transcript fetcher", "youtube videos-transcript", "Fetch the spoken-content transcript of a YouTube video using the timedtext endpoint. Works for auto-generated and manual captions on any public video. Caches into the local store.", "Embed snippet generator", "youtube videos-embed", "Print embed HTML, iframe, or markdown-style embed for a video ID. Direct copy-paste into a blog draft.", "Topic-similarity related videos", "youtube videos-related", "Find videos related to a target video using topicDetails + same-channel + tag overlap from the local store. Best-effort replacement for the deprecated relatedToVideoId parameter.", "Top comments by likes", "youtube videos-comments", "Fetch top comments on a video, ranked locally by likeCount. Pulls up to 5 pages from commentThreads.list and sorts so most-liked floats regardless of API order.", "Channel uploads in one call", "youtube channel-uploads", "List a channel's most recent uploads in one call. Resolves @handle or channelId, walks the auto-generated uploads playlist, returns video IDs + titles + publish times." ], "path": "library/media-and-entertainment/youtube", "printer": "justinwfu", "printer_name": "Justin", "creator": { "handle": "justinwfu", "name": "Justin" }, "mcp": { "binary": "youtube-pp-mcp", "transports": [ "stdio" ], "tool_count": 5, "public_tool_count": 0, "auth_type": "api_key", "env_vars": [ "YOUTUBE_API_KEY" ], "mcp_ready": "full", "spec_format": "openapi3" } }, { "name": "zoho-expense", "category": "productivity", "api": "Zoho Expense", "description": "Upload receipts, auto-tag expenses from learned merchant memory", "search_terms": [ "zoho-expense", "Zoho Expense", "zoho-expense-pp-cli", "Upload receipts, tag expenses, and bundle monthly reports on Zoho Expense from the terminal", "Invoice batch ingest", "invoice ingest", "Batch upload a folder of invoices to Zoho Expense, SHA256-dedup against the local store, poll autoscan in parallel, and auto-tag from learned merchant memory — the headline workflow for AI agents that ingest invoices from email.", "Merchant memory", "merchant list", "Build a local merchant→category/project/tag mapping from sync history; pre-fill tags on first sight of a new merchant.", "Merchant mapping training", "merchant map", "Train the local merchant→category mapping for future auto-tag (one merchant at a time, or bulk from a CSV).", "Receipt hash gate", "receipt upload", "SHA256-hash incoming receipts at upload, refuse duplicates (use --force to override).", "Monthly close", "close", "Bundle a month's unreported expenses into an expense report in one shot — flags still-processing autoscans, flags untagged items, creates the report, attaches, optionally submits.", "GST CGST/SGST split", "gst-split", "India-specific: parse an expense's tax_id and line items, compute CGST/SGST (intra-state) or IGST (inter-state) shares, emit the breakdown or update the expense.", "Untagged expense audit", "expense-untagged", "List expenses missing category_id or project_id; `--auto-fix` applies the merchant→tag memory map and PUTs back to Zoho." ], "path": "library/productivity/zoho-expense", "printer": "amitav13", "printer_name": "Amitav Khandelwal", "creator": { "handle": "amitav13", "name": "Amitav Khandelwal" }, "mcp": { "binary": "zoho-expense-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 70, "public_tool_count": 0, "auth_type": "oauth2", "env_vars": [ "ZOHO_EXPENSE_CLIENT_ID", "ZOHO_EXPENSE_CLIENT_SECRET", "ZOHO_EXPENSE_REFRESH_TOKEN", "ZOHO_EXPENSE_ORGANIZATION_ID" ], "mcp_ready": "full", "spec_format": "internal" } }, { "name": "zoom", "category": "productivity", "api": "Zoom", "description": "The first Zoom CLI that joins your local desktop app, your on-disk recordings, and your cloud account into one...", "search_terms": [ "zoom", "zoom-pp-cli", "Find a quote across all transcripts", "find", "Search every locally-recorded and cloud-recorded Zoom transcript at once, with speaker filter, context windows, and a clickable deep link back to the exact second.", "Storage audit of local recordings", "storage", "Group everything under ~/Documents/Zoom/ by month, topic, or partial-conversion status; cross-check against the cloud recordings list to flag duplicates safe to delete locally.", "Recording drift detector", "recordings drift", "Set-difference between local and cloud recordings; flags cloud recordings approaching the org retention deadline and local double_click_to_convert partials whose cloud version is already complete.", "Today's meeting load + conflicts", "today", "One screen: every meeting on your calendar today, every saved bookmark scheduled for today, every recording made today, and any overlapping intervals flagged as conflicts.", "Bookmark from URL paste", "saved add-from-url", "Paste any Zoom URL shape (https://zoom.us/j/?pwd=, zoommtg://, calendar-invite formats) and the CLI extracts ID + unencrypted password into a named saved bookmark in one step.", "Schedule + bookmark in one shot", "schedule", "Create a cloud meeting (POST /users/me/meetings) and immediately persist the resulting ID + password into local saved_meetings, so future `zoom saved join ` works offline.", "Speaker-time analytics on a recording", "recordings analyze", "Per-speaker total talk-seconds, longest monologue, and cue-overlap interruption count, computed from VTT cue timestamps and speaker labels.", "Export a recording bundle", "recordings export", "Resolve a recording ID against local first, fall back to cloud (downloading if needed); package mp4 + vtt + chat.txt + a generated INDEX.md with timestamped table of contents into one folder.", "My Notes — open the Zoom Notes web portal", "notes web", "Open https://zoom.us/notes (optionally scoped to a meeting) in the user's default browser — the only path to the live Notes UI since Zoom has no public REST endpoint for the My Notes feature.", "My Notes — AI Companion meeting summary", "notes summary", "Fetches Zoom AI Companion's auto-generated meeting summary for a meeting UUID via the documented `/meetings/{uuid}/meeting_summary` endpoint (S2S OAuth gated).", "My Notes — AI Companion transcript", "notes transcript", "Fetches the AI Companion full transcript for a meeting UUID via the documented `/meetings/{uuid}/transcript` endpoint (S2S OAuth gated).", "My Notes — ingest exported PDF or DOCX", "notes ingest", "Parses a Notes PDF or DOCX exported from the Zoom web portal, extracts text + meeting metadata + headings, indexes them in a local SQLite `notes` table (FTS5 enabled).", "My Notes — search across ingested notes", "notes search", "FTS5 query across every Notes file that has been ingested, returns `meeting_topic + note_excerpt + source_file + match_offset` with optional `--since` / `--meeting-id` filters.", "My Notes — extract to-do / action items", "notes todos", "Scans ingested notes for action-item patterns (`TODO:`, `Action:`, `[ ]`, `- [ ]`, `Action Item:`, `Next:`, `Follow up:`, `Owner:`) and emits a structured to-do list with source meeting topic + date + checkbox state." ], "path": "library/productivity/zoom", "printer": "Holajack", "printer_name": "Jacken", "creator": { "handle": "Holajack", "name": "Jacken" }, "mcp": { "binary": "zoom-pp-mcp", "transports": [ "stdio", "http" ], "tool_count": 155, "public_tool_count": 155, "auth_type": "none", "env_vars": [], "mcp_ready": "full", "spec_format": "openapi3" } } ] }