create_deck
Validate a study-deck JSON object and return the shareable own-words link with the card count.
deck必填
io.github.alexslkgit由 GitHub 账号 alexslkgit 发布v1.0.0更新于 Oct 24, 2026
Turn notes into a study deck: answer each card in your own words, then compare.
远程 MCP 服务器,校验学习卡片组的 JSON 并返回可分享的 own-words 链接,让你先用自己的话作答再对照答案。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.alexslkgit%2Fown-words/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"own-words": {
"type": "http",
"url": "https://own-words-mcp.alexslkmain.workers.dev/mcp"
}
}
}own-words turns a topic into a deck of question cards. Each card asks a question, you type your answer, and only then does the prepared answer appear; you mark it "I knew it" or "see again" and go on.
I have ADHD. Reading a prepared answer first always felt like understanding, and then the next real question found out that it was not. Typing my own answer first is what stuck, so the deck now makes me do it before it shows me anything.
New here? Try the 2-minute tutorial.
[A card with the prepared answer open above my own words]
https://alexslkgit.github.io/own-words/
Two decks are on that page: "How own-words works", 8 cards, and "Claude Code in 30 questions", 30 cards. Open one, answer three or four cards, and you have seen the whole thing.
No account for any of these.
Paste deck JSON into the box on the landing page. A fenced reply or a line of chat around the JSON is fine; the box finds the deck inside it.
Press "Copy the prompt" on the same page, hand the prompt to any assistant along with your topic, and paste back what it replies with.
Install the Claude Code plugin:
Then run /own-words with a topic or a file. It writes <topic-slug>.deck.json in the current
directory, checks it, and prints the link that opens it.
A deck is one JSON file: a key, a title, and blocks of cards, each card a question and an
answer. The two decks above are in decks/ in exactly that form, with nothing in them the
format does not give you. The file is also how a deck moves to another device: the link for the
30-card demo is about 17 KB because the whole deck travels inside it, so keep long decks as
files and share the link for short ones.
A card may also carry a weight, "w": 1 to 100. When any card in a deck has one, three
stops in the header show the whole deck, only cards weighted 60 and up, or only 85 and up, so
a short session covers what matters most. A card with no weight is always shown.
Once the answer is shown, tap the words you do not follow, or select a phrase, then press
"Simpler, not longer". The page builds a request whose word budget is the answer's own length;
send it to Claude or any chat and paste the reply back. The page refuses a reply with more words
than the budget, so the card gets clearer without growing. With the plugin, Claude Code also
writes the simpler version into your .deck.json beside the original answer, which it never
changes. For example, with "existential" and "witness table" marked:
Before, 30 words:
somenames one concrete type that the compiler knows but hides, whileanyis an existential box resolved at runtime through a witness table, so its calls cannot be specialized.After, 26 words:
some: one real type the compiler knows, just unnamed.any: a box (fits any matching type) opened at run time, so its calls cannot be specialized.
The link carries the whole deck inside the URL, after #d=, compressed with lz-string. A URL
fragment is never sent in the HTTP request, so a deck link opens without any server ever
holding the deck. deck.html renders whatever deck it is handed and knows nothing else.
Every deck you open is kept in this browser's localStorage, under ownwords:decks:<key> and
ownwords:index, together with your answers and marks; the landing lists them under "My
decks". There is no account and nothing you write is stored on a server. Clearing site data
for the page drops the decks and the progress, and "My decks" empties; the .deck.json file or
the link brings a deck back, the progress does not come back.
The one time your text moves is the copy button on a card page. It builds a plain text form of the deck: every card you touched, with the question, your own wording, and your mark, then the numbers of the cards you left alone. Nothing is copied until you press it. Pasting that form back into the chat that wrote the deck is how you ask for harder cards.
Plain HTML and JavaScript, no build step, one vendored dependency (lz-string). The pages ask
Google Fonts for two typefaces; block that and everything still works in a system font,
including from a file:// path.
connector/ is a small remote MCP server so claude.ai can hand you a deck link directly. A
public instance runs at https://own-words-mcp.alexslkmain.workers.dev/mcp: in claude.ai open
Settings > Connectors > Add custom connector, paste that URL and pick No sign-in. It keeps no
state and stores nothing, the deck goes into the link. To run your own, see connector/README.md.
The site needs nothing installed, so closing the tab is enough.
A modern browser, for the site and for any deck link. The plugin needs Claude Code.
This is one person's tool at version 0.3.0. I use it daily on my own decks; the English strings in it are new, so if a line reads oddly, that is why.
If you tried it on something you actually needed to learn, did writing your own answer first change what you remembered a week later? Open an issue and tell me: https://github.com/alexslkgit/own-words/issues
MIT, see LICENSE.
来源:README.md,提交 d3a11b6
Validate a study-deck JSON object and return the shareable own-words link with the card count.
deck必填已满足适用检查项的 100%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
claude plugin marketplace add alexslkgit/own-wordsclaude plugin install own-words@own-wordsclaude plugin uninstall own-words@own-wordsclaude plugin marketplace remove own-words