Skip to content

Search products, tools, founders, niches and guides.

Developers

Shipfolio MCP server

Manage your listing and research products, stacks and launches from Claude, Cursor, VS Code or any MCP client. Sign in with your Shipfolio account; the free plan works.

Connect a client

What you can do

The server speaks for you: anything you can see or change on Shipfolio, your assistant can too, within the access you approve.

Run your listing from chat

Research the market

Connect your client

Add the server once with its URL. The first time a tool runs, your client opens Shipfolio in the browser so you can sign in and approve it.

Claude

On claude.ai. Connectors you add there also work in the desktop and mobile apps.

  1. 1

    Open connector settings

    Settings Connectors Add custom connector

    Open Claude
  2. 2

    Name it Shipfolio and paste the URL

  3. 3

    Select Connect, then sign in to Shipfolio

    Approve the access you want on the page that opens. Claude keeps it until you disconnect.

Claude Code

Add it from your terminal, then run /mcp in Claude Code and pick shipfolio to sign in.

Terminal
claude mcp add --transport http shipfolio https://api.shipfolio.io/mcp

Add --scope user to use it in every project, not just this one.

Cursor

Install it in one click, or add it to your config by hand. Cursor asks you to sign in when it connects.

Add to Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "shipfolio": {
      "url": "https://api.shipfolio.io/mcp"
    }
  }
}

VS Code

With GitHub Copilot's agent mode. Add it for your user from a terminal, or for one workspace in its config.

Terminal
code --add-mcp '{"name":"shipfolio","type":"http","url":"https://api.shipfolio.io/mcp"}'
.vscode/mcp.json
{
  "servers": {
    "shipfolio": {
      "type": "http",
      "url": "https://api.shipfolio.io/mcp"
    }
  }
}

Other clients and API keys

Any client that supports Streamable HTTP and OAuth with dynamic client registration connects with just the URL. For one that can't sign in, like a script or a CI job, send a personal API key as a Bearer token instead.

Header
Authorization: Bearer sfk_…
mcp.json
{
  "mcpServers": {
    "shipfolio": {
      "url": "https://api.shipfolio.io/mcp",
      "headers": {
        "Authorization": "Bearer sfk_…"
      }
    }
  }
}

API keys are part of Company Pro and are made in Settings, API keys. A key only reads unless you tick "Can make changes" when you create it.

Signing in

Shipfolio uses OAuth, so your client never sees your password. Any Shipfolio account can connect, including the free plan.

  1. 1

    Your client opens Shipfolio in your browser

    Sign in as you normally do, with Google, GitHub or your email.

  2. 2

    Check who is asking

    The consent screen shows the app, the address it will send you back to, and the access it wants. Apps register themselves, so connect only ones you started from your own client.

  3. 3

    Choose the access

    Read is always included. Tick "Make changes" only if you want the app to edit your listings.

  4. 4

    Approve

    The app gets a token that lasts 1 hour and renews itself while you keep using it. After 30 days without use, you sign in again.

Scopes
Scope Lets the app
read Always
  • Search public products, stacks, tools, launches and articles
  • Read your listings, including private ones, and their analytics
write Optional
  • Edit your listings: tagline, features, FAQs and stack
  • Post ship log entries and schedule launches

If an app with read access tries to make a change, your client asks you to approve again with "Make changes" ticked. Nothing is changed until you do.

Disconnect an app any time under Settings, Connected apps. It stops working on its next call.

Example prompts

Paste one into your assistant once it's connected. Replace the parts in brackets.

  • What is [product] built with, and what would it cost me to run the same stack?

    get_product_stackget_tool
  • Find verified-revenue products in the devtools niche using Supabase.

    search_products
  • Compare the stacks of [product] and [product]. Where do they differ?

    compare_stacks
  • Plan my launch for next Tuesday and draft three ship log entries.

    schedule_launchpost_ship_log_entry
  • Update my tagline to "Time tracking that fills in your timesheet for you".

    update_my_listing
  • Which products are climbing the Making Money board this month, and what do they run on?

    making_moneyget_product_stack

Tool reference

28 tools, read from the server (version 1.0.0). Your client lists the same set.

Look up one thing 6

One product, stack, tool, profile or comparison. Counted as lookups.

Founder profile Read-only

A person's public Shipfolio profile: headline, bio, their products, work history and recent ship log. Contact details are never included; to reach someone, link them to their profile.

handle string Required
The handle, as in shipfolio.io/@{handle} Up to 40 characters

Company profile Read-only

A company's public page: about, website, its public products and, when the company shows it, its team.

slug string Required
The company's slug, as in shipfolio.io/companies/{slug} Up to 100 characters

Get a product Read-only

One public product page: what it does, pricing, niches, its stack, launch, recent ship log, verified MRR exactly as the page shows it, features, FAQs, the products it is an alternative to, and similar products. Each distinct product you open counts toward a daily limit, so open the ones the user cares about rather than every search result.

slug string Required
The product's slug, the last part of shipfolio.io/p/{slug} Up to 100 characters

What is it built with Read-only

What a product is built with: every tool in its stack by category, the founder's notes and monthly costs where shared, and the stack analysis (summary, failure points, optimizations) when there is one.

slug string Required
The product's slug Up to 100 characters

Compare two stacks Read-only

Two products' stacks side by side: the tools they share and the ones only each uses, with a link to the comparison page.

a string Required
First product's slug Up to 100 characters
b string Required
Second product's slug Up to 100 characters

get_tool

Read

Get a tool Read-only

A tool in Shipfolio's catalog (Stripe, Supabase, Astro…): what it is, pricing note, how many products use it, the top 10 products built with it, tools it's often used with, and alternatives. For more products built with it, call search_products with tool.

slug string Required
The tool's slug, e.g. "supabase" (search_tools finds it) Up to 80 characters

Your account 3

Your own listings and analytics. Counted as account reads.

My analytics Read-only

Page views, visitors, website clicks, impressions, upvotes, new watchers and reviews for the last 7, 30 or 90 days against the period before: for one of the signed-in person's products (with top sources and referrers), or all of them. Analytics unlock with Company Pro or a connected Stripe account; locked products come back without numbers.

listing string Optional
The listing's slug or id; all products when left out Up to 100 characters
days integer Optional
7, 30 or 90 One of 73090 Default 30

My listings Read-only

The signed-in person's own products (every product of a company they own or admin), drafts and private ones included: status, completeness, stack size, verified MRR, launch, and links to the public page and the editor.

No parameters.

My listing Read-only

One of the signed-in person's own products in full: every editable field, completeness gaps (what each empty field would rank for), stack, features (has, doesn't have, suggested from alternatives), FAQs with their ids, launch and verified MRR.

listing string Required
The listing's slug or id, from list_my_listings Up to 100 characters

Make changes 11

Edit your listings. Needs the write scope; counted as writes.

post_ship_log_entry

Needs write

Post to my ship log Not destructiveNot idempotent

Posts "shipped X" to the public changelog of the signed-in person's product. Calling twice posts twice; followers can see it. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
title string Required
What shipped, at most 140 characters Up to 140 characters
body string Optional
Details, at most 4000 characters Up to 4000 characters
shippedOn string (date) Optional
The day it shipped, yyyy-MM-dd; today when left out

schedule_launch

Needs write

Schedule my launch DestructiveSafe to repeat

Schedules the signed-in person's product on Shipfolio's launch board for a UTC day, or moves its scheduled launch there. The listing must be published with at least 3 tools in its stack, and the day can't be in the past. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
launchDate string (date) Required
The launch day, yyyy-MM-dd (UTC)

update_my_listing

Needs write

Update my listing DestructiveSafe to repeat

Changes fields of one of the signed-in person's own products: tagline, description (markdown), problem statement, niches, audience tags and the products it is an alternative to. Only the fields given change; a list replaces the old list. Overwrites what is there. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
tagline string Optional
New tagline, at most 80 characters Up to 80 characters
description string Optional
New description, markdown Up to 10000 characters
problemStatement string Optional
The problem it solves, one or two sentences Up to 500 characters
niches array of string Optional
Niche tags in lower-kebab case; replaces the current ones Up to 10 items
audience array of string Optional
Audience tags; replaces the current ones Up to 10 items
alternativeTo array of string Optional
Products it is an alternative to, by name; replaces the current ones Up to 10 items

add_my_feature

Needs write

Add a feature Not destructiveSafe to repeat

Adds a feature the signed-in person's product has ("Two-factor authentication"). Shipfolio matches it to the shared feature list so comparisons line up. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
name string Required
The feature's name Up to 80 characters

set_my_feature

Needs write

Answer a feature DestructiveSafe to repeat

Says whether the signed-in person's product has a feature already on its list or suggested from its alternatives: true, false, or null to take the answer back. Replaces the current answer. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
feature string Required
The feature's slug or name, from get_my_listing Up to 80 characters
has boolean Optional
true: has it; false: doesn't; null: unanswered

add_my_faq

Needs write

Add an FAQ Not destructiveNot idempotent

Adds a question and answer to the FAQ on the signed-in person's product page (5 at most, 20 with Company Pro). Calling twice adds it twice. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
question string Required
The question, at most 200 characters Up to 200 characters
answer string Required
The answer, at most 1500 characters Up to 1500 characters

update_my_faq

Needs write

Edit an FAQ DestructiveSafe to repeat

Rewrites one FAQ on the signed-in person's product, replacing its question and answer. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
faqId string (uuid) Required
The FAQ's id, from get_my_listing
question string Required
The question, at most 200 characters Up to 200 characters
answer string Required
The answer, at most 1500 characters Up to 1500 characters

remove_my_faq

Needs write

Remove an FAQ DestructiveSafe to repeat

Deletes one FAQ from the signed-in person's product page. It can't be undone. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
faqId string (uuid) Required
The FAQ's id, from get_my_listing

add_to_my_stack

Needs write

Add a tool to my stack Not destructiveNot idempotent

Adds a catalog tool to the stack of the signed-in person's product, with an optional note and monthly cost. A launch needs at least 3 tools. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
tool string Required
The tool's slug (search_tools finds it) Up to 80 characters
category string Optional
Category; the tool's own when left out One of FrontendBackendDatabaseAuthPaymentsHostingEmailAnalyticsMonitoringAIStorageSearchCMSDevToolsMarketingSupportOther
note string Optional
What it's used for, at most 280 characters Up to 280 characters
monthlyCostUsd integer Optional
Monthly cost in whole US dollars 0 to 1000000

update_my_stack_item

Needs write

Edit a stack tool DestructiveSafe to repeat

Changes the category, note or monthly cost of a tool already in the signed-in person's stack; fields left out stay. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
tool string Required
The tool's slug or name Up to 80 characters
category string Optional
New category One of FrontendBackendDatabaseAuthPaymentsHostingEmailAnalyticsMonitoringAIStorageSearchCMSDevToolsMarketingSupportOther
note string Optional
New note, at most 280 characters Up to 280 characters
monthlyCostUsd integer Optional
New monthly cost in whole US dollars 0 to 1000000

remove_from_my_stack

Needs write

Remove a stack tool DestructiveSafe to repeat

Removes a tool from the signed-in person's stack, with its note and cost. Needs the write scope. Before calling, show the user exactly what will change and wait for them to confirm.

listing string Required
The listing's slug or id Up to 100 characters
tool string Required
The tool's slug or name Up to 80 characters

Prompts

Ready-made workflows your client can offer as commands. Each one fills in a prompt from what you give it.

analyze_competitor_stack

Analyze a competitor's stack

Work out what a competitor is built with, what it likely costs, and what to learn from it.

product Required
The competitor's product slug or name
mine Optional
Your own product's slug, to compare against

plan_my_launch

Plan my launch

Get one of your products ready to launch on Shipfolio and plan the day.

listing Required
Your listing's slug, from list_my_listings
day Optional
The day you want to launch, yyyy-MM-dd (UTC)

improve_my_listing

Improve my listing

Review one of your products against its niche and suggest what would make it rank and convert better.

listing Required
Your listing's slug, from list_my_listings

Limits and quotas

Limits are per person, across every app you connect. Pro means Company Pro or the Investor plan.

Usage limits by plan
Limit Free Pro
Requests a minute 30 90
Search calls a day 150 600
Lookups a day 400 1,500
Account reads a day 300 1,000
Writes a day 100 300
Different products a day 300 1,000
  • Lists hold at most 20 results a page and stop at page 5. No call returns more than 50 items.
  • There is no export or "list everything" tool. Ask narrower questions instead.
  • Fetching more than 60 different products in 10 minutes pauses your MCP access for 1 hour.
  • Past a limit, the tool answers with an error that starts with RateLimited:, QuotaExceeded: or Paused: and says when it resets. Daily counts reset at midnight UTC.

Need more? Company Pro raises every limit for your whole team.

Fair use

The MCP server is for working with Shipfolio as yourself: running your listings and researching what you read. Bulk collection is not allowed. Don't use it, or any script behind it, to scrape, mirror or build datasets of products, founders, stacks or revenue.

Every call is logged with your account, the app, the tool and a fingerprint of its arguments, and kept for 30 days. Accounts that mine data are paused, then suspended or banned, which also stops their API keys and connected apps.

Automated access is covered by the terms, like everything else on Shipfolio.