Book a Sponsor

Find brands that already sponsor newsletters like yours, with sponsorship rates.

Should I use this

Quality & Safety

A
Description quality
95%
Schema completeness
95%
Naming quality
90%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'list_brands_sponsoring_newsletters' name length outside 3-30 rangein list_brands_sponsoring_newsletters
  • LOWTool 'get_newsletter_sponsorship_rates' name length outside 3-30 rangein get_newsletter_sponsorship_rates

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,731Tokens (tool definitions)
~4.1 KBTypical response size
Moderate attention impact (1.35% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "book-a-sponsor": {
      "url": "https://bookasponsor.com/mcp"
    }
  }
}

Remote endpoints

https://bookasponsor.com/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢find_newsletter_sponsors(newsletter_url)

Use this when someone who runs a newsletter asks which brands might sponsor it or how to find sponsors for it. Takes the newsletter's web address, finds similar newsletters, and returns the brands that sponsored them, with the newsletters and dates where each ad ran. Starts a scan of the public newsletter pages if none exists; a new scan takes about 15 to 60 seconds.

Input Schema

{
  "type": "object",
  "properties": {
    "newsletter_url": {
      "type": "string",
      "minLength": 3,
      "maxLength": 300,
      "description": "The newsletter's web address, such as yourname.substack.com or yournewsletter.com"
    }
  },
  "required": [
    "newsletter_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "complete",
        "running",
        "needs_details",
        "failed",
        "refused"
      ]
    },
    "message": {
      "type": "string"
    },
    "newsletter": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "name": {
              "type": [
                "string",
                "null"
              ]
            },
            "domain": {
              "type": "string"
            },
            "niche": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "name",
            "domain",
            "niche"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "similar_newsletters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "domain"
        ],
        "additionalProperties": false
      }
    },
    "sponsors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "brand": {
            "type": "string"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ]
          },
          "newsletters_sponsored": {
            "type": [
              "number",
              "null"
            ]
          },
          "last_seen": {
            "type": [
              "string",
              "null"
            ]
          },
          "seen_in": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "newsletter": {
                  "type": "string"
                },
                "date": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "issue_url": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "required": [
                "newsletter",
                "date",
                "issue_url"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "brand",
          "domain",
          "newsletters_sponsored",
          "last_seen",
          "seen_in"
        ],
        "additionalProperties": false
      }
    },
    "sponsors_total": {
      "type": "number"
    },
    "results_url": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "status",
    "message",
    "newsletter",
    "similar_newsletters",
    "sponsors",
    "sponsors_total",
    "results_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_sponsor_scan(newsletter_url)

Use this to read the result of a sponsor scan that find_newsletter_sponsors started, for example when it reported that the scan was still running. Takes the same newsletter web address.

Input Schema

{
  "type": "object",
  "properties": {
    "newsletter_url": {
      "type": "string",
      "minLength": 3,
      "maxLength": 300,
      "description": "The newsletter's web address used for find_newsletter_sponsors"
    }
  },
  "required": [
    "newsletter_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "complete",
        "running",
        "needs_details",
        "failed",
        "refused"
      ]
    },
    "message": {
      "type": "string"
    },
    "newsletter": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "name": {
              "type": [
                "string",
                "null"
              ]
            },
            "domain": {
              "type": "string"
            },
            "niche": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "required": [
            "name",
            "domain",
            "niche"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "similar_newsletters": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "name",
          "domain"
        ],
        "additionalProperties": false
      }
    },
    "sponsors": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "brand": {
            "type": "string"
          },
          "domain": {
            "type": [
              "string",
              "null"
            ]
          },
          "newsletters_sponsored": {
            "type": [
              "number",
              "null"
            ]
          },
          "last_seen": {
            "type": [
              "string",
              "null"
            ]
          },
          "seen_in": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "newsletter": {
                  "type": "string"
                },
                "date": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "issue_url": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              },
              "required": [
                "newsletter",
                "date",
                "issue_url"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "brand",
          "domain",
          "newsletters_sponsored",
          "last_seen",
          "seen_in"
        ],
        "additionalProperties": false
      }
    },
    "sponsors_total": {
      "type": "number"
    },
    "results_url": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "status",
    "message",
    "newsletter",
    "similar_newsletters",
    "sponsors",
    "sponsors_total",
    "results_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_brands_sponsoring_newsletters(niche)

Use this when someone asks which companies or brands sponsor newsletters, overall or in a topic such as AI, finance or marketing. Returns the brands seen in the most newsletters in the last 12 months, read from published issues.

Input Schema

{
  "type": "object",
  "properties": {
    "niche": {
      "description": "Newsletter topic: ai, business, finance, tech, marketing, health, culture, food, productivity, crypto, dev, design, science, education, sports, climate, media, local, legal, travel. Leave out for all newsletters.",
      "type": "string",
      "enum": [
        "ai",
        "business",
        "finance",
        "tech",
        "marketing",
        "health",
        "culture",
        "food",
        "productivity",
        "crypto",
        "dev",
        "design",
        "science",
        "education",
        "sports",
        "climate",
        "media",
        "local",
        "legal",
        "travel"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "niche": {
      "type": [
        "string",
        "null"
      ]
    },
    "brands": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "brand": {
            "type": "string"
          },
          "domain": {
            "type": "string"
          },
          "newsletters": {
            "type": "number"
          },
          "last_seen": {
            "type": [
              "string",
              "null"
            ]
          },
          "recent_newsletters": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "brand",
          "domain",
          "newsletters",
          "last_seen",
          "recent_newsletters"
        ],
        "additionalProperties": false
      }
    },
    "brands_seen": {
      "type": "number"
    },
    "newsletters_read": {
      "type": "number"
    },
    "updated": {
      "type": "string"
    },
    "source_url": {
      "type": "string"
    }
  },
  "required": [
    "niche",
    "brands",
    "brands_seen",
    "newsletters_read",
    "updated",
    "source_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_newsletter_sponsorship_rates(subscribers)

Use this when someone asks how much to charge for a newsletter sponsorship or what newsletters charge for an ad. Returns the median price newsletters list for the main sponsor slot of one issue, by list size, read from their own advertise pages.

Input Schema

{
  "type": "object",
  "properties": {
    "subscribers": {
      "description": "The newsletter's subscriber count, to pick its size band",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000000
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "bands": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "list_size": {
            "type": "string"
          },
          "newsletters": {
            "type": "number"
          },
          "median_usd": {
            "type": "number"
          },
          "low_usd": {
            "type": "number"
          },
          "high_usd": {
            "type": "number"
          },
          "median_per_1000_subscribers_usd": {
            "type": "number"
          }
        },
        "required": [
          "list_size",
          "newsletters",
          "median_usd",
          "low_usd",
          "high_usd",
          "median_per_1000_subscribers_usd"
        ],
        "additionalProperties": false
      }
    },
    "your_band": {
      "type": [
        "string",
        "null"
      ]
    },
    "newsletters_priced": {
      "type": "number"
    },
    "read_on": {
      "type": "string"
    },
    "source_url": {
      "type": "string"
    }
  },
  "required": [
    "bands",
    "your_band",
    "newsletters_priced",
    "read_on",
    "source_url"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools