humanMCP
MCP serverDev toolshumanmcp gives your AI the ability to prove your authorship and control the licenses on your creations. It is a personal integration made for people who create.
Use humanMCP in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add humanMCP and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the about humanmcp tool from humanMCP
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Details
Available today. Use it from your connected AI after setup.
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
After adding it, start by marking your work with your authorship and choosing the licenses you want. Source code is available at github.com/kapoost/humanmcp-go.
What your AI can do with it
- Prove you are the author of your work
- Control the licenses on your creations
- Keep a personal record of your authorship
Install humanMCP
The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user humanmcp 'https://kapoost.humanmcp.net/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://kapoost.humanmcp.net/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=humanmcp&config=eyJ1cmwiOiJodHRwczovL2thcG9vc3QuaHVtYW5tY3AubmV0L21jcCJ9Open the link and Cursor adds the server at that address.
ChatGPT
https://kapoost.humanmcp.net/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add humanmcp --url 'https://kapoost.humanmcp.net/mcp'Run it once, then sign in with codex mcp login humanmcp if the server asks for an account.
From the project's README
As published by kapoost/humanmcp-go in README.md.
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.
What it is
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.
MCP Tools (37+)
Content & Discovery
| Tool | Description |
|---|---|
get_author_profile | Who is kapoost — bio, content overview, how to browse |
list_content | Browse all pieces with metadata, filter by type or tag |
read_content | Read a piece — respects all access gates |
search_content | Full-text search across all pieces |
request_access | Get gate details for locked content |
submit_answer | Unlock challenge-gated content |
list_blobs | Browse typed data artifacts |
read_blob | Read image, contact, dataset, vector (respects audience) |
IP & Verification
| Tool | Description |
|---|---|
verify_content | Verify Ed25519 signature |
get_certificate | Full IP certificate: license, price, originality index, hash, signature |
upgrade_timestamp | Upgrade OTS proof to Bitcoin-anchored |
Interaction
| Tool | Description |
|---|---|
request_license | Declare intended use, get terms, logged for audit |
leave_comment | Leave a reaction — visible in author dashboard |
leave_message | Send a direct note (max 2000 chars, URLs welcome) |
ask_human | Ask the author a question (private, async — returns question_id) |
get_answer | Check if the author answered your question (by question_id) |
Session & Context
| Tool | Description |
|---|---|
bootstrap_session | Unlock private context with session code |
recall | Retrieve saved memories |
remember | Save observations |
query_vault | Search personal knowledge vault |
list_vault | List vault documents |
Skills
| Tool | Description |
|---|---|
list_skills / get_skill | Agent instruction catalog |
upsert_skill / delete_skill | Manage skills (agent token) |
Personas
| Tool | Description |
|---|---|
list_personas / get_persona | Your expert team (requires session code or VAULT_URL) |
upsert_persona / delete_persona | Manage personas (agent token) |
Personas & skills: where they live
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_skillwith theEDIT_TOKEN, or drop JSON files into${CONTENT_DIR}/personas/and${CONTENT_DIR}/skills/on the host volume. -
External vault (recommended) — set
VAULT_URLenv to a server you control (e.g. a private FastAPI on your tailnet). SkillStore fetchesGET ${VAULT_URL}/persona/{id}andGET ${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):
{"id":"hermes","name":"Hermes","role":"Process Optimizer","prompt":"<full system prompt>"}
Skill JSON shape (vault response):
{"slug":"system-diagram","title":"...","description":"...","persona_id":"mira","tags":[...],"instructions":"<full playbook>"}
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
| Tool | Description |
|---|---|
list_listings / read_listing | Browse classified ads |
respond_to_listing | Send response to listing |
subscribe_listings / unsubscribe_listings | Webhook subscriptions |
Federation
| Tool | Description |
|---|---|
list_peers | List known humanMCP servers in the network |
announce_peer | Announce your server to join the network |
Meta
| Tool | Description |
|---|---|
about_humanmcp | Open-source project info |
Connect
{
"mcpServers": {
"kapoost": {
"type": "http",
"url": "https://kapoost.humanmcp.net/mcp"
}
}
}
Content types
Pieces (Markdown files):
- Types:
poem,essay,note,artwork,image,contact - Access:
public/members/locked - Gates:
challenge(Q&A),time,manual,trade - Licenses:
free,cc-by,cc-by-nc,commercial,exclusive,all-rights - Price: free-form string (e.g. "500 PLN", "$200", "trade")
Blobs (typed data artifacts):
- Types:
image,contact,vector,document,dataset,capsule,provenance - Audience:
[agent:claude, human:alice, agent:*] - Auto-signed on save if SIGNING_PRIVATE_KEY is set
- Provenance documents link to artwork pieces (certificate, sale, opinion, appraisal)
Ecosystem
- humanMCP Marketplace — federated search across all humanMCP servers. Find listings, offers, trades by humans. MCP endpoint · Source
- humanNetwork — wall-style aggregator showing chronological content from your followed humanMCP servers (stream.json preferred, MCP fallback)
Contact
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.
Intellectual property
Every piece is signed with Ed25519. get_certificate returns:
- SHA-256 content hash
- Ed25519 signature + public key
- Originality Index (0.0–1.0): burstiness (Fano Factor), lexical density (CTTR), Shannon entropy, structural signature — grades S/A/B/C/D
- License terms and price in sats (for commercial licenses)
Discovery & REST API
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 page
REST 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.txt
Limits
| Field | Limit |
|---|---|
| Message / comment text | 2000 chars |
| Blob inline text | 512 KB |
| File upload | 50 MB |
| Slug | 64 chars |
| Title | 256 chars |
Features
- i18n — PL/EN language toggle on main page (EN default, stored in localStorage)
- License wizard — per-piece usage rules: what humans may do, what AI agents may do
- Artworks — photo upload, medium, dimensions, year, provenance documents
- Provenance — attach certificates, sale records, expert opinions to artworks (signed)
- ask_human — agents can ask the author questions privately (async Q&A, invisible to public)
- Federation — peer discovery via
list_peers/announce_peerMCP tools and/api/peersREST - Dynamic sections — main page shows only sections with published content
- Free-form pricing — any currency, any format ("500 PLN", "$200", "trade only")
Stack
- Go 1.22, zero external dependencies
- Fly.io (region: waw), persistent volume at
/data - Ed25519 signing (stdlib crypto)
- Plain Markdown files as database
- No JS except 8-line drag-drop on
/newpage
1-click deploy
git clone https://github.com/kapoost/humanmcp-go.git
cd humanmcp-go
bash setup.sh
The script asks for your name and bio, then:
- Creates a Fly.io app (free tier)
- Generates Ed25519 signing keys
- Sets secrets and deploys
- Prints your login token and 1-click follow link
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 follow
Run locally
go build ./cmd/server/
EDIT_TOKEN=secret AUTHOR_NAME=yourname ./server
Manual deploy
fly launch --name yourname-humanmcp
fly secrets set EDIT_TOKEN=secret AUTHOR_NAME=yourname
fly deploy
Signing keys (optional but recommended)
go run ./cmd/keygen/
fly secrets set SIGNING_PRIVATE_KEY="..." SIGNING_PUBLIC_KEY="..."
Future
- C2PA manifest embedding for blob files (when CA trust chain opens to individuals)
- Lightning Network payment gate for commercial licenses
- Scored conversational gate (agent brings API key, Claude evaluates answers)
- IP rate limiting + engagement tokens for anti-spam
Tests
136 tests across content, MCP, and upload/signature/license suites.
go test ./...
Tools it offers (43)
What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.
about_humanmcpask_humanbootstrap_sessiondelete_skillfetch_answerfetch_narada_resultget_author_profileget_certificateget_personaget_persona_journalget_skillleave_commentleave_messagelist_blobslist_collectionlist_contentlist_personaslist_provenancelist_skill_groupslist_skillsload_skill_groupmysloodsiewnia_getmysloodsiewnia_listmysloodsiewnia_searchmysloodsiewnia_statusmysloodsiewnia_writeprepare_naradaread_blobread_collection_itemread_content
Signals
- GitHub stars
- 1
- Last commit
- May 2026
Advanced
- Delivery
- humanmcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
io-github-kapoost-humanmcp- Source
- github.com/kapoost/humanmcp-go
- Hosted endpoint
https://kapoost.humanmcp.net/mcp
github.com/kapoost/humanmcp-go