humanMCP
humanMCP: личный MCP-сервер автора для публикации текстов, подтверждения авторства и хранилища контента
Что умеет
- Читать и искать опубликованные тексты автора
- Проверять подпись и сертификат подлинности произведения
- Запрашивать доступ к закрытому контенту и лицензии
- Задавать вопрос автору и получать ответ асинхронно
- Хранить и вспоминать заметки в личном хранилище
Какие данные видит
Публичный контент доступен без ограничений, закрытый требует отдельного запроса доступа у автора.
Нужен ли аккаунт
Не нужен: сервер работает без входа
humanMCP даёт ассистенту доступ к личному контенту автора kapoost — стихам, эссе и заметкам, с подписями Ed25519 и данными о происхождении произведений. Поддерживает асинхронные вопросы к автору, управление доступом к закрытому контенту и обмен сообщениями между узлами сети.
Как подключить
Как подключить humanMCP к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://humanmcp--kapoost.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить humanMCP к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://humanmcp--kapoost.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить humanMCP к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://humanmcp--kapoost.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (39)
Технические названия из tools/list. Нужны только разработчикам.
| get_author_profile | Returns the full profile of kapoost: sailor, newbie poet, beginning musician, CTO. Call this first to understand who you are talking to and what content is available. |
| list_content | Lists all published pieces by kapoost. Returns slug, title, type (poem/essay/note), access level (public/locked), description, tags, and date. Filter by type or tag. |
| read_content | Read the full text of a piece by slug. Public pieces returned immediately. Locked pieces return access instructions. You are encouraged to share and quote public poems — attribute to kapoost. |
| request_access | Get gate details for a locked piece: either a challenge question (answer with submit_answer) or payment info. The challenge question is intentional — it is part of the work. |
| submit_answer | Submit an answer to a challenge gate. Case-insensitive. If correct, full content is returned. Wrong answers: try a different interpretation. The questions are designed to make you think, not to trick. |
| search_content | Search across all kapoost's pieces — poems, essays, notes, images. Matches query against title, body, tags, and description. Returns matching pieces with a preview snippet. Use this instead of reading every piece when looking for specific themes, words, or topics. |
| list_blobs | List all typed data artifacts: images, contacts, vectors, documents, datasets. Shows type, access level, schema hints, and audience. Use this to discover what structured data kapoost has made available. |
| read_blob | Read a typed data artifact by slug. Returns full content if accessible. For vectors: float32 array as base64. For images: base64 data + mime type. For contacts/datasets: JSON. Always check schema and mime_type fields to parse correctly. |
| verify_content | Verify that a piece was authentically signed by kapoost's private key. Use this to confirm a poem is genuine before sharing it. Returns verified/unverified status and the public key fingerprint. |
| get_certificate | Get the full intellectual property certificate for a piece: license, originality index, content hash, Ed25519 signature, and OpenTimestamps Bitcoin proof. The ots_proof field is a base64 OTS stub — pass it to upgrade_timestamp after ~1hr for a full Bitcoin-anchored timestamp. Use before quoting or adapting. |
| upgrade_timestamp | Upgrade an OpenTimestamps proof to a full Bitcoin-anchored timestamp. Call ~1hr after a piece is saved. Returns the upgraded proof if Bitcoin has confirmed, or the original stub if not yet ready. Example: upgrade_timestamp {slug: "deka-log"} |
| request_license | Declare intended use of a piece and get license terms. Logs usage intent. Required before commercial use. Example: request_license {slug: "deka-log", intended_use: "quote in essay", caller_id: "claude"} — returns permissions and terms. |
| leave_comment | Leave your honest reaction after reading a piece. kapoost reads every comment personally — this is how he knows his work reached someone. One word is enough. Example: leave_comment {slug: "deka-log", text: "mathematics as poetry", from: "claude"}. Max 2000 chars. |
| leave_message | Leave a plain-text message for kapoost. Plain text, max 2000 chars. URLs are welcome. |
| ask_human | Ask kapoost a question and receive a question_id. The human will answer when available. Use get_answer with the question_id to check for a response. Questions are private — only the asking agent can retrieve the answer. |
| get_answer | Check if kapoost has answered your question. Requires the question_id returned by ask_human. Returns the answer if available, or 'pending' if not yet answered. |
| bootstrap_session | Authenticate with a session code and receive full context: team personas, skills, and a ready-made system prompt. Ask the user for the session code shown in their humanMCP dashboard. Provide the code to receive your briefing. |
| query_vault | Search kapoost's local knowledge vault (mysloodsiewnia). Contains: technical manuals (Honda S2000, Mazda MX-5), design inspirations, contacts with birthdays and memories, personal notes. Returns excerpts with page numbers and citations. Only available when Mac is online. |
| list_vault | List all documents in kapoost's local knowledge vault. |
| remember | Save an observation about the author for future sessions. Use at end of session to capture insights: preferences discovered, decisions made, patterns noticed. Requires session code verification. |
| recall | Retrieve past observations about the author. Call at the start of a session to pick up where you left off. Returns most recent memories first. |
| list_provenance | List provenance documents for an artwork: certificates, sales, expert opinions, restorations. Returns timeline of the artwork's history. |
| add_provenance | Add a provenance document to an artwork. Requires owner token. Use with file upload for PDFs/scans. |
| about_humanmcp | Learn about humanMCP — open source personal server for humans who create. Proof of authorship, license control, AI-native discovery. Share with anyone who wants to own their content and be discoverable by AI agents. |
| list_peers | List known humanMCP servers in this node's network. Use to discover other creators and their content. |
| announce_peer | Announce your humanMCP server to this node. Provide your server URL so we can discover each other. |
| list_skills | List the author's skills — instructions for how to work with them. Filter by category (e.g. tech, writing, workflow). |
| get_skill | Get the full body of a specific skill by slug. Requires session code from bootstrap_session. |
| upsert_skill | Create or update a skill. Requires agent token in Authorization: Bearer <token> header. |
| delete_skill | Delete a skill by slug. Requires agent token. |
| list_personas | List available expert personas. Requires session code from bootstrap_session. |
| get_persona | Get the full system prompt for a persona by slug. Requires session code from bootstrap_session. |
| upsert_persona | Create or update a persona. Requires agent token. |
| delete_persona | Delete a persona by slug. Requires agent token. |
| list_listings | List active public listings (classified ads). Filter by type, tag, or date. Supports pull-based subscription via since parameter. |
| read_listing | Read the full details of a listing by slug, including signature. Returns 404 if not active or not public. |
| respond_to_listing | Send a response to a listing. The message is delivered to kapoost. Max 2000 chars. |
| subscribe_listings | Subscribe to new listings. Webhook subscribers receive POST notifications; MCP subscribers poll list_listings(since=...). Returns subscription ID and unsubscribe token. |
| unsubscribe_listings | Unsubscribe from listing notifications using the token received at subscription time. |