MCP server for creating, running, inspecting, and scheduling Figranium browser automations.
io.github.figranium/figranium-mcp (MCP Server)
An MCP server for creating, running, inspecting, and scheduling Figranium browser automations. It exposes these capabilities to MCP clients by using @modelcontextprotocol/sdk together with the official @figranium/sdk API client.
🛠️ Key Features
Create Figranium browser automations
Run automations
Inspect automation details
Schedule automations
Built with @modelcontextprotocol/sdk and @figranium/sdk
🚀 Use Cases
Automate browser workflows via an LLM-connected MCP client
Manage automation lifecycles from creation through execution and scheduling
Support inspection of existing automations
⚡ Developer Benefits
Integrates with MCP clients such as Claude Desktop, Cursor, and Manus AI
Uses the official Figranium SDK API client for automation control
⚠️ Limitations
Server capabilities are described at a high level; no additional tool names or interfaces are included in the provided excerpt
This lets Claude Desktop and Cursor launch the package directly without requiring a local build or a Docker bridge.
Automated AI Setup (llms-install.md)
AI assistants (including Cline, Cursor, Claude Desktop, and Roo Code) can automatically read llms-install.md to set up and configure the Figranium MCP server without manual intervention.
Server-Wide System Instructions
The server initializes with embedded guidelines for LLM agents detailing the task lifecycle:
Task Creation: Structuring name, starting URL, execution mode, and stealth mechanisms. Agents should default to agent mode, including for scraping tasks. scrape mode does not support action blocks and is reserved for exceptional cases requiring extremely fast, action-free scraping; headful is intended for visible interactive debugging.
Step Sequence Construction: Ordering action steps (navigate, wait_selector, click, type, javascript) and execution flow. The MCP rejects a first Timed Wait or Navigate To (use task-level wait and url) and a final Get Content action (use it as intermediate data or use extractionScript for final output).
Selector Strategy: Preferring robust ARIA, ID, and semantic class selectors with fallback strategies.
Execution & Variables: Injecting and overriding runtime context variables.
Available Resources
figranium://schemas/task-v1.json
MIME Type: application/json
Description: Exposes the complete JSON Schema specification of a Figranium task. Allows agents to dynamically inspect valid parameters and payload shapes.
Available Tools
Task Operations
create_task: Create a complete, fully-configured Figranium automation task including sequential action steps, state variables, anti-bot stealth mechanisms, and optional scheduling.
task_list: List all task IDs, names, and descriptions registered on the Figranium server.
task_execute: Run a saved task by taskId with optional variable overrides.
The task schema supports Figranium v0.18 browser interactions: checked-state actions, drag and drop, page reloads, native select controls, and single/double/right-click modes. It also supports opt-in page translation through translation: { enabled, targetLanguage } for Agent and headful Tasks.
Execution Operations
execution_list: Retrieve a summary of past task execution logs and statuses.
Schedule Operations
schedule_list: List all tasks with configured schedules.
schedule_get_all_status: Retrieve overall scheduler state and metadata.
schedule_get_status: Get active schedule details and next run time for a specific taskId.
schedule_set: Create or update a cron or frequency schedule on a task.
schedule_delete: Disable and remove a task schedule.
schedule_describe: Validate and preview a schedule configuration without applying it.
Rich Input Diagnostics & Self-Correction
If an invalid parameter payload is supplied to create_task, the server returns structured Zod diagnostic output (isError: true). This allows connected LLMs to analyze schema errors and attempt immediate self-correction.
Example response:
text
Schema Validation Failed!
Detailed breakdown of validation errors:
- At Step Index 2 (action step #3), parameter "type" failed validation: Invalid enum value. Expected 'click' | 'type' | 'wait' ..., received 'clikc'
Local Development & Source Build
If you wish to modify the source code or run without Docker:
Prerequisites
Node.js v18+
npm v9+
Build & Run
bash
# Clone repository
git clone <a href="https://github.com/figranium/figranium-mcp.git" target="_blank">https://github.com/figranium/figranium-mcp.git</a>
cd figranium-mcp
# Install dependencies and compile TypeScript
npm install
npm run build
# Watch mode for active development
npm run watch
Testing with MCP Inspector
Inspect server tools and resources using the official MCP debugging suite: