Skip to main content
Glama
abdulhadi-98

Social MCP

by abdulhadi-98

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
HOSTNoOptional HTTP bind address.0.0.0.0
PORTNoOptional HTTP bind port.8000
MCP_API_KEYNoSecret clients must send to the remote HTTP server. Required for HTTP transport mode.
ALLOW_WRITESNoOptional. Set to true to allow confirmed write actions.false
AUDIT_LOG_PATHNoOptional path where write actions are logged.audit_log.jsonl
GOOGLE_CLIENT_IDNoGoogle OAuth client ID from Google Cloud Console. Required for Google Ads and GA4.
MAX_DAILY_BUDGETNoOptional maximum daily budget an agent can set.500
META_API_VERSIONNoOptional Meta Graph API version.v24.0
META_ACCESS_TOKENNoMeta system user access token. Required for Meta Ads.
GOOGLE_CLIENT_SECRETNoGoogle OAuth client secret from Google Cloud Console. Required for Google Ads and GA4.
GOOGLE_REFRESH_TOKENNoGoogle OAuth refresh token generated by scripts/get_google_refresh_token.py. Required for Google Ads and GA4.
ALLOWED_META_AD_ACCOUNTSNoOptional comma-separated Meta ad account IDs, e.g. act_123,act_456.
GOOGLE_ADS_DEVELOPER_TOKENNoGoogle Ads API developer token from the Google Ads API Center. Required for Google Ads.
ALLOWED_GOOGLE_ADS_CUSTOMERSNoOptional comma-separated Google Ads customer IDs the server may touch.
GOOGLE_ADS_LOGIN_CUSTOMER_IDNoOptional Google Ads manager/MCC customer ID, digits only, when accessing accounts through a manager.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
google_ads_list_accountsC

List every Google Ads account the authenticated user can access, with name, currency and whether it is a manager (MCC).

google_ads_list_client_accountsC

List the client accounts under a manager (MCC) account.

google_ads_queryB

Run any read-only Google Ads Query Language (GAQL) query.

Example: SELECT campaign.id, campaign.name, metrics.clicks, metrics.cost_micros FROM campaign WHERE segments.date DURING LAST_7_DAYS Costs are in micros (divide by 1,000,000).

google_ads_campaign_performanceB

Campaign-level spend, clicks, impressions, conversions, CPA and ROAS for a date range.

date_range is a GAQL predefined range, e.g. TODAY, YESTERDAY, LAST_7_DAYS, LAST_30_DAYS, THIS_MONTH, LAST_MONTH.

google_ads_set_statusC

Pause or enable a campaign, ad group, ad or keyword.

entity_id: the campaign/ad group id; for ads and keywords use "<ad_group_id>~<ad_id or criterion_id>".

google_ads_set_campaign_budgetC

Change a campaign's daily budget (in the account currency, e.g. 50 = $50/day).

google_ads_set_ad_group_cpc_bidB

Set an ad group's max CPC bid (account currency). Only applies to manual CPC bidding.

google_ads_add_negative_keywordsC

Add campaign-level negative keywords (e.g. wasteful search terms found in a search-term report).

ga4_list_propertiesA

List every GA4 account and property the authenticated user can access.

ga4_run_reportB

Run a GA4 report.

metrics e.g. ["sessions", "totalUsers", "conversions", "purchaseRevenue"]; dimensions e.g. ["date", "sessionSourceMedium", "sessionCampaignName", "landingPage"]. Dates: YYYY-MM-DD, "today", "yesterday" or "NdaysAgo". dimension_filters: [{"field": "sessionSourceMedium", "value": "google / cpc", "match": "EXACT|CONTAINS|BEGINS_WITH"}] (ANDed). order_by_metric: sort descending by this metric.

ga4_realtime_reportB

Users active in the last 30 minutes. Defaults to activeUsers by country.

ga4_get_metadataA

List the dimension and metric API names available for a property (optionally filtered by a search term).

ga4_create_key_eventC

Mark an event (e.g. "generate_lead", "purchase") as a key event (conversion) in GA4.

ga4_create_custom_dimensionB

Register an event or user parameter as a custom dimension so it can be used in reports.

meta_list_ad_accountsB

List every Meta ad account the token can access (including via Business Managers).

meta_list_entitiesA

List campaigns, ad sets or ads in an ad account with their status and budgets.

effective_status filter e.g. ["ACTIVE"] or ["ACTIVE","PAUSED"]. Budgets are returned in minor units (cents).

meta_get_insightsB

Performance insights for an ad account (act_...), campaign, ad set or ad.

date_preset: today, yesterday, last_7d, last_14d, last_30d, this_month, last_month, maximum (ignored if since/until given). breakdowns e.g. ["age","gender"], ["publisher_platform"], ["country"]. time_increment "1" for daily rows.

meta_set_statusC

Pause or activate a Meta campaign, ad set or ad by id.

meta_set_budgetC

Change the budget of a campaign (CBO) or ad set, in the account currency's major units (e.g. 50 = $50).

meta_update_entityB

Update allowed fields (name, status, bid_amount, start_time, end_time, spend_cap, budgets) on a campaign, ad set or ad.

Budget, bid and spend_cap values must be in minor units (cents), as the Marketing API expects. Prefer meta_set_budget for budgets.

meta_create_campaignA

Create a new campaign. It is always created PAUSED so nothing spends until you activate it.

daily_budget (major units) enables campaign budget optimization; omit it to set budgets on ad sets instead. special_ad_categories: [] or e.g. ["HOUSING"], ["EMPLOYMENT"], ["FINANCIAL_PRODUCTS_SERVICES"].

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 21 tools

Disambiguation4/5

Most tools are clearly separated by platform and resource/action, with distinct prefixes like ga4_, google_ads_, and meta_. Some boundaries blur between generic and specialized tools, especially google_ads_query vs google_ads_campaign_performance, and meta_update_entity vs meta_set_status/meta_set_budget.

Naming Consistency4/5

Names consistently use snake_case with platform prefixes (ga4_, google_ads_, meta_), making the set easy to scan. Minor deviations exist, such as google_ads_campaign_performance being noun-phrase rather than verb_noun, and meta_list_entities being somewhat generic.

Tool Count4/5

21 tools is slightly high in isolation, but reasonable for a server spanning three platforms: GA4, Google Ads, and Meta Ads. Each platform has a focused subset, though the set is near the upper end of what an agent can comfortably navigate.

Completeness3/5

The surface covers reporting, status changes, budgets, and some creation operations, but lifecycle coverage is uneven. Google Ads lacks creation tools for campaigns/ad groups/ads/keywords, and Meta only supports creating campaigns rather than ad sets or ads, creating notable gaps for full ad management.

Maintenance

ActivityMaintained
ResponsivenessNo issues