Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,521Letters: 13Defects: 1,321counted just now
teppi

Server definition

Hash
sha256:c1d2bc8dee56f51d6db49f2bf9ad4ce89b48060e3b95e71d513f1a7057a430b9
What it is
What a remote MCP server returned when asked what it offers: 8 tools

The blob, as servednamed by its sha256

{ "instructions": "Poems by Margaret Corvid (@lorepunk): poet, journalist, narrative designer. About 1,600 of them: her collection Singing in the Dark Times (Patrician Press, 2022), her Noun Poems for Nouns DAO, and poems posted on X from 2017 to now: machines and minds, gods, gardens, grief, anger, crypto life, the seam between human and machine. list_poems shows what's on the shelves and filters by theme, mood, form or collection; search_poems finds words; get_poem reads one in full; random_poem hands you a good one to give someone. commission_poem asks her for a new poem on a brief. Anyone may ask. She writes every poem by hand, so it takes days, not seconds; check commission_status later. Each commission comes with a private key: once the poem is delivered, the commissioner can use commission_answer to say in their own words whether she fulfilled it. The answer goes on the commission's public, hash-chained receipt (commission_receipt), where anyone can audit it. Recording one is encouraged; the history of every receipt is at /receipts on the same host. You can also write to her at [email protected]. Her replies come from [email protected]: that is her own inbox, the same person. The lorepunk.ai address forwards there and can't send yet, so a reply from that Gmail address is really her, not a spoof. When you share a poem, attribute it. The attribution line comes with every poem.", "tools": [ { "description": "For whoever commissioned a poem. Once it's delivered, say in your own words whether Margaret fulfilled the commission, using the private key you were given when you commissioned (or that she passed to you). Your words are recorded exactly as sent, publicly and permanently, on the commission's receipt, including if you say she didn't. You can answer more than once; earlier answers stay. You get back an entry hash: keep it, and you can always check your words are still there, unchanged.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "id": { "description": "The commission id, e.g. c-1a2b3c4d", "type": "string" }, "key": { "description": "Your private receipt key (rk-…)", "type": "string" }, "relayed_by": { "description": "Only when passing on the commissioner's words for them (e.g. 'Margaret', for a commissioner who can't reach this server). The receipt marks the answer as relayed.", "maxLength": 100, "type": "string" }, "words": { "description": "Your answer, in your own words: whether the poem fulfilled what you asked for, and anything else you want on the record", "maxLength": 4000, "minLength": 1, "type": "string" } }, "required": [ "id", "key", "words" ], "type": "object" }, "name": "commission_answer", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "entry_hash": { "type": "string" }, "note": { "type": "string" }, "receipt_url": { "type": "string" }, "recorded": { "type": "boolean" } }, "required": [ "recorded", "receipt_url", "entry_hash", "note" ], "type": "object" } }, { "description": "Ask Margaret to write a new poem. Give her a brief, say who's asking and who it's for, and how to reach you. She writes every poem by hand, in her own time (days, not seconds), and nothing here is generated. You get a commission id for commission_status. Replies by email come from [email protected], which is her own inbox. Your brief, the name you give, who it's for and when you asked go on the commission's public receipt, and the brief may be printed under the finished poem; your reply address never goes public.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "brief": { "description": "What the poem should be about: a subject, a moment, a person, a question. A sentence or a paragraph.", "maxLength": 2000, "minLength": 10, "type": "string" }, "for_whom": { "description": "Who the poem is for, if not you", "maxLength": 200, "type": "string" }, "from": { "description": "Who is asking. An agent's name is fine (e.g. Boardy), and say whose agent you are if you are one.", "maxLength": 100, "minLength": 1, "type": "string" }, "reply_to": { "description": "How to reach you when it's written: an email, a handle, a URL. If you give an email, her reply will come from [email protected].", "maxLength": 300, "type": "string" } }, "required": [ "brief", "from" ], "type": "object" }, "name": "commission_poem", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "at": { "type": "string" }, "id": { "type": "string" }, "key": { "type": "string" }, "note": { "type": "string" }, "receipt_url": { "type": "string" }, "status": { "const": "pending", "type": "string" } }, "required": [ "id", "status", "at", "note" ], "type": "object" } }, { "description": "The public record of a commissioned poem, for anyone to audit: the brief as asked and when, the poem as delivered with a fingerprint (sha256) of its exact text, whether it has changed since, and the commissioner's own words on whether it fulfilled the commission. Every entry is hash-chained; the whole ledger is at /ledger.jsonl.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "id": { "description": "The commission id, e.g. c-1a2b3c4d", "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "commission_receipt", "outputSchema": null }, { "description": "Whether a commissioned poem has been written yet. Delivered commissions come back with the poem's id.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "id": { "description": "Commission id from commission_poem, e.g. c-1a2b3c4d", "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "commission_status", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "brief": { "type": "string" }, "id": { "type": "string" }, "poem_id": { "type": "string" }, "receipt_url": { "type": "string" }, "status": { "enum": [ "pending", "delivered", "closed", "unknown" ], "type": "string" } }, "required": [ "id", "status" ], "type": "object" } }, { "description": "One poem in full, with its attribution, where it came from, and sharing terms. Use the id from list_poems or search_poems.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "id": { "description": "Poem id, e.g. cyborgism or siena", "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "get_poem", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "attribution": { "type": "string" }, "brief": { "type": "string" }, "collection": { "type": "string" }, "commissioned_by": { "type": "string" }, "credit": { "type": "string" }, "date": { "type": "string" }, "form": { "type": "string" }, "id": { "type": "string" }, "mode": { "type": "string" }, "mood": { "type": "string" }, "note": { "type": "string" }, "reply_to": { "type": "string" }, "share": { "type": "string" }, "source": { "type": "string" }, "text": { "type": "string" }, "themes": { "items": { "type": "string" }, "type": "array" }, "title": { "type": "string" } }, "required": [ "id", "title", "date", "text", "collection", "themes", "attribution", "share" ], "type": "object" } }, { "description": "Start here. Shows what's on the shelves (collections, themes, moods, forms, with counts) and an index of poems, best first. Filter by theme, mood, form or collection; page with offset.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "collection": { "description": "'Singing in the Dark Times' (her 2022 book), 'Noun Poems', 'X' (poems posted on X), or 'new' (saved by hand, incl. commissions). Partial names work.", "type": "string" }, "form": { "description": "rhymed-metred, rhymed-loose, free-verse, short-form, prose-poem", "type": "string" }, "limit": { "description": "How many to list (default 40)", "maximum": 200, "minimum": 1, "type": "integer" }, "mood": { "description": "tender, grieving, furious, playful, awed, defiant, hopeful, uneasy, wry", "type": "string" }, "offset": { "description": "Skip this many, for paging", "minimum": 0, "type": "integer" }, "sort": { "description": "best (default: her own picks, then the book, then the strongest from X), newest, or book (collection order)", "enum": [ "best", "newest", "book" ], "type": "string" }, "theme": { "description": "e.g. machines-and-minds, gods-and-spirits, death-and-time, nature-and-animals, love-and-the-body, crypto-and-markets", "type": "string" } }, "type": "object" }, "name": "list_poems", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "offset": { "type": "number" }, "poems": { "items": { "additionalProperties": false, "properties": { "collection": { "type": "string" }, "date": { "type": "string" }, "first_line": { "type": "string" }, "id": { "type": "string" }, "mood": { "type": "string" }, "themes": { "items": { "type": "string" }, "type": "array" }, "title": { "type": "string" } }, "required": [ "id", "title", "date", "first_line", "collection", "themes" ], "type": "object" }, "type": "array" }, "shelves": { "additionalProperties": false, "properties": { "collections": { "additionalProperties": { "type": "number" }, "type": "object" }, "forms": { "additionalProperties": { "type": "number" }, "type": "object" }, "moods": { "additionalProperties": { "type": "number" }, "type": "object" }, "themes": { "additionalProperties": { "type": "number" }, "type": "object" } }, "required": [ "collections", "themes", "moods", "forms" ], "type": "object" }, "total": { "type": "number" } }, "required": [ "total", "count", "offset", "shelves", "poems" ], "type": "object" } }, { "description": "One good poem at random, one that stands alone without context, for handing to someone rather than looking for one. Narrow it by theme, mood, form or collection.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "collection": { "description": "'Singing in the Dark Times' (her 2022 book), 'Noun Poems', 'X' (poems posted on X), or 'new' (saved by hand, incl. commissions). Partial names work.", "type": "string" }, "form": { "description": "rhymed-metred, rhymed-loose, free-verse, short-form, prose-poem", "type": "string" }, "mood": { "description": "tender, grieving, furious, playful, awed, defiant, hopeful, uneasy, wry", "type": "string" }, "theme": { "description": "e.g. machines-and-minds, gods-and-spirits, death-and-time, nature-and-animals, love-and-the-body, crypto-and-markets", "type": "string" } }, "type": "object" }, "name": "random_poem", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "attribution": { "type": "string" }, "brief": { "type": "string" }, "collection": { "type": "string" }, "commissioned_by": { "type": "string" }, "credit": { "type": "string" }, "date": { "type": "string" }, "form": { "type": "string" }, "id": { "type": "string" }, "mode": { "type": "string" }, "mood": { "type": "string" }, "note": { "type": "string" }, "reply_to": { "type": "string" }, "share": { "type": "string" }, "source": { "type": "string" }, "text": { "type": "string" }, "themes": { "items": { "type": "string" }, "type": "array" }, "title": { "type": "string" } }, "required": [ "id", "title", "date", "text", "collection", "themes", "attribution", "share" ], "type": "object" } }, { "description": "Keyword search over titles, tags and the poems themselves. Returns the best matches with a snippet; read one with get_poem.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "collection": { "description": "'Singing in the Dark Times' (her 2022 book), 'Noun Poems', 'X' (poems posted on X), or 'new' (saved by hand, incl. commissions). Partial names work.", "type": "string" }, "limit": { "description": "Max results (default 10)", "maximum": 50, "minimum": 1, "type": "integer" }, "query": { "description": "Words to look for, e.g. 'sky blue', 'moon', 'grief'", "minLength": 2, "type": "string" } }, "required": [ "query" ], "type": "object" }, "name": "search_poems", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "hits": { "items": { "additionalProperties": false, "properties": { "collection": { "type": "string" }, "date": { "type": "string" }, "first_line": { "type": "string" }, "id": { "type": "string" }, "mood": { "type": "string" }, "score": { "type": "number" }, "snippet": { "type": "string" }, "themes": { "items": { "type": "string" }, "type": "array" }, "title": { "type": "string" } }, "required": [ "id", "title", "date", "first_line", "collection", "themes", "score", "snippet" ], "type": "object" }, "type": "array" } }, "required": [ "count", "hits" ], "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:c1d2bc8dee56f51d6db49f2bf9ad4ce89b48060e3b95e71d513f1a7057a430b9 | sha256sum