About Eagle MCP Server (Unofficial)
Eagle MCP Server is an unofficial MCP server for the Eagle media management app, handling local images, audio and video files. It runs over Streamable HTTP or stdio and suits users who want an AI client to work with their Eagle library.
Key features
- 01Supports images, audio, video and 3D model formats
- 02Provides tools for folders, items and libraries
- 03Connects over Streamable HTTP or stdio transport
- 04Some tools disabled by default and can be enabled
Use cases
- 01Letting an AI client search and inspect Eagle library items
- 02Importing local files or URL items in bulk through MCP tools
- 03Organizing folders and item metadata in Eagle
MCP support
This project is an MCP server that exposes Eagle API operations as tools for MCP clients, such as querying item information, adding files and managing folders.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEEagle MCP Server (Unofficial)
Note
Official MCP support is planned for Eagle v5 (public beta in Q1 2026)

A Model Context Protocol (MCP) server for Eagle.
Supported file formats:
JPG/JPEGPNGPDFSVGMP4MP3FBXOBJEPSTIF/TIFFWebPBMPICORAW- etc
- Eagle: https://eagle.cool/
- Eagle API docs: https://api.eagle.cool/
Requirements
- Python 3.13
- uv
Prerequisites
Install the required dependencies:
uv sync
Usage
- Launch the Eagle app.
- Launch this MCP server by running the following command:
uv run main.py
Connecting to the MCP Server using Streamable HTTP
MCP config:
{
"mcpServers": {
"eagle-mcp-server": {
"url": "http://localhost:8000/mcp"
}
}
}
If you need stdio transport instead:
{
"mcpServers": {
"eagle-mcp-server": {
"command": "uvx",
"args": [
"--from", "git+https://github.com/tuki0918/eagle-mcp-server@fastmcp-stdio",
"eagle-mcp-server"
]
}
}
}
See #17 for more details.
Tools
| Supported | Eagle API endpoint | Operation ID | Enabled (default) | Category |
|---|---|---|---|---|
| ✅ | - | connect | MCP | |
| ✅ | /api/application/info | get_application_info | ⚫︎ | Application |
| ✅ | /api/folder/create | create_folder | ⚫︎ | Folder |
| ✅ | /api/folder/rename | rename_folder | Folder | |
| ✅ | /api/folder/update | update_folder | ⚫︎ | Folder |
| ✅ | /api/folder/list | get_folder_list | ⚫︎ | Folder |
| ✅ | /api/folder/listRecent | get_folder_list_recent | Folder | |
| ✅ | /api/item/addFromURL | add_item_from_url | Item | |
| ✅ | /api/item/addFromURLs | add_items_from_urls | Item | |
| ✅ | /api/item/addFromPath | add_item_from_path | ⚫︎ | Item |
| ✅ | /api/item/addFromPaths | add_items_from_paths | Item | |
| ✅ | /api/item/addBookmark | add_bookmark | Item | |
| ✅ | /api/item/info | get_item_info | ⚫︎ | Item |
| ✅ | - | get_item_source | ⚫︎ | Item |
| ✅ | /api/item/thumbnail | get_item_thumbnail | Item | |
| ✅ | /api/item/list | get_item_list | ⚫︎ | Item |
| ✅ | /api/item/moveToTrash | move_item_to_trash | ⚫︎ | Item |
| ✅ | /api/item/refreshPalette | refresh_item_palette | Item | |
| ✅ | /api/item/refreshThumbnail | refresh_item_thumbnail | Item | |
| ✅ | /api/item/update | update_item | ⚫︎ | Item |
| ✅ | /api/library/info | get_library_info | ⚫︎ | Library |
| ✅ | /api/library/history | get_library_history | Library | |
| ✅ | /api/library/switch | switch_library | Library | |
| ✅ | /api/library/icon | get_library_icon | Library |
MCP Server API docs:
Enabling Disabled Tools
Some tools are disabled by default (shown as empty cells in the "Enabled (default)" column above). To enable these disabled tools:
- Locate the tool definition in the source code
- Remove the
tags=["Disabled"]line from the tool configuration - Restart the MCP server
This will make the previously disabled tools available for use.
Use Cases
1) Same Host (Recommended)
flowchart LR
subgraph 192.168.1.100
direction LR
subgraph FileSystem [File System]
end
subgraph EagleApp [Eagle App<br/>localhost:41595]
end
subgraph MCPServer [MCP Server<br/>localhost:8000]
end
subgraph MCPClient [MCP Client]
end
end
EagleApp ==> MCPServer e1@==> MCPClient
MCPClient e2@==> MCPServer ==> EagleApp
EagleApp ==> FileSystem
FileSystem ==> EagleApp
e1@{ animate: true }
e2@{ animate: true }
Tip
You have direct access to the filesystem.
2) Other Host (MCP Client) + Same Host (MCP Server, Eagle App)
flowchart LR
subgraph 192.168.1.100
subgraph FileSystem [File System]
end
subgraph EagleApp [Eagle App<br/>localhost:41595]
end
subgraph MCPServer [MCP Server<br/>localhost:8000]
end
end
subgraph 192.168.1.xxx
subgraph MCPClient [MCP Client]
end
end
EagleApp ==> MCPServer e1@==> MCPClient
MCPClient e2@==> MCPServer ==> EagleApp
EagleApp ==> FileSystem
FileSystem ==> EagleApp
e1@{ animate: true }
e2@{ animate: true }
Warning
You don't have access to the filesystem.
3) Other Host
flowchart LR
subgraph 192.168.1.100
subgraph FileSystem [File System]
end
subgraph EagleApp [Eagle App<br/>localhost:41595]
end
end
subgraph 192.168.1.101
subgraph MCPServer [MCP Server<br/>localhost:8000]
end
end
subgraph 192.168.1.xxx
subgraph MCPClient [MCP Client]
end
end
EagleApp ==> MCPServer e1@==> MCPClient
MCPClient e2@==> MCPServer ==> EagleApp
EagleApp ==> FileSystem
FileSystem ==> EagleApp
e1@{ animate: true }
e2@{ animate: true }
Warning
You don't have access to the filesystem.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.