Set up the agency
Provider keys, branding, the team, API keys, connected apps and the plan — the agency-wide setup an admin credential can do.
Everything here is agency-wide and needs an admin credential (see Start here). Do it once, before onboarding clients: most paid tools are refused until the provider they use is connected.
- See what is connected
get_vendor_connectionslists the data providers the agency has connected and which are working. Nothing secret is returned — a provider, a hint of the key, when it was last checked and the last error. - Connect the data providers
save_vendor_credential {provider, secret, login?}stores a provider's key and checks it straight away; the response says whether the check passed. Providers:dataforseo(search volume, results pages, backlinks and most research),serpapi,googleads(keyword volume from the agency's own Ads account, with thegoogleAdsobject),bingwebmaster,cruxandpagespeed(Core Web Vitals and lab runs),serpproxy(the agency's own proxy pool for results pages and AI answers), the AI assistants for AI visibility (anthropic,chatgpt,gemini,perplexity,grok,meta-ai,deepseek),reportwebhookandtelegram(delivery).remove_vendor_credential {provider}disconnects one. - Brand the reports
get_brandingreads,set_branding {name, logoUrl, primaryColor}sets what clients see on reports and portal links. Until it is set, reports go out unbranded. - Add the team
list_team_membersshows who is in the agency, their roles and any client limits.add_team_member {email, role, clientIds?}adds a person who already has a Seolyticize account, asadmin,manager,analystorclient_viewer, optionally limited to some clients.remove_team_member {membershipId}removes one; the last owner cannot be removed. - Give integrations their own keys
create_api_key {name, clientId?, role?}mints a key — shown once, in that response, never again. Pin it to a client where the integration only serves one.list_api_keysandrevoke_api_key {keyId}manage them;list_api_activityshows which key called what. Apps that signed in over MCP are listed bylist_connected_appsand removed withdisconnect_app {grantId}. - Check the plan
get_billingreturns the plan, its limits (clients, tracked keywords) and status. Upgrading takes a person — see What needs a person.