Remote Camera
Capture photos remotely from mobile devices via S3-backed upload URLs
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"remote-camera": {
"url": "https://www.ai.moda/mcp-servers/remote-camera/mcp"
}
}
}Remote endpoints
https://www.ai.moda/mcp-servers/remote-camera/mcpstreamable-httpWhat it can do
Tool inventory
Tools (2)
🟡generate_upload_url(message)
Generate a URL for remote camera upload. Send this URL to a mobile device to capture and upload a photo. The capture URL can be reused multiple times to upload different photos without generating a new URL. The URL will be in format: https://www.ai.moda/mcp-servers/remote-camera/capture/?url=PRESIGNED_URL
Input Schema
{
"type": "object",
"properties": {
"message": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Instructions/message to display to the user on the capture page (max 200 characters)",
"examples": [
"Take a photo of the chip markings on the main IC",
"Capture the PCB trace layout near the connector",
"Show me the part number on that sensor module"
]
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"capture_url": {
"type": "string",
"format": "uri",
"description": "Full URL to send to mobile device for photo capture",
"examples": [
"https://www.ai.moda/mcp-servers/remote-camera/capture/?url=https%3A%2F%2Fs3.us-east-005.backblazeb2.com%2F..."
]
},
"session_id": {
"type": "string",
"format": "uuid",
"description": "Session ID used for this upload, in UUID format"
}
},
"required": [
"capture_url",
"session_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡poll_for_upload(session_id, timeout, modified_since, not_etag)
Poll S3 bucket waiting for photo upload to complete. Returns a presigned download URL when the file is ready. The same session_id can be used to poll for new uploads multiple times, allowing the capture URL to be reused.
Input Schema
{
"type": "object",
"properties": {
"session_id": {
"type": "string",
"format": "uuid",
"description": "Session ID to poll for, in UUID format"
},
"timeout": {
"type": "integer",
"minimum": 1,
"maximum": 600,
"default": 50,
"description": "Max seconds to wait for upload"
},
"modified_since": {
"type": "string",
"format": "date-time",
"description": "Only detect files modified after this date in ISO 8601 or HTTP date format",
"examples": [
"2026-09-25T00:00:00.000Z",
"Sat, 19 Sep 2026 00:00:00 GMT",
"2026-09-24T00:00:00.000Z"
]
},
"not_etag": {
"type": "string",
"minLength": 3,
"maxLength": 130,
"description": "Only detect files with different ETag than this value, used to poll for new uploads",
"examples": [
"d41d8cd98f00b204e9800998ecf8427e",
"\"1a2b3c4d5e6f7g8h9i0j\"",
"a3bb189e8bf94c5e8d7a1e5f5e5e5e5e-2"
]
}
},
"required": [
"session_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"download_url": {
"type": "string",
"format": "uri",
"description": "Presigned GET URL to download the uploaded photo, valid for 7 days",
"examples": [
"https://s3.us-east-005.backblazeb2.com/bucket/remote-camera-mcp/a3bb189e-8bf9-4c5e-8d7a-1e5f5e5e5e5e?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=..."
]
},
"etag": {
"type": "string",
"minLength": 8,
"maxLength": 130,
"description": "ETag of the uploaded file, can be used with not_etag parameter for subsequent polls",
"examples": [
"d41d8cd98f00b204e9800998ecf8427e",
"1a2b3c4d5e6f7g8h9i0j",
"a3bb189e8bf94c5e8d7a1e5f5e5e5e5e-2"
]
},
"last_modified": {
"type": "string",
"format": "date-time",
"description": "Last modified timestamp of the uploaded file from S3"
}
},
"required": [
"download_url",
"etag"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence