Model-agnostic MCP control plane for HAI: bounded missions, owner-gated actions, drift checks.
Connect Runs on your machine
claude mcp add hai-mcp -e HAI_HOME=<HAI_HOME> -e HAI_OWNER_HOME=<HAI_OWNER_HOME> -e HAI_TRANSPORT=<HAI_TRANSPORT> -e HAI_HTTP_HOST=<HAI_HTTP_HOST> -e HAI_HTTP_PORT=<HAI_HTTP_PORT> -e HAI_HTTP_TOKEN=<HAI_HTTP_TOKEN> -- uvx hai-mcp==0.1.0
{
"mcpServers": {
"hai-mcp": {
"command": "uvx",
"args": [
"hai-mcp==0.1.0"
],
"env": {
"HAI_HOME": "<HAI_HOME>",
"HAI_OWNER_HOME": "<HAI_OWNER_HOME>",
"HAI_TRANSPORT": "<HAI_TRANSPORT>",
"HAI_HTTP_HOST": "<HAI_HTTP_HOST>",
"HAI_HTTP_PORT": "<HAI_HTTP_PORT>",
"HAI_HTTP_TOKEN": "<HAI_HTTP_TOKEN>"
}
}
}
}
{
"mcpServers": {
"hai-mcp": {
"command": "uvx",
"args": [
"hai-mcp==0.1.0"
],
"env": {
"HAI_HOME": "<HAI_HOME>",
"HAI_OWNER_HOME": "<HAI_OWNER_HOME>",
"HAI_TRANSPORT": "<HAI_TRANSPORT>",
"HAI_HTTP_HOST": "<HAI_HTTP_HOST>",
"HAI_HTTP_PORT": "<HAI_HTTP_PORT>",
"HAI_HTTP_TOKEN": "<HAI_HTTP_TOKEN>"
}
}
}
}
{
"servers": {
"hai-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"hai-mcp==0.1.0"
],
"env": {
"HAI_HOME": "<HAI_HOME>",
"HAI_OWNER_HOME": "<HAI_OWNER_HOME>",
"HAI_TRANSPORT": "<HAI_TRANSPORT>",
"HAI_HTTP_HOST": "<HAI_HTTP_HOST>",
"HAI_HTTP_PORT": "<HAI_HTTP_PORT>",
"HAI_HTTP_TOKEN": "<HAI_HTTP_TOKEN>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
HAI_HOMEOptional | Directory for the global HAI state (missions, leases, proofs). Default: ~/.hai |
HAI_OWNER_HOMEOptional | Directory for the owner out-of-band channel (one-time nonces). Deliberately outside HAI_HOME. Default: ~/.hai-owner |
HAI_TRANSPORTOptional | Transport selection: 'stdio' (default) or 'streamable-http'. |
HAI_HTTP_HOSTOptional | Host for streamable-http transport. Refused unless loopback or HAI_HTTP_TOKEN is set. |
HAI_HTTP_PORTOptional | Port for streamable-http transport. |
HAI_HTTP_TOKENOptional, secret | Bearer token required to accept non-loopback streamable-http connections. Loopback binds without a token. |
Details
| Package | [email protected] (PYPI, stdio) |
| First published | 13 Oct 2026 |
| Last updated | 13 Oct 2026 |
| Registry name | io.github.smlfg/hai-mcp |
More ai and media servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
