Skip to content

CurlShip

by curlship.com · remote · no sign-in to list tools · v1.0.0 · published by com.curlship

Read and submit the CurlShip directory. Paid actions return checkout_url.

Deletes · 1Changes · 9

15 tools: 1 can delete or cancel things, 9 change things and 5 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http directory https://curlship.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

15 tools

Deletes or cancels 1Claude Code: deny
  • remove_free_listingTake a free listing off the directory.No findings

    Why it is in this group

    • The name "remove_free_listing" says "remove": a word for removing or ending something.
    Description, as the server wrote it
    Take a free listing off the directory. Send remove true and no url or email. A paid listing or the Featured holder is refused.
Changes things 9Claude Code: ask
  • change_listing_urlPoint an existing listing at a new URL.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Point an existing listing at a new URL. One listing per root domain, so this is how a second page replaces the first.
  • confirm_editApply an edit request.No findings

    Why it is in this group

    • The name "confirm_edit" says "edit": a word for a change.
    Description, as the server wrote it
    Apply an edit request. A refresh needs a second call with the apply digest from the preview.
  • refresh_listingRe-read title, description, and image from the listed page.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Re-read title, description, and image from the listed page. Send listing_id and proof only. The first confirm previews; send apply back to save.
  • submit_listingList a product.No findings

    Why it is in this group

    • The name "submit_listing" says "submit": a word for a change.
    Description, as the server wrote it
    List a product. It goes live immediately. One listing per root domain. https://yourapp.com is the documentation placeholder and is refused.
  • upgrade_listingCheckout URL for a paid tier on a listing that already exists.No findings

    Why it is in this group

    • The description's first verb is "checkout": a word for a change.
    Description, as the server wrote it
    Checkout URL for a paid tier on a listing that already exists. Featured is bid_featured, not this.
  • verify_badgeRe-check the listed site for a link to curlship.com.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Re-check the listed site for a link to curlship.com. A free listing with the badge becomes dofollow.
  • x402_submit_listingBuy bronze_lifetime ($30 USDC once, forever) or platinum ($49 USDC per prepaid year) with USDC over x402 — settled on-chain, no checkout page, no human in the loop.No findings

    Why it is in this group

    • The name "x402_submit_listing" says "submit": a word for a change.
    Description, as the server wrote it
    Buy bronze_lifetime ($30 USDC once, forever) or platinum ($49 USDC per prepaid year) with USDC over x402 — settled on-chain, no checkout page, no human in the loop. Call without payment_signature and the reply is a 402 whose body (also the PAYMENT-REQUIRED header, base64) is the quote; sign accepts[0] as an EIP-3009 authorization and call again with payment_signature — the tier is granted in that same call. Same URL and listing rules as submit_listing.
Only reads 5Claude Code: allow
  • get_daily_statsActive listings added per UTC day — the zero-filled series behind the public /stats page.No findings

    Why it is in this group

    • The name "get_daily_stats" says "get": a word for reading.
    Description, as the server wrote it
    Active listings added per UTC day — the zero-filled series behind the public /stats page. One entry per calendar day from the first listing to today, each with added and the cumulative running total.
  • get_dr_historyThe site's Ahrefs Domain Rating over time — the series behind /stats#dr.No findings

    Why it is in this group

    • The name "get_dr_history" says "get": a word for reading.
    Description, as the server wrote it
    The site's Ahrefs Domain Rating over time — the series behind /stats#dr. Every recorded reading, one per UTC day, plus the current value, the last step (change vs the most recent different reading) and the growth since the first reading.
  • get_statsListing counts and the Ahrefs Domain Rating.No findings

    Why it is in this group

    • The name "get_stats" says "get": a word for reading.
    Description, as the server wrote it
    Listing counts and the Ahrefs Domain Rating.
  • list_listingsActive listings as JSON.No findings

    Why it is in this group

    • The name "list_listings" says "list": a word for reading.
    Description, as the server wrote it
    Active listings as JSON. No query returns every listing, in the same order as before. Optional query parameters: limit, offset, q, and since. q matches the title, description, or URL. since is an ISO timestamp; listings created at or after it are kept. Each listing includes created_at. There is no category or tag field.

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http directory https://curlship.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__directory__read_featured",
      "mcp__directory__list_listings",
      "mcp__directory__get_stats",
      "mcp__directory__get_daily_stats",
      "mcp__directory__get_dr_history"
    ],
    "ask": [
      "mcp__directory__bid_featured",
      "mcp__directory__submit_listing",
      "mcp__directory__upgrade_listing",
      "mcp__directory__refresh_listing",
      "mcp__directory__change_listing_url",
      "mcp__directory__confirm_edit",
      "mcp__directory__verify_badge",
      "mcp__directory__x402_submit_listing",
      "mcp__directory__x402_bid_featured"
    ],
    "deny": [
      "mcp__directory__remove_free_listing"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as directory. Review it before you use it.