Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Generated by https://smithery.ai. See: https://smithery.ai/docs/config#dockerfile
FROM node:lts-alpine

# Set working directory
WORKDIR /app

# Copy package files and install dependencies
COPY package*.json ./
RUN npm install --ignore-scripts

# Copy the remaining application code
COPY . .

# Build the TypeScript code
RUN npm run build

# Expose port if needed (not specified for MCP)

# Default command to run the MCP server
CMD [ "node", "dist/index.js" ]
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# BrowserCat MCP Server

[![smithery badge](https://smithery.ai/badge/@browsercat/browsercat-mcp-server)](https://smithery.ai/server/@browsercat/browsercat-mcp-server)

A Model Context Protocol server that provides browser automation capabilities using BrowserCat's cloud browser service. This server enables LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment without needing to install browsers locally.

## Components
Expand Down
25 changes: 25 additions & 0 deletions smithery.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Smithery configuration file: https://smithery.ai/docs/config#smitheryyaml

startCommand:
type: stdio
configSchema:
# JSON Schema defining the configuration options for the MCP.
type: object
required:
- browsercatApiKey
properties:
browsercatApiKey:
type: string
description: Your BrowserCat API key to access the BrowserCat cloud browser service.
commandFunction:
# A JS function that produces the CLI command based on the given config to start the MCP on stdio.
|-
(config) => ({
command: 'node',
args: ['dist/index.js'],
env: {
BROWSERCAT_API_KEY: config.browsercatApiKey
}
})
exampleConfig:
browsercatApiKey: your-api-key-here