Use the adspower-browser skill so the AI can operate AdsPower via the CLI without the MCP server. Add it in your editor as follows:
| Environment | How to add |
|---|---|
| Cursor | npx skills add AdsPower/adspower-browser |
| Claude Code | npx skills add AdsPower/adspower-browser |
| GPT / Codex | If your setup supports add-skill: npx skills add AdsPower/adspower-browser. Otherwise copy the skill from skills/adspower-browser/ into your agent’s skills directory (e.g. ~/.codex/skills/adspower-browser/). |
A Model Context Protocol server that AdsPower browser LocalAPI. This server enables LLMs to interact with AdsPower browser profiles using the v2 API, including creating, updating, deleting profiles, managing groups, and automating browser operations.
Talk to LLMs to create browser: Create an Android UA browser using Chrome 134
Talk to LLMs to create browser: Help me with random UA, random fingerprint, random cookie generation, create 3 browsers, use 134 cores, and open them
-
Node version 18 or greater
To use with Claude Desktop, add the server config:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript"]
}
}
}{
"mcpServers": {
"adspower-local-api": {
"command": "cmd",
"args": ["/c", "npx", "-y", "local-api-mcp-typescript"]
}
}
}The MCP server supports configuration through command-line arguments or environment variables.
The port parameter specifies the AdsPower Local API port. Default is 50325.
Priority order:
- Command-line argument
--port(highest priority) - Environment variable
PORT(medium priority) - Default value
50325(lowest priority)
Examples:
Using command-line argument:
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript", "--port", "50325"]
}
}
}Using environment variable:
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript"],
"env": {
"PORT": "50325"
}
}
}
}The API key is used for authentication with the AdsPower API. It will be sent as Authorization: Bearer <api-key> header in requests.
Priority order:
- Command-line argument
--api-key(highest priority) - Environment variable
API_KEY(medium priority) - No default value (if not provided, requests will not include the API key header)
Examples:
Using command-line argument:
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript", "--api-key", "your-api-key-here"]
}
}
}Using environment variable:
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript"],
"env": {
"API_KEY": "your-api-key-here"
}
}
}
}You can use both parameters together. Command-line arguments will override environment variables:
{
"mcpServers": {
"adspower-local-api": {
"command": "npx",
"args": ["-y", "local-api-mcp-typescript", "--port", "50326", "--api-key", "new-key"],
"env": {
"PORT": "50325",
"API_KEY": "old-key"
}
}
}
}In this example, the server will use port: 50326 and apiKey: new-key (command-line arguments override environment variables).
# clone
git clone https://github.com/AdsPower/adspower-browser.git
cd adspower-browser
# install (monorepo)
pnpm install
# build all packages
pnpm run buildFor local MCP development, point Claude Desktop to the MCP package:
"mcpServers": {
"adspower-local-api": {
"command": "node",
"args": ["<Replace Your Project Path>/adspower-browser/packages/local-api-mcp/build/index.js"]
}
}


