A Python-based server that bridges the Model Context Protocol (MCP) with JMAP (JSON Mail Access Protocol), enabling basic email operations through MCP clients.
I built this for personal use, but others are welcome to try it out.
Ensure you have uv and a valid API token for your JMAP server.
Clone the repo and run
uv pip install pyproject.toml
{
"mcpServers": {
"emails": {
"env": {
"JMAP_API_TOKEN": "your-api-token"
},
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/.../jmap-mcp",
"uv",
"run",
"jmap-mcp-server"
]
}
}
}
Errors happen. You can configure your MCP to write to a debug log to help resolve issues.
{
"mcpServers": {
"emails": {
"env": {
"JMAP_API_TOKEN": "your-api-token",
"LOG_LEVEL": "DEBUG",
"LOG_FILE": "/path/to/log/jmap-mcp-debug.log"
},
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/.../jmap-mcp",
"uv",
"run",
"jmap-mcp-server",
]
}
}
}
The project includes tests with support for both unit tests and integration tests.
Run unit tests that use mocked responses:
# Using pytest directly
pytest tests/ -m "not integration"
# Using the test runner script
python run_tests.py unit
.png)


