CamMicGo SEO Agent
OfficialPlanned read-only OAuth integration with Google Search Console and Google Analytics 4 (GA4), intended to power SEO analysis and reporting tools; not yet enabled in the current technical preview.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
CamMicGo SEO MCP
Your Google data, your LinkedIn profile and five scientific sources, inside your AI assistant.
Free · Open source (MIT) · Remote MCP for Claude, ChatGPT and other clients · Local MCP for Windows, macOS and Linux
Website · Connect your assistant · Your account · Privacy · CamMicGo
What it is
CamMicGo SEO MCP is a Model Context Protocol server. It lets your AI assistant work with your own accounts: Search Console, Google Analytics 4, YouTube and YouTube Analytics, Google Ads, Drive, Gmail, Calendar, LinkedIn publishing, and five scientific sources. Ask in plain language, for example "Which queries lost clicks this month?", "Where do my YouTube viewers come from?" or "Post this on my LinkedIn", and the assistant calls the right tool.
Read-only by default. Write permissions are optional boxes that you tick yourself.
Nothing is published, spent or trashed without your explicit yes. The assistant always shows the exact preview first.
Your own accounts, kept separate. Google calls use your own Google Cloud project. LinkedIn connects in one click with the shared CamMicGo app, or with your own LinkedIn app. Each connection only acts for its owner, and secrets are encrypted on the server and never shown to the assistant.
The website and every guide are available in 11 languages: English, French, Spanish, German, Portuguese, Italian, Russian, Chinese, Japanese, Korean and Arabic.
Related MCP server: Google Search Console MCP Server
Services
Service | What your assistant can do | Where | |
Search Console | Queries, pages, countries and devices for web, image, video, news, Discover and Google News, with regex filters and up to 25,000 rows. It can also show what changed between two periods, inspect URLs (index status, canonical, last crawl) and check sitemaps. | Remote + local | |
Google Analytics 4 | Any dimensions and metrics, with filters, sorting and comparison with the previous period, plus realtime active users | Remote + local | |
YouTube Data API | Search, channels, videos, playlists and comments. Timestamped transcripts come through the CamMicGo apps. Optional, remote only: upload a video to your channel after your yes. | Remote + local | |
YouTube Analytics | Your channels: views, watch time, subscribers, top videos, traffic sources, the YouTube search terms that brought viewers, countries, devices, age and gender, and retention curves | Remote | |
Posts on your own profile: text with an image, a video or a link. Connect in one click with the CamMicGo app, or bring your own LinkedIn app. | Remote | ||
Google Ads | Accounts and performance reports. Campaigns are created paused, with a fixed total budget, after your confirmation. | Remote | |
Google Drive | List, search and read Docs, Sheets, Slides, PDF and text files. Optional: create folders and files, and move to the trash after your yes (never permanent deletion). | Remote | |
Gmail | Search and read your emails, read-only | Remote | |
Google Calendar | Calendars and events, read-only | Remote + local | |
OpenAlex | Open catalog of works, authors, institutions and citations; a researcher's complete list with BibTeX, RIS, CSV and Markdown exports | Remote + local | |
Semantic Scholar | AI-powered academic search, citations and references | Remote + local | |
arXiv | Preprints in physics, mathematics, computer science, statistics and more, with open full text | Remote + local | |
PubMed | Biomedical and life-science literature, with abstracts and links to free full text | Remote + local | |
HAL | French open archive: articles, theses and preprints, often with full text | Remote + local |
Other Google services:
Docs, Sheets and Slides are readable through the Drive tools.
Tasks, Contacts, Classroom, Chat and Apps Script are available as OAuth permissions only, with no dedicated tools yet.
Get started: step-by-step guides
Every setup has a complete illustrated guide on the website.
You want to… | Guide |
Connect Claude, ChatGPT or another remote MCP client | |
Create your own Google Cloud project (OAuth client, APIs to enable) | |
Run the MCP on your own computer | |
Get YouTube transcripts with the remote MCP | |
Publish on your LinkedIn profile | |
Raise the scientific sources' limits with free keys |
Remote MCP in four steps
In your assistant, add the custom connector
https://seo.cammicgo.com/api/mcp(Streamable HTTP with OAuth).Sign in to CamMicGo with your email and authorize the assistant.
On your account, save your Google Cloud OAuth client: Web application, with the redirect URI
https://seo.cammicgo.com/api/auth/google/callback. Tick the APIs you want, then click Connect Google.Ask: "List my Search Console sites and my GA4 properties."
YouTube blocks cloud servers, so the remote MCP fetches transcripts through a device you pair: the Android app or the desktop relay for Windows, macOS and Linux. Ask your assistant for a pairing code. The local MCP doesn't need a paired device.
Local MCP in short
Requires Node.js 22+ and Git.
git clone https://github.com/CamMicGo/cammicgo-seo-agent.git
cd cammicgo-seo-agent
npm install
npm run install:local # guided: Google Desktop OAuth client, sign-in, agent registration
npm run local:doctor # checks credentials and tokensOAuth client: the local MCP uses a Desktop app OAuth client from your own Google Cloud project. Tokens stay encrypted on your computer.
Register it in your assistant:
npm run agent:setup -- claude(orgemini,cursor) adds the stdio server to Claude Desktop, Gemini CLI or Cursor.More help: full guide on the website, with troubleshooting in docs/LOCAL-MCP-INSTALL.md.
cammicgo: terminal and local MCP for NotebookLM
npm link # once, in the cloned folder: adds the "cammicgo" command
cammicgo login # sign in to NotebookLM in a dedicated Chrome window
cammicgo setup vscode # or claude, claude-code, cursor, windsurf, gemini, all
cammicgo notebook listThe full NotebookLM toolset of the Android app (notebooks, sources, Studio, chat, notes, research, collections, sharing, downloads), YouTube transcripts into notebooks, from the terminal or any MCP client, without the phone or the CamMicGo server. See docs/CAMMICGO-CLI.md.
LinkedIn: two ways to connect
Simple (one minute): on your account, click Connect LinkedIn and allow with your own LinkedIn account. You don't need a LinkedIn Page or a developer app.
Advanced, with your own LinkedIn app: create a developer app (LinkedIn requires a Page for it) and add the Share on LinkedIn and Sign In with LinkedIn using OpenID Connect products. Register the redirect URL
https://seo.cammicgo.com/api/auth/linkedin/callback, then save the app's keys on your account. CamMicGo then uses your app instead of the shared one. Illustrated guide: seo.cammicgo.com/setup/linkedin.Who can post where: each connection only lets the person who authorized it post on their own profile. The owner of the shared app cannot post on your profile, and nobody can post on a company Page through CamMicGo.
Local MCP: LinkedIn publishing is part of the remote MCP, because after sign-in LinkedIn sends you back to a CamMicGo web address. Add the remote connector next to your local one to publish on LinkedIn.
Reuse the style of your previous posts: LinkedIn doesn't let apps read your past posts. Paste one or more of them into the conversation and ask for a new one in the same format. For your whole history, use LinkedIn's Get a copy of your data (Settings & Privacy › Data privacy): its
Shares.csvfile lists all your posts. Attach it to the conversation or put it in your Google Drive.Self-hosting: set
LINKEDIN_CLIENT_IDandLINKEDIN_CLIENT_SECRETto offer a shared app. Otherwise, an administrator can share the app saved in their own account (account page, LinkedIn section).
1. Advanced: your LinkedIn app, Auth tab | 2. Advanced: your CamMicGo account, keys pasted | 3. After Connect LinkedIn |
Full walkthrough: seo.cammicgo.com/setup/linkedin
Tools
Remote MCP: https://seo.cammicgo.com/api/mcp
Area | Tools |
Account |
|
Search Console |
|
Google Analytics 4 |
|
YouTube |
|
YouTube Analytics |
|
Transcripts (paired device) |
|
| |
Google Ads |
|
Google Drive |
|
Gmail |
|
Google Calendar |
|
Scientific sources |
|
Google API catalog |
|
✎ marks a tool that writes something. These tools always work in two steps: an exact preview first, then your explicit yes.
Local MCP (stdio, read-only)
The local server has these tools:
Account and properties:
service_info,find_google_propertiesSearch Console:
list_search_sites,search_performance,seo_keyword_opportunitiesGoogle Analytics 4:
list_ga4_properties,ga4_top_pages,ga4_countriesYouTube:
youtube_my_channels,youtube_my_videos,youtube_video_metrics,youtube_get_transcript(the local server fetches transcripts itself)Google Calendar:
calendar_list,calendar_upcoming_eventsScientific sources: the same nine
science_*tools as the remote serverNotebookLM (after
cammicgo login): the same 51 NotebookLM tools as the remote server, executed directly on the computer — see docs/CAMMICGO-CLI.md
Bing Webmaster Tools
Each user saves their own Bing Webmaster Tools API key at /account (Bing Webmaster Tools › Settings › API access › API Key). The key is encrypted with AES-256-GCM in cmg_bing_keys, shown back only as a hint, and never returned to the AI assistant.
Tools: bing_sites, bing_search_performance, bing_queries, bing_pages, bing_crawl, bing_sitemaps, bing_url_info, bing_inbound_links, bing_keyword_research (read-only) and bing_submit_urls, bing_submit_sitemap (URLs of the user's own site only, within Bing's daily quota).
Safety: nothing happens without your yes
Two steps for every write. LinkedIn posts, YouTube uploads, Drive trash and Google Ads campaigns all work the same way. The first call returns the exact preview and a confirmation token, bound to your account and to the exact content (including the bytes of an attached file). The token can be used from 10 seconds to 15 minutes after the preview. Only your explicit yes, in a new message, carries out the action. One confirmation publishes once, even if the assistant retries.
Google Ads: campaigns are always created paused, with a total budget that is never exceeded. You enable them yourself in Google Ads.
Google Drive: files are moved to the trash only, never deleted permanently, and
drive_restore_fileundoes it.Secrets stay on the server. Google and LinkedIn client secrets, API keys and tokens are encrypted on the server (AES-256-GCM). They are never returned to the browser or to the assistant.
No access to arbitrary files. The assistant cannot read files on the server or on your computer. Files come only from your Drive, a public https link or the conversation.
Quotas
Limit | Value |
CamMicGo allowance per account | 100 counted tool calls per day and 10 per minute; status tools are free |
Google APIs | The quotas of your own Google Cloud project. For example, the YouTube Data API allows 10,000 units per day by default, and video uploads have their own bucket. |
150 requests per member per day. Access lasts 60 days, then you reconnect with one click. | |
Scientific sources | They work without keys. Free personal keys for OpenAlex, Semantic Scholar and NCBI give you higher limits (guide). |
Privacy
See the privacy page.
What is stored: CamMicGo keeps only what the service needs: your encrypted credentials and tokens, and usage counters.
Disconnect at any time: from your account, from your Google account permissions, or from LinkedIn's permitted services.
Development
npm install
cp .env.example .env.local # fill in your own values, never commit them
npm run dev # http://localhost:3000
npm test # unit tests
npm run lint
npm run build
npm run test:mcp:local # local MCP protocol smoke test (no Google call)Stack: Next.js 15 (App Router), mcp-handler, zod, Supabase (sign-in and encrypted storage) and Vercel. Pushes to main deploy to production.
Path | Contents |
| Remote MCP server and its tools |
| Local stdio MCP server |
| Unit-tested helpers (Search Console, GA4, YouTube Analytics, Drive, Google Ads, LinkedIn, science…) |
| The step-by-step guides of the website |
| Desktop transcript relay (Windows, macOS, Linux) |
| Android transcript app |
| Database schema (all private tables, service role only) |
Main environment variables:
Google and sessions:
APP_BASE_URL,GOOGLE_CLIENT_ID,GOOGLE_CLIENT_SECRET,SESSION_ENCRYPTION_KEYSupabase:
SUPABASE_URL,SUPABASE_SECRET_KEY,NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY,ENABLE_SUPABASE_MCP_AUTHOptional science keys:
OPENALEX_API_KEY,SEMANTIC_SCHOLAR_API_KEY,NCBI_API_KEYOptional shared LinkedIn app:
LINKEDIN_CLIENT_ID,LINKEDIN_CLIENT_SECRETAllowance overrides:
MCP_DAILY_LIMIT,MCP_MINUTE_LIMIT,MCP_MINUTE_TOTAL_LIMIT,MCP_GLOBAL_DAILY_LIMIT,MCP_ADMIN_DAILY_LIMIT
More documentation
License and notices
The original code is published under the MIT license. Third-party dependencies keep their own licenses. The country map uses react-svg-worldmap (MIT). Country photos come from Wikimedia Commons and are credited in the app (for example, Japan: SRP1998, CC BY-SA 4.0).
Google, YouTube, Google Ads, LinkedIn, OpenAlex, Semantic Scholar, arXiv, PubMed and HAL are trademarks of their respective owners. Their names and logos only identify the services this project connects to. CamMicGo is not affiliated with or endorsed by them.
Made by CamMicGo: free webcam, microphone, headphone and device tests.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only Google Search Console and Google Analytics for AI agents.
Google Search Console for AI assistants: traffic, rankings, indexing and page checks. Read-only.
SEO & marketing toolkit for AI agents: GA4, Search Console, AdSense, GTM, PageSpeed, Trends.
Google Search Console, Ads and AdSense analytics for AI clients. Hosted, read-only, 57 tools.
Related MCP Servers
- AlicenseBqualityCmaintenanceProvides AI agents with hands-on control of Google SEO and analytics tools including Search Console, GA4, Tag Manager, Indexing API, and PageSpeed Insights, with self-configuring OAuth2.3314 npmMIT
- AlicenseAqualityDmaintenanceConnects AI assistants to Google Search Console data for SEO analysis, including search analytics, URL inspection, sitemaps, indexing, and opportunity detection.17MIT
- AlicenseAqualityDmaintenanceConnects Google Search Console to AI assistants, enabling natural language analysis of SEO data. Provides read-only tools for properties, search analytics, URL inspection, and sitemaps.15MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to analyze Google Search Console SEO data through natural language, including search analytics, URL inspection, sitemap management, and property management.21MIT