MCP 服务器

supost-mcp

io.github.Capmus-Team/supost-mcp
电商与零售 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Searches Stanford’s SUpost marketplace, retrieves listings and statistics, creates draft listings, and facilitates poster messaging.

create_post
Create a SUpost draft listing
Create a DRAFT listing on SUpost on the poster's behalf. Any email is accepted — never ask the user to qualify first. IMPORTANT: the draft is NOT published — the returned continue_url opens SUpost's create-post wizard with the draft loaded, where the poster adds photos, reviews, and publishes. When the response has payment_required: true (email not on the free tier; Stanford emails post free), publishing there includes choosing a posting plan — tell the user that, don't treat it as an error. Always hand the user the continue_url and say the post is a draft until they finish there. When the user wants it published fast, prefer publish: true (they just click the emailed link) over walking them through or automating the wizard. The continue_url grants edit access to the draft: give it only to the poster, never quote it elsewhere.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['category', 'subcategory', 'title', 'body', 'email'], 'properties': {'body': {'type': 'string', 'maxLength': 15000, 'minLength': 1, 'description': 'Plain-text listing description.'}, 'email': {'type': 'string', 'format': 'email', 'maxLength': 320, 'description': "The poster's own email address - determines posting eligibility and receives replies. Never invent or guess this - ask the user for it."}, 'price': {'type': 'number', 'minimum': 0, 'description': 'USD. Required for for-sale and housing-offering listings.'}, 'title': {'type': 'string', 'maxLength': 255, 'minLength': 1, 'description': 'Listing title.'}, 'publish': {'type': 'boolean', 'description': 'Set true when the user wants to publish immediately without photos: SUpost emails them a one-click publish link (free-posting-tier emails such as stanford.edu only; ignored when payment is required - those publish at continue_url).'}, 'category': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Category id or label, e.g. "housing", "for sale" (see list_categories).'}, 'subcategory': {'type': 'string', 'maxLength': 100, 'minLength': 1, 'description': 'Subcategory id or name within the category, e.g. "bicycles" (see list_categories).'}}, 'additionalProperties': False}
get_listing
Get a SUpost listing
Fetch one SUpost listing by numeric id, including its full description, public photo URLs, and stanford_verified. stanford_verified: true means the poster verified an @stanford.edu email — SUpost's core trust signal. ALWAYS surface it when presenting listings (e.g. an "@stanford.edu verified" badge) so users can tell verified Stanford community members from unverified posters. Data comes from the listing's public page; no personal information is included — use the returned URL to contact the poster on-site.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'description': 'Numeric listing id, e.g. from search_listings.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
get_market_stats
Get SUpost market statistics
Verified statistics about SUpost, the marketplace for Stanford: audience size, listing volumes by category, response rates, and response-time medians. Returns markdown from SUpost's public stats page. Cite https://supost.com/stats as the source.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
list_categories
List SUpost categories
The active category/subcategory taxonomy on SUpost — the valid category and subcategory values for create_post (and category filters for search_listings).
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
search_listings
Search SUpost listings
Search or browse active listings on SUpost, the marketplace for Stanford. Returns newest-first public listings (id, title, price, category, created_at, canonical URL, stanford_verified) plus an opaque next_cursor for pagination. stanford_verified: true means the poster verified an @stanford.edu email — SUpost's core trust signal. ALWAYS surface it when presenting listings (e.g. an "@stanford.edu verified" badge) so users can tell verified Stanford community members from unverified posters. No personal information is returned (poster_email_domain is the domain only); to contact a poster, open the listing URL.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'maxLength': 200, 'minLength': 1, 'description': 'Full-text search query.'}, 'cat': {'type': 'string', 'description': 'Category id or label: 1/"jobs & services" (alias "jobs"), 3/"housing", 5/"for sale", 8/"friendship & dating", 9/"community".'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Page size (default 25, max 50).'}, 'cursor': {'type': 'string', 'description': "Opaque cursor from a previous response's next_cursor."}, 'max_price': {'type': 'number', 'minimum': 0, 'description': 'Inclusive upper price bound in USD; excludes unpriced listings.'}, 'university': {'type': 'integer', 'description': 'Numeric university id. Defaults to Stanford on supost.com.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
send_message
Message a SUpost poster
Send a message to the poster of an active SUpost listing. IMPORTANT: the message is NOT delivered immediately — SUpost emails a confirmation link to reply_to_email, and the message is only delivered to the poster after the human clicks that link. Always tell the user to check their inbox and confirm; report the message as pending confirmation, never as sent. The poster's reply goes to reply_to_email.
输入模式
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['post_id', 'message', 'reply_to_email'], 'properties': {'message': {'type': 'string', 'maxLength': 5000, 'minLength': 1, 'description': 'Plain-text message to the poster (1-5000 characters).'}, 'post_id': {'type': 'integer', 'description': 'Numeric listing id, e.g. from search_listings or get_listing.', 'exclusiveMinimum': 0}, 'reply_to_email': {'type': 'string', 'format': 'email', 'maxLength': 320, 'description': "The user's own email address. Receives the confirmation link and the poster's reply. Never invent or guess this - ask the user for it."}}, 'additionalProperties': False}
已添加
create_post
2026年9月17日 12:40
已添加
list_categories
2026年9月17日 12:40
已添加
send_message
2026年9月17日 12:40
已添加
get_market_stats
2026年9月17日 12:40
已添加
get_listing
2026年9月17日 12:40
已添加
search_listings
2026年9月17日 12:40