Manages Facebook and Instagram ad campaigns, audiences, creatives, insights and catalogs through the Meta Marketing API.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add meta-ads-mikusnuz --env META_ADS_ACCESS_TOKEN='<META_ADS_ACCESS_TOKEN>' --env META_APP_SECRET='<META_APP_SECRET>' --env META_AD_ACCOUNT_ID='<META_AD_ACCOUNT_ID>' --env META_APP_ID='<META_APP_ID>' --env META_BUSINESS_ID='<META_BUSINESS_ID>' --env META_PIXEL_ID='<META_PIXEL_ID>' -- npx -y @mikusnuz/meta-ads-mcp~/.codex/config.toml
[mcp_servers.meta-ads-mikusnuz]
command = "npx"
args = ["-y", "@mikusnuz/meta-ads-mcp"]
env = { META_ADS_ACCESS_TOKEN = "<META_ADS_ACCESS_TOKEN>", META_APP_SECRET = "<META_APP_SECRET>", META_AD_ACCOUNT_ID = "<META_AD_ACCOUNT_ID>", META_APP_ID = "<META_APP_ID>", META_BUSINESS_ID = "<META_BUSINESS_ID>", META_PIXEL_ID = "<META_PIXEL_ID>" }
# codex mcp add meta-ads-mikusnuz --env META_ADS_ACCESS_TOKEN='<META_ADS_ACCESS_TOKEN>' --env META_APP_SECRET='<META_APP_SECRET>' --env META_AD_ACCOUNT_ID='<META_AD_ACCOUNT_ID>' --env META_APP_ID='<META_APP_ID>' --env META_BUSINESS_ID='<META_BUSINESS_ID>' --env META_PIXEL_ID='<META_PIXEL_ID>' -- npx -y @mikusnuz/meta-ads-mcp~/.cursor/mcp.json
{
"mcpServers": {
"meta-ads-mikusnuz": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-ads-mcp"
],
"env": {
"META_ADS_ACCESS_TOKEN": "<META_ADS_ACCESS_TOKEN>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_BUSINESS_ID": "<META_BUSINESS_ID>",
"META_PIXEL_ID": "<META_PIXEL_ID>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"meta-ads-mikusnuz": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-ads-mcp"
],
"env": {
"META_ADS_ACCESS_TOKEN": "<META_ADS_ACCESS_TOKEN>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_BUSINESS_ID": "<META_BUSINESS_ID>",
"META_PIXEL_ID": "<META_PIXEL_ID>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"meta-ads-mikusnuz": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-ads-mcp"
],
"env": {
"META_ADS_ACCESS_TOKEN": "<META_ADS_ACCESS_TOKEN>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_BUSINESS_ID": "<META_BUSINESS_ID>",
"META_PIXEL_ID": "<META_PIXEL_ID>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"meta-ads-mikusnuz": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-ads-mcp"
],
"env": {
"META_ADS_ACCESS_TOKEN": "<META_ADS_ACCESS_TOKEN>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_BUSINESS_ID": "<META_BUSINESS_ID>",
"META_PIXEL_ID": "<META_PIXEL_ID>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"meta-ads-mikusnuz": {
"command": "npx",
"args": [
"-y",
"@mikusnuz/meta-ads-mcp"
],
"env": {
"META_ADS_ACCESS_TOKEN": "<META_ADS_ACCESS_TOKEN>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_BUSINESS_ID": "<META_BUSINESS_ID>",
"META_PIXEL_ID": "<META_PIXEL_ID>"
}
}
}
}Environment variables
META_ADS_ACCESS_TOKENMETA_APP_SECRETMETA_AD_ACCOUNT_IDMETA_APP_IDMETA_BUSINESS_IDMETA_PIXEL_ID
Replace the placeholders with your own credentials and keep them out of version control.