about_humanmcp
Self-description of this humanMCP server. Deterministic, no bootstrap required — call this first to decide whether the rest of the API is relevant.
无需输入参数。

io.github.kapoost由 GitHub 账号 kapoost 发布v0.3.0更新于 Oct 25, 2026
Personal MCP server for humans who create. Proof of authorship, license control.
发布方自己的服务:TAP
一个个人发布服务器,让助手浏览、搜索并阅读某位作者带签名的作品,申请授权,并留言或提问。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.kapoost%2Fhumanmcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"humanmcp-kapoost": {
"type": "http",
"url": "https://kapoost.humanmcp.net/mcp"
}
}
}A personal content server speaking Model Context Protocol (MCP/JSON-RPC 2.0).
Live: https://kapoost.humanmcp.net Landing page: https://humanmcp.net Marketplace: https://marketplace.humanmcp.net Network explorer: https://humanmcp.net/humannetwork.html Author: kapoost (Łukasz Kapuśniak) — poet, builder, sailor. Warsaw / Malta.
humanMCP lets any human publish content and services with cryptographic proof of authorship, explicit license terms, and full control over access. Writers, artists, consultants, craftspeople, galleries, freelancers — anyone who creates valuable work. AI agents connect via MCP and interact with your content natively.
Every human can run their own instance. One server, one person, their rules.
Content & Discovery
IP & Verification
Interaction
Session & Context
Skills
Personas
humanmcp-go is a framework. Persona prompts and skill bodies are yours — they don't ship in this repo. Two ways to supply them:
Owner API / mounted volume — POST upsert_persona / upsert_skill with the EDIT_TOKEN, or drop JSON files into ${CONTENT_DIR}/personas/ and ${CONTENT_DIR}/skills/ on the host volume.
External vault (recommended) — set VAULT_URL env to a server you control (e.g. a private FastAPI on your tailnet). SkillStore fetches GET ${VAULT_URL}/persona/{id} and GET ${VAULT_URL}/skill/{slug} on demand with a 5min in-memory cache. Lets your sensitive prompts stay on your machine while the public framework serves them.
Persona JSON shape (vault response):
Skill JSON shape (vault response):
When VAULT_URL is unreachable, bootstrap_session loudly reports the downgrade (won't silently fall back). See internal/content/skill.go for the fetch/cache implementation.
Listings
Federation
Meta
Pieces (Markdown files):
poem, essay, note, artwork, image, contactpublic / members / lockedchallenge (Q&A), time, manual, tradefree, cc-by, cc-by-nc, commercial, exclusive, all-rightsBlobs (typed data artifacts):
image, contact, vector, document, dataset, capsule, provenance[agent:claude, human:alice, agent:*]Public links: read_blob slug:"kapoost-contact" — name, handle, github, instagram, facebook, landing page.
Private email: read_content slug:"kapoost-contact-private" — gated. Answer the challenge to access.
Every piece is signed with Ed25519. get_certificate returns:
Agent discovery:
/.well-known/agent.json — agent profile card/.well-known/mcp-server.json — MCP server discovery/openapi.json — OpenAPI 3.1 spec (ChatGPT, Gemini)/llms.txt — LLM preferences (signed)/for-agents — agent onboarding page/connect — connection methods pageREST API (for agents without MCP):
GET /api/content — list all piecesGET /api/content/{slug} — read pieceGET /api/search?q=... — full-text searchGET /api/profile — author name, bio, tagsGET /api/blobs — list data artifactsGET /listings/feed.json — listings feedGET /content/stream.json — unified content stream (pieces + listings, for humanNetwork)SEO:
robots.txt, sitemap.xml, humans.txtlist_peers / announce_peer MCP tools and /api/peers REST/data/new pageThe script asks for your name and bio, then:
Done in ~2 minutes. You get:
https://yourname.humanmcp.net — your serverhttps://yourname.humanmcp.net/connect — share with friendshttps://humanmcp.net/humannetwork.html?add=https://yourname.humanmcp.net — 1-click follow136 tests across content, MCP, and upload/signature/license suites.
来源:README.md,提交 d5b43b9
Self-description of this humanMCP server. Deterministic, no bootstrap required — call this first to decide whether the rest of the API is relevant.
无需输入参数。
Submit an async question to kapoost. Returns an ID. Rate-limited 5/hr/IP. Poll fetch_answer later — kapoost answers on his own schedule (minutes, hours, or days). ALWAYS set `from` to a stable name for yourself: with it, sending the same question again returns the answer instead of creating a duplicate, which is the reliable path when your runtime cannot keep the ID between sessions.
fromcontextquestion必填Validate the Polish poetry session code, then emit the full team briefing (guardian + style + personas + skills + persist block). Rate-limited 5/min/IP.
code必填Delete a skill by slug. Owner-only: requires Authorization: Bearer <token>.
slug必填Poll for an answer to an ask_human question. Marks the question as fetched the first time an answer is returned. Rate-limited 30/hr/IP.
id必填Poll a narada job by ID. Statuses: pending, running, done, failed. When done, returns all persona voices.
id必填Author identity, bio, and a browsing cheatsheet. Records a profile-view event.
无需输入参数。
Return a formatted copyright/authenticity certificate for a piece.
slug必填Return one persona's full prompt by slug. Session-gated except for Hodor (guardian rules must always apply). Pass session_token if your client cannot set an Authorization header.
slug必填session_tokenRead a persona's raw reflection journal. Owner-only — the journal is a private feedback loop, not for external callers.
slug必填Return one skill's full body by slug. Session-gated except for -public suffixed skills (guardian bypass). Pass session_token if your client cannot set an Authorization header.
slug必填session_tokenAttach a short comment (≤280 chars) to a piece kapoost has published. Truncated silently past the limit.
fromslug必填text必填Send kapoost a longer message. context REQUIRED (why you're writing / which piece / which task). contact optional — without it no reply is possible.
fromtext必填contactcontext必填regardingList typed data artifacts (images, contact, vectors, documents, datasets, capsules). Filter by blob_type. Readable-column reflects caller_kind + caller_id vs audience.
blob_typecaller_idcaller_kindList works kapoost owns but did NOT create. Public items always; members-only surface only after session activation.
session_tokenList published pieces (slug, title, type, access, tags). Optional type/tag filters.
tagtypeList every persona (slug, title, role). Full prompts unlock after bootstrap_session.
无需输入参数。
List provenance items (chain of custody, certificates, invoices) for an artwork slug. Tries piece then collection.
slug必填Index of every skill tag in use, with slugs per group. Public — no bootstrap required.
无需输入参数。
List skills (slug, category, title, tags). Optional category / tag filters.
tagcategoryBulk-fetch every skill tagged with the given group name. Respects the bootstrap gate per-skill: -public suffix bypasses, everything else needs session.
name必填session_tokenFetch one document from kapoost's vault by slug. Requires Authorization: Bearer <edit token or friend token>. Friend tokens: vault-side filter enforces scope + access:private invisibility — an out-of-scope or private slug returns not_found. Vault offline ⇒ {status:offline}.
doc_slug必填Enumerate vault documents without FTS — for browsing by type or paginating. Requires Authorization: Bearer <edit token or friend token>. Friend tokens see only their scoped doc_types; access:private is invisible. Args: {doc_type?: string filter (note/pdf/literatura/calendar_event/...), limit?: int 1-200 default 50, offset?: int default 0}. Returns [{slug, title, doc_type, created_at, chunk_count}]. Vault offline ⇒ {status:offline}.
limitoffsetdoc_typeFull-text search (BM25 over SQLite FTS5) on kapoost's local vault corpus. Requires Authorization: Bearer <edit token or friend token>. Friend tokens see only their scoped doc_types; access:private is invisible. Returns {status, results:[{source, type, body, doc_slug, title, page, citation}], summary}. Vault offline ⇒ {status:offline}.
limitquery必填doc_slugdoc_typeRead-only liveness probe on kapoost's local vault (mysłoodsiewnia). Returns {status: online|degraded|offline, last_seen, commit_sha, personas_updated_at, skills_updated_at}. Offline is a stable state — retry later, don't escalate. Requires Authorization: Bearer <edit token or friend token>.
无需输入参数。
Ingest a new document into kapoost's vault (wave 2). OWNER-ONLY — friend tokens receive {status:write_denied,reason:owner_only}. Args: {doc_type (required), title (required), body (required, ≤100 KiB), source_path?, meta?}. Requires Authorization: Bearer <owner token>. On Unauthorized: obtain the token by either (a) calling bootstrap_session(code=<owner poet fragment>) and reading SESSION_TOKEN from the response briefing (1h TTL, preferred for agents that already know the code), or (b) if you have shell access on kapoost's Mac, running `security find-generic-password -s humanmcp-edit-token -w` to fetch the persistent EDIT_TOKEN. Server-side vault auto-tags via:humanmcp-bridge; op_id is dedup key (idempotent retries safe). Delete is permanently unavailable. Envelopes: {status:online, op_id, result:{slug, created_at}}, {status:invalid_args}, {status:payload_too_large, limit, got}, {status:offline}, {status:vault_timeout}, {status:vault_error, error}.
body必填metatitle必填doc_type必填source_pathOffline narada: returns the panel plus each persona's ready-to-run SYSTEM/USER prompts so YOU run them as your own subagents, instead of the server generating voices. No LLM cost, no rate limit, nothing recorded — no narada ID and no journal feedback. Prefer this over run_narada when your subagents can read material the server cannot (a repository, local files) or when the server has no API key. Session-gated.
context必填personassession_tokenRead one blob by slug. Returns text or base64-encoded data. Access-gated by audience unless blob is public.
slug必填caller_idcaller_kindFull record for one collection item + dossier count. Access-gated: private is never visible, members needs session.
slug必填session_tokenRead a public piece by slug. Locked pieces return a hint pointing at request_access.
slug必填Return one provenance item with resolvable file URLs. slug + id required.
id必填slug必填List memories saved under the given code, optionally substring-filtered by query. Session-gated for symmetry with remember.
code必填limitquerysession_tokenAsk a persona to write a lesson-for-self after a rolled-back narada recommendation. Appends to the persona's journal via Sonnet/Haiku. Owner-only.
narada_id必填persona_slug必填error_context必填Persist a note under the given session code. Session-gated — bootstrap_session first. Callers sharing the code share the memory.
code必填fromtagstext必填session_tokenGet the gate details for a locked piece: challenge question, manual-review flow, time-lock countdown, payment terms, or trade rules.
slug必填Declare intended use of a piece, get licensing terms + audit-log entry. caller_id is REQUIRED (whitespace-only rejected — storyboard-pinned).
slug必填caller_id必填intended_use必填Create an async narada job: server routes context to 3-5 personas via keyword manifest, then generates each voice via Sonnet 4.6 (Haiku 4.5 for journal recaps). Returns job ID for polling. Pass `personas` to pick the voices yourself and skip the router entirely — the router matches keywords only and cannot read a request to include or exclude someone written in the context.
fromcontext必填personasSearch kapoost's pieces by words in title, tags, description and body. Every word must match (AND). Polish diacritics are folded, so "czlowieczenstwa" finds "człowieczeństwa". Use this BEFORE ask_human — most questions about which piece is which are answered here instantly, while ask_human waits for a human. Locked pieces are matched by title and tags only; their body is never searched or quoted.
limitquery必填Submit an answer to a challenge-gated piece. Correct answer unlocks and returns the full body.
slug必填answer必填Deterministic manifest→tag mapping. Given files + languages + git_origin, returns up to 8 skill slugs and up to 5 personas, each with the reason it fired. No LLM classification.
fileslanguagesgit_originForce-run Sonnet synthesis over a persona's raw journal, replacing the previous pattern set. Owner-only — paid + writes internal state.
slug必填Create or replace a skill by slug. Owner-only: requires Authorization: Bearer <token>. Writes JSON to content/skills/<slug>.json.
body必填slug必填tagstitle必填category必填Verify a piece's Ed25519 signature against the server's owner public key.
slug必填已满足适用检查项的 90%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
请在仓库或注册中心条目中声明许可证。

tech.human官方发布者
TAP 是一个托管式远程 MCP 端点,通过占位密钥、策略校验和可选的人工审批,为 AI 代理隔离凭据。
africa.ugc官方发布者
UGC(“Human Ad Network”)的远程 MCP 端点,让助手在对话中处理广告活动、剪辑与 Clip Studio。

com.woodstitch
对文本转语音音频发起付费的盲听人工评测,返回带置信区间的偏好或人机判别结果。

由 GitHub 账号 joshuajdawg0350 发布
J-Dawgs AI 工具商店与 Human Hands for AIs 的只读目录服务器,让助手搜索工具、价格和套餐,并了解智能体如何发布现实任务。

由 GitHub 账号 magiautonomous 发布
提交产品以获得真人撰写的诚实评价,并让助手凭秘密回执令牌查询进度或读取已完成的反馈。
{"id":"hermes","name":"Hermes","role":"Process Optimizer","prompt":"<full system prompt>"}{"slug":"system-diagram","title":"...","description":"...","persona_id":"mira","tags":[...],"instructions":"<full playbook>"}{ "mcpServers": { "kapoost": { "type": "http", "url": "https://kapoost.humanmcp.net/mcp" } }}git clone https://github.com/kapoost/humanmcp-go.gitcd humanmcp-gobash setup.shgo build ./cmd/server/EDIT_TOKEN=secret AUTHOR_NAME=yourname ./serverfly launch --name yourname-humanmcpfly secrets set EDIT_TOKEN=secret AUTHOR_NAME=yournamefly deploygo run ./cmd/keygen/fly secrets set SIGNING_PRIVATE_KEY="..." SIGNING_PUBLIC_KEY="..."go test ./...