edge-history-mcp
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., "@edge-history-mcpshow my browsing history from yesterday for the default profile"
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.
edge-history-mcp
A stdio Model Context Protocol (MCP) server that exposes Microsoft Edge browsing history across multiple profiles.
It lets an MCP client:
List Edge profiles by their friendly names.
Fetch history for a given day for a given profile, returning one entry per page visit with timestamp, URL, title, and other metadata.
The server only reads Edge data and never modifies it. Because Edge keeps the
live History database locked while running, the server copies it (together with
any rollback-journal/WAL sidecar files) to a private temporary directory and
reads the copy — so it works even while Edge is open, and SQLite can recover a
consistent snapshot if the copy was taken mid-write.
Quick start (GitHub Copilot CLI)
You don't need to clone this repo. With uv
installed, register the server in your user config with a single command —
uvx builds and runs it on demand straight from GitHub:
copilot mcp add edge-history -- uvx --from git+https://github.com/adrianba/edge-browser-mcp edge-history-mcpThen, from any directory:
copilot mcp list # edge-history should appear under User servers
copilot # start a session and ask it to use the edge-history toolsThe source/repo is
edge-browser-mcpand the command/package isedge-history-mcp— both appear in the command above (--from …edge-browser-mcpis the source, the trailingedge-history-mcpis the command to run).
To pin to a released version (recommended for stability), append a tag:
copilot mcp add edge-history -- uvx --from git+https://github.com/adrianba/edge-browser-mcp@v0.1.0 edge-history-mcpRelated MCP server: Chrome Debug MCP Server
Requirements
Windows with Microsoft Edge installed.
uv (Python is managed by uv; no manual venv needed).
Tools
list_profiles()
Lists available Edge browsing profiles. Returns a list of objects:
Field | Description |
| Friendly profile name (from Edge |
| On-disk profile directory id (e.g. |
|
|
Use name (or directory) as the profile argument to get_history.
get_history(profile, date)
Returns per-visit history entries for a profile on a single day.
profile— friendly name fromlist_profiles, or a directory id.date—YYYY-MM-DD. Day boundaries are interpreted in the local machine timezone (DST-aware).limit— optional maximum number of entries to return (default10000, capped at50000; non-positive values fall back to the default).
Each entry contains:
Field | Description |
| Visit time as a local ISO-8601 timestamp. |
| Visited URL. |
| Page title (may be empty). |
| Total number of visits to this URL. |
| Number of times the URL was typed. |
| Page-transition type ( |
| Internal |
| Internal |
Entries are ordered ascending by visit time.
MCP client configuration
For MCP clients that read a JSON config (mcpServers), the recommended entry runs
the published server from GitHub with uvx — no clone required:
{
"mcpServers": {
"edge-history": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/adrianba/edge-browser-mcp",
"edge-history-mcp"
]
}
}
}If you have the repo checked out and prefer running from source, use uv with a
cwd pointing at the repo instead:
{
"mcpServers": {
"edge-history": {
"command": "uv",
"args": ["run", "edge-history-mcp"],
"cwd": "C:\\path\\to\\edge-browser-mcp"
}
}
}GitHub Copilot CLI
The recommended setup is the one-line user-config install shown in Quick start:
copilot mcp add edge-history -- uvx --from git+https://github.com/adrianba/edge-browser-mcp edge-history-mcpThis works from any directory and uses "type": "local" (a stdio server Copilot
launches as a subprocess). Verify with copilot mcp list (it appears under
User servers) and inspect it with copilot mcp get edge-history.
Copilot CLI loads MCP definitions from several locations:
Source | Location |
Workspace |
|
User |
|
Plugin | installed plugins that bundle MCP servers |
Workspace .mcp.json (local development only)
This repo ships a workspace .mcp.json that runs the server from source
(uv run edge-history-mcp). It auto-loads only when you start copilot from the
repo directory, so it's meant for developing/testing this project — not for
everyday use. End users should prefer the uvx-from-git command above.
{
"mcpServers": {
"edge-history": {
"type": "local",
"command": "uv",
"args": ["run", "edge-history-mcp"],
"tools": ["*"]
}
}
}Testing this project in a Copilot CLI session (from source)
Pre-flight in a normal shell:
cd C:\Repos\edge-browser-mcp uv sync # install dependencies uv run edge-history-mcp # optional: confirm it starts on stdio (Ctrl+C to exit) copilot mcp list # expect: Workspace servers: edge-history (local)Launch Copilot CLI from the repo directory so
.mcp.jsonis loaded, and trust the folder when prompted:copilotInside the session, confirm the server and tools are available:
/mcp # MCP UI — edge-history should be listed/enabled /env # shows loaded MCP servers and toolsExercise the tools with natural-language prompts (approve the first tool use):
List my Edge browser profiles using the edge-history MCP server. Using edge-history, get my browsing history for profile "Profile 1" on 2026-06-20. Get the first 5 history entries for the "Google Drive" profile on 2026-06-20.Check error handling:
Using edge-history, get history for a profile called "DoesNotExist" on 2026-06-20. Get history for "Profile 1" on 06/20/2026. (wrong format -> clean error)
To isolate the test from your real Copilot config, point Copilot at a throwaway
home first: $env:COPILOT_HOME = "C:\Temp\copilot-test". The workspace
.mcp.json still loads by working directory.
Privacy & security
Browsing history is sensitive personal data. Be aware:
The server exposes the full history of every profile to whichever MCP client launches it. Only enable it with clients you trust.
History URLs are returned verbatim and may embed secrets (auth/session tokens, password-reset links, pre-signed URLs). Treat tool output as sensitive.
A plaintext copy of the
Historydatabase is written to a temporary directory for the duration of each query and then deleted.Reads are strictly read-only; Edge's own data is never modified.
Notes
By default the server reads Edge data from
%LOCALAPPDATA%\Microsoft\Edge\User Data. Override with theEDGE_USER_DATA_DIRenvironment variable (useful for testing).Guest ProfileandSystem Profileare excluded fromlist_profiles.Chromium stores timestamps as microseconds since 1601-01-01 UTC; the server converts these to local time.
Development
Clone the repo and use uv:
uv sync # create .venv and install deps (incl. dev)
uv run edge-history-mcp # run the server on stdio (Ctrl+C to exit)
uv run pytest # run the test suite
uv build # build sdist + wheel into dist/uv run edge-history-mcp starts the server on stdio; it is normally launched
by an MCP client rather than run directly.
Tests build a synthetic Edge-shaped SQLite database in a temp directory, so they
do not touch your real Edge installation. CI runs them on every push/PR (see
.github/workflows/ci.yml).
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/adrianba/edge-browser-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server