Processes Outlook email by date range, stores messages in SQLite and builds vector embeddings in MongoDB for semantic search.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add outlook-email --env COLLECTION_NAME='<COLLECTION_NAME>' --env EMBEDDING_BASE_URL='<EMBEDDING_BASE_URL>' --env EMBEDDING_MODEL='<EMBEDDING_MODEL>' --env MONGODB_URI='<MONGODB_URI>' --env PROCESS_DELETED_ITEMS='<PROCESS_DELETED_ITEMS>' --env SQLITE_DB_PATH='<SQLITE_DB_PATH>' -- uv venv .venv~/.codex/config.toml
[mcp_servers.outlook-email]
command = "uv"
args = ["venv", ".venv"]
env = { COLLECTION_NAME = "<COLLECTION_NAME>", EMBEDDING_BASE_URL = "<EMBEDDING_BASE_URL>", EMBEDDING_MODEL = "<EMBEDDING_MODEL>", MONGODB_URI = "<MONGODB_URI>", PROCESS_DELETED_ITEMS = "<PROCESS_DELETED_ITEMS>", SQLITE_DB_PATH = "<SQLITE_DB_PATH>" }
# codex mcp add outlook-email --env COLLECTION_NAME='<COLLECTION_NAME>' --env EMBEDDING_BASE_URL='<EMBEDDING_BASE_URL>' --env EMBEDDING_MODEL='<EMBEDDING_MODEL>' --env MONGODB_URI='<MONGODB_URI>' --env PROCESS_DELETED_ITEMS='<PROCESS_DELETED_ITEMS>' --env SQLITE_DB_PATH='<SQLITE_DB_PATH>' -- uv venv .venv~/.cursor/mcp.json
{
"mcpServers": {
"outlook-email": {
"command": "uv",
"args": [
"venv",
".venv"
],
"env": {
"COLLECTION_NAME": "<COLLECTION_NAME>",
"EMBEDDING_BASE_URL": "<EMBEDDING_BASE_URL>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"MONGODB_URI": "<MONGODB_URI>",
"PROCESS_DELETED_ITEMS": "<PROCESS_DELETED_ITEMS>",
"SQLITE_DB_PATH": "<SQLITE_DB_PATH>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"outlook-email": {
"type": "stdio",
"command": "uv",
"args": [
"venv",
".venv"
],
"env": {
"COLLECTION_NAME": "<COLLECTION_NAME>",
"EMBEDDING_BASE_URL": "<EMBEDDING_BASE_URL>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"MONGODB_URI": "<MONGODB_URI>",
"PROCESS_DELETED_ITEMS": "<PROCESS_DELETED_ITEMS>",
"SQLITE_DB_PATH": "<SQLITE_DB_PATH>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"outlook-email": {
"command": "uv",
"args": [
"venv",
".venv"
],
"env": {
"COLLECTION_NAME": "<COLLECTION_NAME>",
"EMBEDDING_BASE_URL": "<EMBEDDING_BASE_URL>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"MONGODB_URI": "<MONGODB_URI>",
"PROCESS_DELETED_ITEMS": "<PROCESS_DELETED_ITEMS>",
"SQLITE_DB_PATH": "<SQLITE_DB_PATH>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"outlook-email": {
"command": "uv",
"args": [
"venv",
".venv"
],
"env": {
"COLLECTION_NAME": "<COLLECTION_NAME>",
"EMBEDDING_BASE_URL": "<EMBEDDING_BASE_URL>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"MONGODB_URI": "<MONGODB_URI>",
"PROCESS_DELETED_ITEMS": "<PROCESS_DELETED_ITEMS>",
"SQLITE_DB_PATH": "<SQLITE_DB_PATH>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"outlook-email": {
"command": "uv",
"args": [
"venv",
".venv"
],
"env": {
"COLLECTION_NAME": "<COLLECTION_NAME>",
"EMBEDDING_BASE_URL": "<EMBEDDING_BASE_URL>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"MONGODB_URI": "<MONGODB_URI>",
"PROCESS_DELETED_ITEMS": "<PROCESS_DELETED_ITEMS>",
"SQLITE_DB_PATH": "<SQLITE_DB_PATH>"
}
}
}
}需要的环境变量
COLLECTION_NAMEEMBEDDING_BASE_URLEMBEDDING_MODELMONGODB_URIPROCESS_DELETED_ITEMSSQLITE_DB_PATH
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。