# OAuth (recommended) claude mcp add hub --transport http http://localhost:3000/mcp # With explicit token claude mcp add hub --transport http http://localhost:3000/mcp \ --header "Authorization: Bearer $HUB_MASTER_TOKEN"
Endpoint: http://localhost:3000/mcp (JSON-RPC 2.0)
| Name | Description | Access |
|---|---|---|
job_list |
List recent jobs in the system | all |
job_get |
Check the status of a job by ID | all |
| Name | Description | Access |
|---|---|---|
user_list |
List all Hub users with their group memberships | admins |
user_create |
Create a new Hub user, optionally assigning them to groups | admins |
user_delete |
Delete a Hub user by email | admins |
group_list |
List all Hub groups with member counts | admins |
group_create |
Create a new Hub group | admins |
group_add_member |
Add a user to a group | admins |
group_remove_member |
Remove a user from a group | admins |
| Name | Description | Access |
|---|---|---|
credential_list |
List all stored credentials (metadata only, no secrets) | all |
credential_create |
Create a new encrypted credential for tool access | all |
credential_delete |
Delete a stored credential | all |
| Name | Description | Access |
|---|---|---|
token_create |
Generate a new API token for a user. Returns the token once — save it immediately. | all |
token_revoke |
Revoke an API token by its prefix | all |
| Name | Description | Access |
|---|---|---|
audit_log |
Query recent audit log entries. Shows who did what and when. | admins |
| Name | Description | Access |
|---|---|---|
cron_list |
List all cron jobs with their schedules, status, and last run time | all |
cron_create |
Create a new cron job that runs a Hub tool on a schedule. Schedule format: '* * * * *' (minute hour day-of-month month day-of-week). Examples: '0 9 * * 1-5' = weekdays at 9am, '*/5 * * * *' = every 5 minutes, '0 0 * * *' = daily at midnight. | all |
cron_delete |
Delete a cron job by name | all |
cron_toggle |
Enable or disable a cron job | all |
| Name | Description | Access |
|---|---|---|
jira_search |
Search JIRA issues using JQL | developers platform jira |
jira_get_issue |
Get detailed information about a JIRA issue | developers platform jira |
jira_my_mentions |
Find JIRA issues assigned to or reported by the current user | developers platform jira |
| Name | Description | Access |
|---|---|---|
action_create |
Create a custom tool from TypeScript code. The code must `export default async function(input, ctx)` where ctx has: ctx.log.info(), ctx.credential(type), ctx.user. Returns compilation errors if any. Use action_list to see existing tools, action_run to execute them. | all |
action_eval |
Execute TypeScript code once without registering. For quick testing. Code must `export default async function(input, ctx)`. Returns result or error. | all |
action_run |
Execute a custom tool by name. Supports retry policy if configured. Use action_list to see available tools. | all |
action_update |
Update an existing custom tool's code, description, schema, retry policy, or access. | all |
action_delete |
Delete a custom tool. | all |
action_list |
List all custom tools with their code and metadata. | all |
| Name | Description | Access |
|---|---|---|
webhook_create |
Create an incoming webhook endpoint. When called, it triggers an action. Returns the webhook URL. | all |
webhook_list |
List all incoming webhooks with their URLs and status. | all |
webhook_delete |
Delete an incoming webhook. | all |
webhook_toggle |
Enable or disable an incoming webhook. | all |
| Name | Description | Access |
|---|---|---|
file_list |
List files with optional filters (tag, jobId, name pattern, contentType). | all |
file_upload |
Upload a file (base64-encoded content). Requires access.read groups to be specified. | all |
file_get |
Get file metadata by ID or name. Access-checked. | all |
file_read |
Read file content. Text files returned as text, binary files as base64. Access-checked. | all |
file_delete |
Delete a file. Owner or admin only. | all |
file_update |
Update file tags, access groups, or expiration. Owner or admin only. | all |
| Name | Description | Access |
|---|---|---|
agent_create |
Create an agent template (name, system prompt, model, tools, max steps). Use agent_list to see existing agents. | all |
agent_list |
List all agent templates. | all |
agent_get |
Get an agent template by name or ID. | all |
agent_update |
Update an agent template's config (description, system prompt, model, tools, max steps). | all |
agent_delete |
Delete an agent template. | all |
| Name | Description | Access |
|---|---|---|
chat_create |
Create a new chat session. Either from an agent template (by name) or ad-hoc with custom config. Returns chat ID. | all |
chat_send |
Send a message to a chat and get the LLM response. The LLM may call Hub tools (agentic loop). Returns assistant response and any tool call results. | all |
chat_invoke |
One-shot: create a chat from an agent, send a message, get response, auto-archive. Ideal for structured output agents or single-query use cases. Combines chat_create + chat_send into one call. | all |
chat_list |
List chat sessions. Optionally filter by status. | all |
chat_get |
Get a chat session with full message history. | all |
chat_delete |
Delete a chat session. | all |
chat_archive |
Archive a chat session (set status to archived). | all |
chat_handoff |
Hand off the current chat to another agent. If message is provided, it is sent to the target agent immediately and the response is returned. Future messages to this chat will be transparently routed to the target agent's chat. When the target chat is archived, control returns to the original chat. Can only be called from within a chat session. | all |