# helloaigent-publisher MCP server

> Allows an AI agent to manage publisher feeds, publish signed updates, and access audience analytics.

- Repository: https://github.com/helloaigent-dev/helloaigent-publisher
- Page: https://hostedmcp.org/servers/helloaigent-dev/helloaigent-publisher
- Transport: stdio
- Stars: 0
- License: MIT
- Latest version: 0.1.1

## Install

### Claude Code

```sh
claude mcp add --env HELLOAIGENT_ADMIN_TOKEN=<YOUR_HELLOAIGENT_ADMIN_TOKEN> --env HELLOAIGENT_TOKEN=<YOUR_HELLOAIGENT_TOKEN> helloaigent-publisher -- npx -y @helloaigent-dev/publisher
```

### Cursor (`~/.cursor/mcp.json`)

```json
{
  "mcpServers": {
    "helloaigent-publisher": {
      "command": "npx",
      "args": [
        "-y",
        "@helloaigent-dev/publisher"
      ],
      "env": {
        "HELLOAIGENT_ADMIN_TOKEN": "<YOUR_HELLOAIGENT_ADMIN_TOKEN>",
        "HELLOAIGENT_TOKEN": "<YOUR_HELLOAIGENT_TOKEN>"
      }
    }
  }
}
```

### VS Code (`.vscode/mcp.json`)

```json
{
  "servers": {
    "helloaigent-publisher": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@helloaigent-dev/publisher"
      ],
      "env": {
        "HELLOAIGENT_ADMIN_TOKEN": "<YOUR_HELLOAIGENT_ADMIN_TOKEN>",
        "HELLOAIGENT_TOKEN": "<YOUR_HELLOAIGENT_TOKEN>"
      }
    }
  }
}
```

### Claude Desktop (`claude_desktop_config.json`)

```json
{
  "mcpServers": {
    "helloaigent-publisher": {
      "command": "npx",
      "args": [
        "-y",
        "@helloaigent-dev/publisher"
      ],
      "env": {
        "HELLOAIGENT_ADMIN_TOKEN": "<YOUR_HELLOAIGENT_ADMIN_TOKEN>",
        "HELLOAIGENT_TOKEN": "<YOUR_HELLOAIGENT_TOKEN>"
      }
    }
  }
}
```

### Codex (`~/.codex/config.toml`)

```toml
[mcp_servers.helloaigent-publisher]
command = "npx"
args = ["-y", "@helloaigent-dev/publisher"]

[mcp_servers.helloaigent-publisher.env]
HELLOAIGENT_ADMIN_TOKEN = "<YOUR_HELLOAIGENT_ADMIN_TOKEN>"
HELLOAIGENT_TOKEN = "<YOUR_HELLOAIGENT_TOKEN>"
```

### Gemini CLI (`~/.gemini/settings.json`)

```json
{
  "mcpServers": {
    "helloaigent-publisher": {
      "command": "npx",
      "args": [
        "-y",
        "@helloaigent-dev/publisher"
      ],
      "env": {
        "HELLOAIGENT_ADMIN_TOKEN": "<YOUR_HELLOAIGENT_ADMIN_TOKEN>",
        "HELLOAIGENT_TOKEN": "<YOUR_HELLOAIGENT_TOKEN>"
      }
    }
  }
}
```

## Environment variables

| Name | Required | Secret | Description |
|---|---|---|---|
| `HELLOAIGENT_ADMIN_TOKEN` | no | yes | Admin token — required for feed management and analytics tools |
| `HELLOAIGENT_TOKEN` | no | yes | Publish token (a feed's publisher token); falls back to the admin token |
| `HELLOAIGENT_API` | no | no | API base URL (default https://api.helloaigent.dev) |
| `HELLOAIGENT_API_KEY` | no | no |  |

## Tools (9)

- `hello_aigent_create_feed`
- `hello_aigent_list_feeds`
- `hello_aigent_publish`
- `hello_aigent_report_event`
- `hello_aigent_overview`
- `hello_aigent_funnel`
- `hello_aigent_event_log`
- `hello_aigent_subscribers`
- `hello_aigent_discovery_file`

## FAQ

### How do I create a new feed?

You can use the `hello_aigent_create_feed` tool, which requires a workspace key or admin token to mint a feed, an Ed25519 keypair, and a publisher token.

### What is a workspace key?

A workspace key is a 'hak_...' API key minted from the Hello Aigent console that scopes tools to your specific workspace.

### Can a workspace key be used to manage other people's feeds?

No, a workspace key only allows you to see and manage feeds that your own workspace owns.
