Server definition
- Hash
- sha256:ffe47076de4f70c2192518054daf91bf4629fea241ffa2be34d9ef0b76ceb0f7
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Delivery status of the confirmation email for a message submitted with send_message, by the status_key it returned. Use it when the user says they have not received the confirmation email. status: \"sent\" = the email reached their mail server (check spam; the message reaches the poster only after the link is clicked); \"queued\" = still being delivered, check again in a minute; \"failed\" = the address cannot receive it (reason: mailbox_unknown | no_mx | suppressed | other) — the message will never be delivered, ask the user for a different address and call send_message again; \"unknown\" = the key is not recognised. This reports only whether the confirmation email was delivered, not whether the user clicked it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"status_key": {
"description": "The status_key from a send_message result.",
"format": "uuid",
"type": "string"
}
},
"required": [
"status_key"
],
"type": "object"
},
"name": "check_message_status",
"outputSchema": null
},
{
"description": "Create a DRAFT listing on Capmus 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 Capmus'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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"body": {
"description": "Plain-text listing description.",
"maxLength": 15000,
"minLength": 1,
"type": "string"
},
"category": {
"description": "Category id or label, e.g. \"housing\", \"for sale\" (see list_categories).",
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"email": {
"description": "The poster's own email address - determines posting eligibility and receives replies. Never invent or guess this - ask the user for it.",
"format": "email",
"maxLength": 320,
"type": "string"
},
"price": {
"description": "USD. Required for for-sale and housing-offering listings.",
"minimum": 0,
"type": "number"
},
"publish": {
"description": "Set true when the user wants to publish immediately without photos: Capmus 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).",
"type": "boolean"
},
"subcategory": {
"description": "Subcategory id or name within the category, e.g. \"bicycles\" (see list_categories).",
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"title": {
"description": "Listing title.",
"maxLength": 255,
"minLength": 1,
"type": "string"
}
},
"required": [
"category",
"subcategory",
"title",
"body",
"email"
],
"type": "object"
},
"name": "create_post",
"outputSchema": null
},
{
"description": "Fetch one Capmus listing by numeric id, including its full description, public photo URLs, and stanford_verified. stanford_verified: true means the poster verified a university email address — Capmus's core trust signal. ALWAYS surface it when presenting listings (e.g. a \"verified\" badge) so users can tell verified campus 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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"id": {
"description": "Numeric listing id, e.g. from search_listings.",
"exclusiveMinimum": 0,
"type": "integer"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_listing",
"outputSchema": null
},
{
"description": "Verified statistics about Capmus, the classifieds marketplace for university communities: audience size, listing volumes by category, response rates, and response-time medians. Returns markdown from Capmus's public stats page. Cite https://capmus.com/stats as the source.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "get_market_stats",
"outputSchema": null
},
{
"description": "The active category/subcategory taxonomy on Capmus — the valid category and subcategory values for create_post (and category filters for search_listings).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_categories",
"outputSchema": null
},
{
"description": "Search or browse active listings on Capmus, the classifieds marketplace for university communities. 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 a university email address — Capmus's core trust signal. ALWAYS surface it when presenting listings (e.g. a \"verified\" badge) so users can tell verified campus 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.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"cat": {
"description": "Category id or label: 1/\"jobs & services\" (alias \"jobs\"), 3/\"housing\", 5/\"for sale\", 8/\"friendship & dating\", 9/\"community\".",
"type": "string"
},
"cursor": {
"description": "Opaque cursor from a previous response's next_cursor.",
"type": "string"
},
"limit": {
"description": "Page size (default 25, max 50).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price": {
"description": "Inclusive upper price bound in USD; excludes unpriced listings.",
"minimum": 0,
"type": "number"
},
"q": {
"description": "Full-text search query.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"university": {
"description": "Numeric university id to scope results to one campus.",
"exclusiveMinimum": 0,
"type": "integer"
}
},
"type": "object"
},
"name": "search_listings",
"outputSchema": null
},
{
"description": "Send a message to the poster of an active Capmus listing. IMPORTANT: the message is NOT delivered immediately — Capmus 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. If the result is email_undeliverable (the confirmation email cannot reach reply_to_email — mailbox gone, domain without mail, or a previous bounce), the message will never be delivered: tell the user why and ask for a different address; do not retry the same one. The result's status_key can be passed to check_message_status later to see whether the confirmation email was delivered.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"message": {
"description": "Plain-text message to the poster (1-5000 characters).",
"maxLength": 5000,
"minLength": 1,
"type": "string"
},
"post_id": {
"description": "Numeric listing id, e.g. from search_listings or get_listing.",
"exclusiveMinimum": 0,
"type": "integer"
},
"reply_to_email": {
"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.",
"format": "email",
"maxLength": 320,
"type": "string"
}
},
"required": [
"post_id",
"message",
"reply_to_email"
],
"type": "object"
},
"name": "send_message",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:ffe47076de4f70c2192518054daf91bf4629fea241ffa2be34d9ef0b76ceb0f7 | sha256sum