Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@jhabit-mcpLog that I just finished my daily meditation"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Standalone MCP server for jhabit — a habit and quit tracker. Connects to your jhabit instance via API key and exposes tracking tools to MCP clients like Claude Desktop and Claude Code.
Note: jhabit also has a built-in remote MCP server using OAuth 2.1 + Streamable HTTP, for cloud-based MCP clients. This standalone server is for local stdio-based clients.
Setup
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"jhabit": {
"command": "npx",
"args": ["-y", "jhabit-mcp"],
"env": {
"JHABIT_URL": "https://your-jhabit-instance.com",
"JHABIT_API_KEY": "your-api-key-here"
}
}
}
}Claude Code
{
"mcpServers": {
"jhabit": {
"command": "npx",
"args": ["-y", "jhabit-mcp"],
"env": {
"JHABIT_URL": "https://your-jhabit-instance.com",
"JHABIT_API_KEY": "your-api-key-here"
}
}
}
}From source
git clone https://github.com/Jacob-Stokes/jhabit-mcp.git
cd jhabit-mcp
npm install && npm run build
JHABIT_URL=https://your-instance.com JHABIT_API_KEY=your-key node dist/index.jsGetting an API Key
Log into your jhabit instance
Go to Settings > API Keys
Create a new key and copy it
Environment Variables
Variable | Required | Description |
| Yes | Base URL of your jhabit instance |
| Yes | API key for authentication |
Available Tools
list_trackers
List all habits and/or quits.
type(optional): Filter by"habit"or"quit"
create_tracker
Create a new habit or quit tracker.
name(required): Tracker name, e.g. "Meditate" or "Smoking"type(required):"habit"or"quit"emoji(optional): Emoji icon
log_entry
Log an entry. For habits = "I did it". For quits = "I slipped up".
tracker_id(required): Tracker IDtimestamp(optional): ISO timestamp, defaults to nownote(optional): Note
delete_entry
Delete an entry by ID.
entry_id(required): Entry ID
get_tracker_stats
Get stats for a tracker.
tracker_id(required): Tracker ID
Returns streaks (current/best) for habits, or abstinence time and slip count for quits.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.