Canon MCP

by ediardo

9 stars
198 downloads
Not rated
GitHub

About

Canon MCP is a Model Context Protocol server that allows you to control Canon cameras supporting CCAPI through natural language commands processed by Large Language Models (LLMs). It replaces traditional camera interfaces with conversational interactions.

Details

Author
ediardo
GitHub stars
9
Downloads
198
Categories
Other

- Connect to a Canon camera via CCAPI using a URL.
- Take single or interval‐based photos with adjustable settings.
- Modify ISO, shutter speed, aperture, and white balance.
- Start/stop a livestream view in a browser.
- Retrieve camera status: battery, storage, temperature, and lens information.
- Execute autofocus and manage owner name settings.

Install by cloning the repository, building with npm install and npm run build, then add the server to your MCP client configuration with the node command pointing to build/mcp.js. Ensure your Canon camera has CCAPI activated using Canon's firmware.

Canon MCP

This MCP server helps you to control Canon cameras that support CCAPI through natural language commands processed by Large Language Models (LLMs). Interact with your Canon camera using conversational language instead of traditional interfaces.

> ⚠️ This project is currently under active development. Features and documentation may be incomplete or subject to change.

Features

Connecting to camera

Livestream

connect to camera http://10.0.0.241:8080

Livestream

Livestream

start livestream

Take photos at intervals

take 10 photos 10 seconds apart

Adjust shooting settings

set iso 320

set tv 1/4000

Available tools

- connect-camera
Connect to a Canon camera via CCAPI.

- take-photo
Take a photo with the camera using the current shooting settings.

- get-shooting-settings
Get all of the present values and ability values of the shooting parameters that can be acquired and supported by the Canon camera.

- change-shooting-mode
Change shooting mode of the camera (e.g. "m" for Manual, "av" for Aperture Priority, "tv" for Shutter Priority, "p" for Program AE, "fv" for Flexible Priority, "a+" for Scene Intelligent Auto, "c3/c2/c1" for Custom Modes, "bulb" for Bulb).

- set-aperture-setting
Set the aperture (AV) setting.

- set-shutter-speed-setting
Set the shutter speed (TV) setting.

- set-iso-setting
Set the ISO setting.

- get-autofocus-setting
Get the present value of the AF operation setting.

- set-autofocus-setting
Set the AF operation setting.

- get-battery-status
Get battery status information.

- get-storage-status
Get storage status.

- get-temperature-status
Get temperature status.

- get-datetime-setting
Get date and time setting.

- get-lens-information
Get lens information.

- restore-dial-mode
Restore dial mode.

- get-last-photo
Get the last photo from the camera. The photo is saved to the output directory.

- get-live-view-image
Get live view image of the camera. This does not take a photo.

- start-interval-photos
Start taking photos at regular intervals.

- get-interval-photos-status
Get status of interval photos.

- stop-interval-photos
Stop taking photos at regular intervals.

- get-owner-name
Get the owner name set in the camera.

- set-owner-name
Set the owner name in the camera.

- get-shutter-mode
Get the shutter mode release of the camera.

- set-shutter-mode
Set the shutter mode release of the camera.

- get-color-temperature
Get the color temperature of the camera.

- set-color-temperature
Set the color temperature of the camera.

- set-white-balance
Set the white balance of the camera.

- execute-autofocus
Execute autofocus. This API only issues a focusing instruction and does not return the focusing results. For the focusing results, check the focus frame information in the Live View incidental information.

- start-camera-livestream
Start livestream in a browser.

- stop-camera-livestream
Stop livestream in a browser.

Requirements

You MUST activate CCAPI on your camera using a firmware developed by Canon.

Here are some resources to learn how to do it:

- https://developercommunity.usa.canon.com/s/article/How-to-Capture-an-Image-with-CCAPI
- https://developercommunity.usa.canon.com/s/article/Introduction-to-Camera-Control-API-CCAPI

Installation

Clone the repo

```sh
$ git clone git@github.com:ediardo/canon-mcp-server.git

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.