add_noteLABSCO SUMMARY
Your Google account and your git history reachable from the same session.
The combination is the point — an assistant that can read the email about a bug, check the branch it landed on, and write the note, without three separate servers and three sets of config. The setup cost is real: a Google Cloud project of your own with three APIs enabled is not a two-minute task, and you are handing the server the scopes to send mail and push branches.
What it is
An MCP server bundling five areas that usually need five servers: a local note store, Gmail, Google Calendar, Google Tasks and git operations on local repositories. Google access goes through a standard OAuth flow with credentials you create yourself; notes never leave your filesystem.
What you get
- Notes created, read, listed, searched, edited and deleted against a directory you choose —
add_note,read_note,list_notes,search_notes,edit_note,delete_note - Gmail searched with filters, messages read in full by id, mail sent, and the account's labels listed —
search_emails,get_emails,send_email,list_available_labels - Calendars listed, events created and events searched by keyword or date range —
list_calendars_tool,create_event_tool,search_events_tool - Task lists enumerated, tasks created and tasks completed —
list_task_lists_tool,create_task_tool,complete_task_tool - Git worked properly rather than shelled: status, staged and unstaged diffs, staging, reset, commit and log —
status_tool,diff_unstaged_tool,diff_staged_tool,add_tool,reset_tool,commit_tool,log_tool - Branch and remote operations including merge and rebase with their abort and continue states —
branch_list_tool,create_branch_tool,checkout_tool,merge_tool,rebase_tool,stash_save_tool,pull_tool,push_tool
Requirements
Python 3.13 or newer and the uv package manager, plus git for the repository tools. For the Google half you create your own Google Cloud project, enable the Gmail, Calendar and Tasks APIs, configure the OAuth consent screen, create a Desktop application OAuth client and download it as credentials.json. Three environment values point the server at everything: MIST_NOTES_DIR for where notes live, MIST_GOOGLE_CREDENTIALS_PATH and MIST_GOOGLE_TOKEN_PATH. The first run opens a browser to authorise; the token is saved for later. If credentials stop working, deleting the token file and re-authenticating is the documented fix.
Setup effort
Build from source — git clone https://github.com/cloaky233/mist.git
USE CASES
Turning an email thread into something you will act on
Search Gmail for the thread, read the full messages, and write the conclusion into a local note that stays on your disk.
Getting ready to commit
Read the working tree status and both diffs, stage what belongs together, and commit with a message the assistant drafted from the actual change.
Scheduling from a conversation
List your calendars, check what is already there in that range, and create the event without switching apps.
Recovering a branch that went wrong
List branches, check out the one you want, and use the merge or rebase tools' abort state instead of hunting for the right git incantation.
Finding a note you wrote months ago
Search by content across the note directory and open the match, rather than grepping a folder yourself.
31 tools
Listed in project docs. Your client may show a different list.
read_notelist_notessearch_notesedit_notedelete_notesearch_emailsget_emailssend_emaillist_available_labelslist_calendars_toolcreate_event_toolsearch_events_toollist_task_lists_toolcreate_task_toolcomplete_task_toolstatus_tooldiff_unstaged_tooldiff_staged_tooladd_toolreset_toolcommit_toollog_toolbranch_list_toolcreate_branch_toolcheckout_toolmerge_toolrebase_toolstash_save_toolpull_toolpush_toolBEFORE YOU INSTALL
What to know first
Tools you get
31 tools named in the project's documentation.
Requires
- uv on PATH
- Python 3.13 or later
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/cloaky233/mist.git
cd mistDownload the OAuth client JSON file from Google Cloud Console and save it as credentials.json in this directory
MCP Clients
Claude Desktop
{
"mcpServers": {
"M.I.S.T.": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"<YOUR_PATH_TO_MIST>",
"mcp",
"run",
"<YOUR_PATH_TO_MIST>/server.py"
],
"env": {
"MIST_GOOGLE_CREDENTIALS_PATH": "<YOUR_PATH_TO_MIST>/credentials.json",
"MIST_GOOGLE_TOKEN_PATH": "<YOUR_PATH_TO_MIST>/token.json",
"MIST_NOTES_DIR": "<YOUR_MIST_NOTES_DIR>"
}
}
}
}Zed
{
"context_servers": {
"mist-server": {
"command": {
"path": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"<YOUR_PATH_TO_MIST>",
"mcp",
"run",
"<YOUR_PATH_TO_MIST>/server.py"
],
"env": {
"MIST_GOOGLE_CREDENTIALS_PATH": "<YOUR_PATH_TO_MIST>/credentials.json",
"MIST_GOOGLE_TOKEN_PATH": "<YOUR_PATH_TO_MIST>/token.json",
"MIST_NOTES_DIR": "<YOUR_MIST_NOTES_DIR>"
}
},
"settings": {
"enable_server": true
}
}
}
}