https://github.com/presidio-oss/factifai-mcp-server
MCP Server for Factifai
https://github.com/presidio-oss/factifai-mcp-server
ai automation automation-testing compute-use factifai hai llm mcp presidio puppeteer testing
Last synced: about 1 month ago
JSON representation
MCP Server for Factifai
- Host: GitHub
- URL: https://github.com/presidio-oss/factifai-mcp-server
- Owner: presidio-oss
- License: other
- Created: 2025-06-30T05:47:08.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-07-31T05:37:43.000Z (2 months ago)
- Last Synced: 2025-08-08T21:12:32.067Z (2 months ago)
- Topics: ai, automation, automation-testing, compute-use, factifai, hai, llm, mcp, presidio, puppeteer, testing
- Language: JavaScript
- Homepage: https://npmjs.org/@presidio-dev/factifai-mcp-server
- Size: 407 KB
- Stars: 1
- Watchers: 0
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Factifai MCP Server
[](https://opensource.org/licenses/MIT)
[](https://www.npmjs.com/package/@presidio-dev/factifai-mcp-server)
[](https://insiders.vscode.dev/redirect?url=vscode:mcp/install?{"name":"factifai","command":"npx","args":["-y","@presidio-dev/factifai-mcp-server@latest"],"env":{"MODEL_PROVIDER":"bedrock|openai","OPENAI_API_KEY":"","AWS_ACCESS_KEY_ID":"","AWS_SECRET_ACCESS_KEY":"","AWS_DEFAULT_REGION":""}})
[](https://insiders.vscode.dev/redirect?url=vscode-insiders:mcp/install?{"name":"factifai","command":"npx","args":["-y","@presidio-dev/factifai-mcp-server@latest"],"env":{"MODEL_PROVIDER":"bedrock|openai","OPENAI_API_KEY":"","AWS_ACCESS_KEY_ID":"","AWS_SECRET_ACCESS_KEY":"","AWS_DEFAULT_REGION":""}})
[](https://cursor.com/install-mcp?name=factifai&config=eyJuYW1lIjoiZmFjdGlmYWkiLCJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBwcmVzaWRpby1kZXYvZmFjdGlmYWktbWNwLXNlcnZlckBsYXRlc3QiXSwiZW52Ijp7Ik1PREVMX1BST1ZJREVSIjoiYmVkcm9ja3xvcGVuYWkifX0=)
![]()
![]()
![]()
![]()
![]()
![]()
A Model Context Protocol (MCP) server for [Factifai](https://github.com/presidio-oss/factif-ai) integration with any MCP-compatible AI tool. This server is designed to be tool-agnostic, meaning it can be used with any tool that supports the MCP protocol. This server currently exposes tools to create tests asynchronously and get the result of the test.
## Table of Contents
- [Factifai MCP Server](#factifai-mcp-server)
- [Table of Contents](#table-of-contents)
- [Requirements](#requirements)
- [Installation](#installation)
- [Installation Note](#installation-note)
- [Pre-Installation Tip](#pre-installation-tip)
- [Configuration](#configuration)
- [Environment Variables](#environment-variables)
- [Model Provider Configuration Examples](#model-provider-configuration-examples)
- [Bedrock Configuration Example](#bedrock-configuration-example)
- [OpenAI Configuration Example](#openai-configuration-example)
- [Factifai MCP integration with popular IDE and extension](#factifai-mcp-integration-with-popular-ide-and-extension)
- [Available Tools](#available-tools)
- [Contributing](#contributing)
- [Security](#security)
- [License](#license)## Requirements
- Node.js >= 16.0.0
- Hai Build, Cursor, Windsurf, Claude Desktop or any MCP Client## Installation
```bash
# Latest version
npx --yes @presidio-dev/factifai-mcp-server@latest# Specific version
npx --yes @presidio-dev/factifai-mcp-server@1.2.3
```We recommend `npx` to install the server, but you can use any node package manager of your preference such as `yarn`, `pnpm`, `bun`, etc.
### Installation Note
⚠️ **Important**: The first time you install Factifai MCP Server, it will automatically download and install browser dependencies using Playwright. This process may take several minutes depending on your internet connection and system specifications.
The installation includes:
- Downloading browser binaries (Chromium, Firefox, WebKit)
- Installing browser dependencies
- Setting up the necessary environmentThis happens only once, and subsequent runs will be much faster as the browsers are already installed.
### Pre-Installation Tip
⚠️ **Recommended for First-Time Installation**: Many MCP clients have strict timeout limits for server startup. The browser installation process during first-time setup may exceed these timeouts, causing the installation to fail or appear non-responsive.
To avoid timeout issues, we strongly recommend pre-installing Playwright browsers manually:
```bash
# Step 1: Install Playwright browsers manually before installing the MCP server
npx playwright install --with-deps# Step 2: Then install the MCP server (will be much faster and avoid timeouts)
npx --yes @presidio-dev/factifai-mcp-server@latest
```This pre-installation step:
1. Ensures browsers are downloaded without MCP client timeout constraints
2. Significantly speeds up the MCP server's first-time installation
3. Prevents installation failures due to timeout issues in your IDE or MCP client## Configuration
with [`npx`](https://docs.npmjs.com/cli/v8/commands/npx) with latest version:
```json
{
"factifai": {
"command": "npx",
"args": ["--yes", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
},
"disabled": false,
"autoApprove": []
}
}
```with [`npx`](https://docs.npmjs.com/cli/v8/commands/npx) with specific version:
```json
{
"factifai": {
"command": "npx",
"args": ["--yes", "@presidio-dev/factifai-mcp-server@1.2.3"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
},
"disabled": false,
"autoApprove": []
}
}
```### Environment Variables
| Variable Name | Description |
| ----------------------- | -------------------------------------------------------- |
| `MODEL_PROVIDER` | The model provider to use. (bedrock or openai) |
| `OPENAI_API_KEY` | The API key for the OpenAI model provider |
| `AWS_ACCESS_KEY_ID` | The AWS access key ID for the Bedrock model provider |
| `AWS_SECRET_ACCESS_KEY` | The AWS secret access key for the Bedrock model provider |
| `AWS_DEFAULT_REGION` | The AWS default region for the Bedrock model provider |### Model Provider Configuration Examples
#### Bedrock Configuration Example
```json
{
"factifai": {
"command": "npx",
"args": ["--yes", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
},
"disabled": false,
"autoApprove": []
}
}
```#### OpenAI Configuration Example
```json
{
"factifai": {
"command": "npx",
"args": ["--yes", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "openai",
"OPENAI_API_KEY": ""
},
"disabled": false,
"autoApprove": []
}
}
```## Factifai MCP integration with popular IDE and extension
See the setup instructions for each
Install in Hai Build
Add the following to your `hai_mcp_settings.json` file. To open this file from Hai Build, click the "MCP Servers" icon, select the "Installed" tab, and then click "Configure MCP Servers".
See the [Hai Build MCP documentation](https://github.com/presidio-oss/cline-based-code-generator/blob/main/docs/mcp/configuring-mcp-servers.mdx) for more info.
```json
{
"mcpServers": {
"factifai": {
"command": "npx",
"args": ["-y", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
```Install in Amazon Q Developer
Add the following to your Amazon Q Developer configuration file. See [MCP configuration for Q Developer in the IDE](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/mcp-ide.html#mcp-ide-configuration-add-server) for more details.
The configuration file can be stored globally at `~/.aws/amazonq/mcp.json` to be available across all your projects, or locally within your project at `.amazonq/mcp.json`.
```json
{
"mcpServers": {
"factifai": {
"command": "npx",
"args": ["-y", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
```Install in VS Code (Copilot)
[
](https://insiders.vscode.dev/redirect?url=vscode:mcp/install?{"name":"factifai","command":"npx","args":["-y","@presidio-dev/factifai-mcp-server@latest"],"env":{"MODEL_PROVIDER":"bedrock|openai","OPENAI_API_KEY":"","AWS_ACCESS_KEY_ID":"","AWS_SECRET_ACCESS_KEY":"","AWS_DEFAULT_REGION":""}})
[](https://insiders.vscode.dev/redirect?url=vscode-insiders:mcp/install?{"name":"factifai","command":"npx","args":["-y","@presidio-dev/factifai-mcp-server@latest"],"env":{"MODEL_PROVIDER":"bedrock|openai","OPENAI_API_KEY":"","AWS_ACCESS_KEY_ID":"","AWS_SECRET_ACCESS_KEY":"","AWS_DEFAULT_REGION":""}})
First, enable MCP support in VS Code by opening Settings (`Ctrl+,`), searching for `mcp.enabled`, and checking the box.
Then, add the following configuration to your user or workspace `settings.json` file. See the [VS Code MCP documentation](https://code.visualstudio.com/docs/copilot/chat/mcp-servers) for more info.
```json
"mcp": {
"servers": {
"factifai": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
```Install in Cursor
The easiest way to install is with the one-click installation button below.
[
](https://cursor.com/install-mcp?name=factifai&config=eyJuYW1lIjoiZmFjdGlmYWkiLCJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBwcmVzaWRpby1kZXYvZmFjdGlmYWktbWNwLXNlcnZlckBsYXRlc3QiXSwiZW52Ijp7Ik1PREVMX1BST1ZJREVSIjoiYmVkcm9ja3xvcGVuYWkifX0=)
Alternatively, you can manually configure the server by adding the following to your `mcp.json` file. This file can be located globally at `~/.cursor/mcp.json` or within a specific project at `.cursor/mcp.json`. See the [Cursor MCP documentation](https://docs.cursor.com/context/model-context-protocol) for more information.
```json
{
"mcpServers": {
"factifai": {
"command": "npx",
"args": ["--yes", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
```Install in Windsurf
Add the following to your `~/.codeium/windsurf/mcp_config.json` file. See the [Windsurf MCP documentation](https://docs.windsurf.com/windsurf/cascade/mcp) for more information.
```json
{
"mcpServers": {
"factifai": {
"command": "npx",
"args": ["-y", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
```Install in Zed
You can add the Factifai MCP server in Zed by editing your `settings.json` file (accessible via the `zed: settings` action) or by using the Agent Panel's configuration UI (`agent: open configuration`). See the [Zed MCP documentation](https://zed.dev/docs/ai/mcp#add-your-own-mcp-server) for more information.
Add the following to your `settings.json`:
```json
{
"context_servers": {
"factifai": {
"command": {
"path": "npx",
"args": ["-y", "@presidio-dev/factifai-mcp-server@latest"],
"env": {
"MODEL_PROVIDER": "bedrock|openai",
"OPENAI_API_KEY": "",
"AWS_ACCESS_KEY_ID": "",
"AWS_SECRET_ACCESS_KEY": "",
"AWS_DEFAULT_REGION": ""
}
}
}
}
}
```### Available Tools
| Tool Name | Description |
| -------------------------- | -------------------------- |
| `testWithFactifai` | Start a test with Factifai |
| `getFactifaiSessionResult` | Get test result |
| `listFactifaiSessions` | List tests |## Contributing
We welcome contributions to the Factifai MCP Server! Please see our [Contributing Guide](CONTRIBUTING.md) for more information on how to get started.
## Security
For information about our security policy and how to report security vulnerabilities, please see our [Security Policy](SECURITY.md).
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.