Habitica
Habitica is an open-source task management application that gamifies productivity by turning tasks into role-playing game elements.
Verdict
Common use cases
- Draft challenge tasks from meeting notes
- Bulk-create dailies for sprint rituals
- Tag tasks by project without opening Habitica
- Set webhooks to log task completion
- Check subscription status before renewal
Integration
- Vendor
- Habitica
- Category
- productivity
- Auth
- API_KEY
- Tools
- 47
- Composio slug
habitica
Tools
- Add Task to Challenge
Tool to add a new task to a specified challenge. Use when you need to programmatically create a challenge task after the challenge is set up and you have its ID.
- Cancel Subscription
Attempts to cancel the authenticated user's subscription. Since Habitica's public API does not provide a cancellation endpoint, this action checks the current subscription state and returns: - success=True with a no-op message if there is n
- Create Challenge
Tool to create a new challenge. Use when you need to start a challenge in a specific group with title, summary, and optional tasks.
- Create Habitica Group
Tool to create a Habitica party or guild. Use when you want to initialize a new group with name, type, and optional privacy and description.
- Create Tag
Tool to create a new tag. Use after determining the desired tag name.
- Create Task
Tool to create a new user task in Habitica. Use after gathering task details like text, type, and optional properties.
- Create Webhook
Tool to create a new webhook for taskActivity events. Use when you need real-time notifications of task creation, updates, deletion, or scoring.
- Delete a Habitica Challengedestructive
Tool to delete a challenge. Use when you need to permanently remove a challenge after confirmation.
- Delete Challenge Taskdestructive
Tool to delete a specific task from a challenge. Use when removing an unwanted or outdated task from a challenge. Use after confirming the task belongs to the target challenge.
- Delete Habitica Groupdestructive
Tool to delete a Habitica group (guild) or leave a party. - For parties: Habitica does not support deleting via DELETE /groups/{id}. The correct flow is to leave the party via POST /groups/party/leave. - For guilds: If you are the leader an
- Delete Habitica Tagdestructive
Tool to delete a tag for the authenticated user. Use when you need to remove an obsolete tag after confirming it’s no longer applied to any tasks.
- Delete Taskdestructive
Tool to delete a Habitica task. Use when you have the task ID and want to remove it permanently.
- Get Challenge
Tool to retrieve details of a specific challenge. Use when you have the challenge ID and need its full data.
- Get Challenge Task
Tool to retrieve a specific task from any challenge. Use after you have the task ID and need its full details.
- Get Challenge Tasks
Tool to get all tasks for a specified challenge. Use when you have a challenge ID and need to list its defined tasks, including challenge metadata per task.
- Get Content
Tool to retrieve global game content definitions. Use when loading Habitica items, equipment, pets, quests, and other definitions. Call once per session to cache content.
- Get Content By Type
Tool to retrieve game content for a specified category. Use when you need to fetch specific Habitica content by its type (e.g., items, quests). Use after identifying the content type.
- Get Equipment
Tool to retrieve the authenticated user’s equipped gear and costume. Use when you need to inspect current battle gear and costume slots.
- Get Group
Tool to retrieve details of a specific group. Use when you have a groupId and need its metadata.
- Get Group Challenges
Tool to retrieve challenges available in a specific group (guild, party, or tavern).
- Get Group Members
Tool to retrieve members of a specific group. Use when you have a groupId and need its member list.
- Get Habitica Achievements
Tool to retrieve all available Habitica achievements. Use after authenticating to list achievements and their progress.
- Get Habitica Groups
Tool to retrieve Habitica groups (guilds, parties, taverns). Use when browsing or searching available groups by type or name before joining.
- Get Notifications
Tool to retrieve notifications for the authenticated user. Use when you need to fetch the user's current notification list after authenticating.
- Get Party
Tool to retrieve the authenticated user's party details. Use when you need to fetch the current party information after authenticating.
- Get Party Members
Tool to retrieve members of the authenticated user's party. Use after authenticating to list current party members.
- Get Tags
Tool to retrieve authenticated user's tags. Use when you need to list the authenticated user's tags after confirming credentials.
- Get Tasks
Tool to retrieve all tasks for the authenticated user. Use when you need the user's current tasks list after authenticating.
- Get User Achievements
Tool to retrieve the authenticated user's achievements. Use after authenticating to fetch the current user's achievements.
- Get User Challenges
Tool to retrieve challenges the authenticated user participates in. Use when you need a paginated list of user challenges.
- Get User Inventory
Tool to retrieve the authenticated user's full inventory. Use after authentication to list all owned items.
- Get User Profile
Tool to retrieve the authenticated user's profile information. Use after authenticating to fetch user details.
- Get User Quest Progress
Tool to retrieve the authenticated user's quest progress. Use after authenticating to fetch the current user's quest progress.
- Get User Stats
Tool to retrieve the authenticated user's Habitica statistics. Use after authentication to fetch user's stats block.
- Get User Subscription
Tool to retrieve the authenticated user's subscription details. Use after authenticating to verify current subscription status.
- Get Webhooks
Tool to retrieve webhooks for the authenticated user. Use when you need to list the user's webhooks after authenticating.
- Invite To Group
Tool to invite users to a specific group. Use when you need to send invitations by user UUID, email, or username.
- Invite To Party
Tool to invite users to the authenticated user's party. Use when you have a list of identifiers (UUIDs, emails, or usernames) ready and want to add them to your current party.
- Join Challenge
Tool to join a challenge. Use after confirming the challenge ID to participate in a specific challenge.
- Leave Challenge
Tool to leave a Habitica challenge. Use when you need to remove yourself from a specific challenge and decide whether to keep or remove its tasks.
- Local Login
Tool to authenticate a user via local credentials. Use when needing an API token for subsequent Habitica requests.
- Local User Registration
Tool to register a new Habitica user via email and password. Use when creating a fresh account before authentication.
- Mark Notifications Seen
Tool to mark specific notifications as read. Use when you want to clear unread notification badges after reviewing your notifications.
- Remove Party Memberdestructive
Tool to remove a member from your party. Use when you need to eject a user from your party as the party leader.
- Score Task
Tool to score (check/uncheck) a Habitica task. Use when you need to mark a task as completed or undone.
- Social Auth
Tool to authenticate a user via a social provider. Use after obtaining an OAuth token or code from Facebook, Google, GitHub, or Apple.
- Subscribe Webhook
Tool to enable (subscribe) an existing webhook by ID for the authenticated user. This aligns with Habitica's documented API by updating the webhook resource to ensure it is enabled. Usage: obtain the webhook ID (e.g., via Get Webhooks or af
Setup
Setup guide
- 11. Open your Habitica account settings and navigate to the API section to copy your User ID and API Token. 2. In Switchy, click Integrations in the left sidebar, find Habitica, and click Connect. 3. Paste your User ID into the first field and your API Token into the second field, then click Authorize. 4. Switchy confirms the connection by fetching your current user profile — you'll see your username displayed if successful. 5. Open any Space and type '@Habitica create a daily task called Morning standup notes' to test the integration. 6. The MCP responds with the new task ID and confirms it's live in your Habitica account. 7. Each teammate who wants to use this MCP must connect their own Habitica API credentials — the integration is per-user, not workspace-wide.
What teammates see: by default, memories from Habitica are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Create Sprint Dailies
@Habitica create three daily tasks: 'Review pull requests', 'Update sprint board', and 'Post standup summary'. Make them all due every weekday.Open in a Space →
Add Challenge Task
@Habitica add a task called 'Document API changes' to challenge ID 5f8a3c2b1e9d4a0012345678. Set it as a to-do with medium difficulty.Open in a Space →
Tag Tasks by Project
@Habitica create a tag called 'Q1-Launch' and list any existing tasks I can apply it to.Open in a Space →
Set Task Webhook
@Habitica create a webhook that sends taskActivity events to https://example.com/habitica-events. Confirm it's active.Open in a Space →
Check Subscription Status
@Habitica check my subscription status and tell me the next billing date and plan type.Open in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@habitica show me all my overdue dailies and habits I haven't completed this week, grouped by difficulty
Based on your Habitica account, you have 3 overdue dailies: 'Morning meditation' (easy, last completed 4 days ago), 'Review pull requests' (medium, last completed 2 days ago), and 'Evening workout' (hard, missed for 6 days). For habits, you haven't logged 'Drink water' (easy) or 'Code review feedback' (medium) in the past 7 days. Your current health is at 42/50 due to these missed dailies. Would you like me to mark any of these as complete now, or adjust their difficulty?
This example demonstrates read-only task retrieval and filtering. Requires API key with read access to user tasks. The MCP returns task metadata (type, difficulty, streak data) but cannot infer completion intent—you must explicitly ask it to update tasks in a follow-up prompt.
@habitica create a new daily task 'Update project roadmap' due every Monday and Thursday, mark it as medium difficulty
Created daily task 'Update project roadmap' in your Habitica account. Task ID: abc123-def456. Configured to repeat every Monday and Thursday with medium difficulty. The task starts today and will appear in your dailies list at midnight UTC. First occurrence is scheduled for this Thursday. You'll earn 15 experience and 8 gold per completion based on medium difficulty multiplier.
This showcases task creation with scheduling parameters. Side-effect: immediately adds the task to your Habitica account—no undo via MCP. Habitica's repeat logic uses UTC timezone, so 'Monday' means Monday 00:00 UTC regardless of your local time. Verify the schedule in Habitica's UI after creation.
@habitica I want to start a guild challenge for our team's Q1 goals—create one called 'Q1 Sprint Challenge' with three todos: ship v2.0, reduce bug backlog by 50%, and document new APIs
Created challenge 'Q1 Sprint Challenge' (ID: challenge-789xyz) in your guild. Added three todos: (1) 'Ship v2.0 release' with hard difficulty, (2) 'Reduce bug backlog by 50%' with medium difficulty, and (3) 'Document new API endpoints' with easy difficulty. Challenge is now visible to all guild members. Members who join will get these tasks added to their personal task lists. Note: you'll need to set a prize amount and end date in Habitica's UI—the MCP cannot configure prize gems or deadlines during creation.
Demonstrates multi-step workflow combining challenge creation and task addition. Requires API key with group management permissions. The MCP creates the challenge structure but cannot assign prizes or set end dates—those require manual configuration in Habitica. Challenge tasks sync to members' accounts only after they explicitly join.
Use-case deep-dives
When Habitica works for distributed team routines
A 6-person remote engineering team wants shared accountability for daily standups, code reviews, and documentation updates. Habitica's challenge system lets you create group tasks with shared visibility—everyone sees who completed their standup or skipped their review window. The webhook tool sends real-time task completions to Slack, so the team gets instant social proof without manual check-ins. This works when your routines are binary (done/not done) and you want gamification to drive consistency. If your team needs nuanced task tracking or dependencies between work items, Habitica gets clunky—it's built for habits, not project management. Use this MCP when you're optimizing for behavior change, not deliverable tracking.
Building custom habit loops for solo knowledge workers
A freelance designer wants to automate their morning routine: meditation, inbox zero, and client follow-ups. Habitica's task creation tools let you script recurring dailies with custom tags and difficulty levels, then tie them to webhooks that log completions to a personal dashboard. The 47 tools give you granular control—set up reward items that unlock after streaks, or auto-adjust task difficulty based on completion rates. This shines when you're treating productivity as a system to optimize, not just a to-do list to clear. The API key auth means you can integrate Habitica into Zapier, Shortcuts, or custom scripts without OAuth friction. If you just need a task manager, Todoist is simpler; use Habitica when you want programmable behavior design.
When Habitica's challenge model fits new-hire ramp-up
A 12-person customer success team onboards 2-3 new reps per quarter, each following a 30-day checklist: shadow calls, product certification, first solo ticket. The Create Challenge tool lets you template the onboarding path once, then clone it for each cohort with group visibility. New hires see their progress gamified (levels, XP, streaks), and managers use webhooks to track completion rates without micromanaging. This works when onboarding is structured and repetitive—same steps, different people, predictable cadence. If your onboarding varies by role or requires conditional branching, Habitica's linear task model breaks down. Use this when you want social accountability and gamification to drive completion, not when you need workflow automation or approval gates.
Frequently asked
What does the Habitica MCP let me do in Switchy?
It connects your Habitica account so AI agents can create tasks, manage challenges, set up webhooks, and handle tags without leaving the chat. You can automate habit tracking, build challenge workflows, or sync tasks from other tools into your Habitica dailies and to-dos. The MCP exposes 47 tools covering most of Habitica's task and group management features.
Do I need admin access to connect Habitica?
No. You authenticate with your personal Habitica API key, which you generate in your account settings. The key grants access to your own tasks, challenges, and groups—no admin role required. If you want to manage a guild or party, you'll need appropriate permissions within that group, but the MCP connection itself only needs your user-level API key.
Can the Habitica MCP cancel my subscription automatically?
No. Habitica's public API doesn't expose a subscription cancellation endpoint, so the MCP can only check your current subscription status and return that information. To actually cancel, you'll need to log into Habitica's web interface and do it manually. The tool exists to surface subscription state, not to modify billing.
How is this different from using Habitica's web app or API directly?
The web app is faster for one-off task creation; the API requires you to write code. The MCP sits in between: you describe what you want in plain language, and the AI translates that into the right API calls. It's useful when you're already in Switchy coordinating work across tools and don't want to context-switch to Habitica's UI.
Who on my team should connect the Habitica integration?
Each person who wants AI agents to manage their Habitica tasks should connect their own API key. Habitica is user-scoped—there's no shared team account—so every team member authenticates individually. If you're running a shared guild or challenge, coordinate who creates those resources, but the MCP connection itself is per-person.