loading…
Search for a command to run...
loading…
Exposes the Habitica v3 API as MCP tools, allowing AI assistants to read and manage tasks, habits, dailies, rewards, pets, inventory, and notifications.
Exposes the Habitica v3 API as MCP tools, allowing AI assistants to read and manage tasks, habits, dailies, rewards, pets, inventory, and notifications.
A small Model Context Protocol server that exposes the Habitica v3 API as MCP tools, so MCP-aware AI assistants (Claude Code, Hermes Agent, Cursor, etc.) can read and update your Habitica tasks, habits, dailies, rewards, pets, inventory and notifications.
This is a clean rewrite of the original by iBreaker — same surface, no axios/zod/i18n, single-file Node, English-only output.
git clone https://github.com/hxlair/habitca_mcp.git
cd habitca_mcp
npm install
Node 18 or newer is required (uses the built-in fetch).
You need your Habitica API credentials:
Export them in the shell that will launch the server:
export HABITICA_USER_ID=...
export HABITICA_API_TOKEN=...
Optional:
export HABITICA_APP_ID=my-mcp-client # sent as x-client header for Habitica analytics
npm start
# or
./index.js
The server speaks MCP over stdio. It logs habitca-mcp ready to stderr once connected.
Add to the client's MCP config:
{
"mcpServers": {
"habitca": {
"command": "node",
"args": ["/absolute/path/to/habitca_mcp/index.js"],
"env": {
"HABITICA_USER_ID": "...",
"HABITICA_API_TOKEN": "..."
}
}
}
}
For Hermes specifically:
hermes mcp add habitca \
--env HABITICA_USER_ID=... \
--env HABITICA_API_TOKEN=... \
-- node /absolute/path/to/habitca_mcp/index.js
| Tool | Purpose |
|---|---|
get_user_profile |
Full user document |
get_stats |
HP / MP / XP / level / gold / class |
get_tasks |
List tasks (optionally filter by habits / dailys / todos / rewards / completedTodos) |
get_task |
Fetch one task by id |
create_task |
Create habit/daily/todo/reward |
update_task |
Update a task's fields |
score_task |
Score a task up (default) or down |
delete_task |
Delete a task |
get_task_checklist |
List checklist items on a task |
add_checklist_item |
Add a checklist item |
update_checklist_item |
Edit text/completed on a checklist item |
score_checklist_item |
Toggle checklist item complete |
delete_checklist_item |
Remove a checklist item |
get_tags / create_tag |
Tag CRUD (subset) |
get_inventory / get_pets / get_mounts |
Inventory views |
feed_pet / hatch_pet / equip_item |
Pet & gear actions |
buy_reward / get_shop / buy_item |
Reward purchases |
cast_spell |
Cast a class spell on self / a task / a party member |
get_notifications / read_notification |
Notification handling |
run_cron |
Trigger the daily cron manually |
@modelcontextprotocol/sdk. axios, zod and the i18n layer are gone.x-client header sent so Habitica can attribute traffic back to the MCP.message field instead of swallowing it.get_task and run_cron; minor schema cleanups (priority enum, completedTodos filter).MIT — same as upstream.
Run in your terminal:
claude mcp add habitca-mcp -- npx Yes, Habitca MCP is free — one-click install via Unyly at no cost.
No, Habitca runs without API keys or environment variables.
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
Open Habitca on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
CSA PROJECT - FZCO © 2026 IFZA Business Park, DDP, Premises Number 31174 - 001
Security
Low riskAutomated heuristic from public metadata — not a security guarantee.