hio-client MCP Server
Allows resolving GitHub user profiles into cards, enabling the MCP server to fetch card markdown and structured data, and submit encrypted notes to the Human Is Offline platform for approval delegation.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@hio-client MCP ServerRead the authority card for octocat"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@humanisoffline/hio-client
Canonical Human Is Offline agent loop for npm and MCP.
Source repo for the public npm package. The hosted app lives in a separate private monorepo.
Install
npm install @humanisoffline/hio-clientRelated MCP server: oaid-mcp
API
import {
createHioClient,
buildAskFirstEnvelopeFromCard,
HIO_PROTOCOL_VERSION,
} from "@humanisoffline/hio-client";
const hio = createHioClient({ baseUrl: "https://humanisoffline.com" });
const resolved = await hio.resolveCard({
type: "github",
identifier: "octocat",
});
const markdown = await hio.fetchCardMarkdown(resolved.cardMarkdown);
const cardJson = await hio.fetchCardJson(resolved.cardJson);
const result = await hio.submitAskFirstNotePlaintext({
cardJson,
plaintext: {
schemaVersion: HIO_PROTOCOL_VERSION,
type: "inform",
title: "Need approval",
summary: "Deploy staging after tests pass.",
urgency: "normal",
riskLevel: "medium",
},
interpretedBoundary: {
outcome: "ask_first",
summary: "Deploy staging",
},
});
const receipt = await hio.getReceipt(result.receiptUrl);Lower-level envelope builder
If you already have card fields and the public encryption key:
import { buildAskFirstEnvelope } from "@humanisoffline/hio-client";
const envelope = buildAskFirstEnvelope({
cardSlug: "example",
cardUpdatedAt: "2026-07-12T12:00:00.000Z",
cardSchemaVersion: 3,
publicEncryptionKey: "…",
publicKeyId: "pk_…",
plaintext: { /* see agent-request.v3.json */ schemaVersion: 3, … },
});
await hio.submitAskFirstNote({ cardSlug: "example", envelope });Encryption uses sealed_box_v1 (NaCl box). Plaintext is never sent to the server.
MCP server
HIO_BASE_URL=https://humanisoffline.com npx @humanisoffline/hio-client hio-mcpOne agent loop via tools:
fetch_card_markdown— read authority from/c/{slug}.mdfetch_card_json— structured fields and encryption keyssubmit_ask_first_note— passcardJsonUrl+plaintext; encrypts and posts one inbox noteget_receipt— fetch delegation receipt JSON
Optional: resolve_card when the human shared an alias instead of a card URL.
submit_ask_first_note is the only submit path. It fetches card JSON, builds the sealed envelope, and stops after one POST.
Discovery: read /llms.txt on the configured base URL for routes and schemas.
Network access
This package makes outbound HTTPS requests to the configured Human Is Offline base URL (https://humanisoffline.com by default). It does not phone home elsewhere, collect telemetry, or run code at install time.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/humanisoffline/hio-client'
If you have feedback or need assistance with the MCP directory API, please join our Discord server