GEO content engine MCP server: 56 tools across content, publishing, search-inclusion and AI-monitoring domains; stdio + Streamable HTTP transports, Bearer-token auth (the MCP bridge layer of @tengence/geo-sdk)
Inferred from the transports this listing declares (stdio). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.
workspace_useBind the user workspace directory (call this first): all site config, credentials and output files live under it. Ask the user which directory to use if it was not mentioned; `~` is supported and expanded here.Bind the user workspace directory (call this first): all site config, credentials and output files live under it. Ask the user which directory to use if it was not mentioned; `~` is supported and expanded here.
No input schema was published for this tool.
site_initScaffold a site inside the bound workspace: <workspace>/<key>/{config,data/inbox,data/reports,.env} (idempotent, never overwrites existing files)Scaffold a site inside the bound workspace: <workspace>/<key>/{config,data/inbox,data/reports,.env} (idempotent, never overwrites existing files)
No input schema was published for this tool.
site_listList the sites inside the bound user workspace (site key, domain, app_id, storage driver). Returns a hint instead when no workspace is bound yet.List the sites inside the bound user workspace (site key, domain, app_id, storage driver). Returns a hint instead when no workspace is bound yet.
No input schema was published for this tool.
site_statusSite status: config paths, .env readiness, DB driver and SQLite init stateSite status: config paths, .env readiness, DB driver and SQLite init state
No input schema was published for this tool.
article_listList articles (articles table), with status/limit filtersList articles (articles table), with status/limit filters
No input schema was published for this tool.
article_ingestContent ingest (single entry): body md + research brief → articles table (CLI canonical orchestration)Content ingest (single entry): body md + research brief → articles table (CLI canonical orchestration)
No input schema was published for this tool.
article_exportExport an article md + brief from the DB to the site data/inbox (for rewriting)Export an article md + brief from the DB to the site data/inbox (for rewriting)
No input schema was published for this tool.
check_articlePublish gate: enforces the editorial rules codified in the "article-writing-standards" standard (citation dual-channel, word count by T1–T7 type, banned words, the three GEO blocks — Summary / Key Takeaways / FAQ / Data Sources — and the research-brief hard check). Read that standard via standards_…Publish gate: enforces the editorial rules codified in the "article-writing-standards" standard (citation dual-channel, word count by T1–T7 type, banned words, the three GEO blocks — Summary / Key Takeaways / FAQ / Data Sources — and the research-brief hard check). Read that standard via standards_…
No input schema was published for this tool.
publish_draftPublish a draft (default draft → WP; can --status=publish directly, must pass the gate first)Publish a draft (default draft → WP; can --status=publish directly, must pass the gate first)
No input schema was published for this tool.
publish_from_dbPublish an article from the DB to WordPress (--force updates an existing article)Publish an article from the DB to WordPress (--force updates an existing article)
No input schema was published for this tool.
publish_update_articleBypass update of an existing article (title/content/status + sync SEO/GEO meta).Bypass update of an existing article (title/content/status + sync SEO/GEO meta).
No input schema was published for this tool.
publish_dailyRun the daily promotion task (promotes due drafts to publish by plan publish_order; default 1/day).Run the daily promotion task (promotes due drafts to publish by plan publish_order; default 1/day).
No input schema was published for this tool.
plan_listArticle plan table list (status/batch/category/node filters)Article plan table list (status/batch/category/node filters)
No input schema was published for this tool.
plan_importImport/update the plan table from the site plan directory (idempotent)Import/update the plan table from the site plan directory (idempotent)
No input schema was published for this tool.
plan_mark_statusUpdate a plan row status (todo/written/queued/published/archived)Update a plan row status (todo/written/queued/published/archived)
No input schema was published for this tool.
image_acquireAuto image pipeline (search → red-line filter → download → WebP crop → upload to WP media library)Auto image pipeline (search → red-line filter → download → WebP crop → upload to WP media library)
No input schema was published for this tool.
monitor_runRun GEO monitoring (one round of site prompts × models; results persisted)Run GEO monitoring (one round of site prompts × models; results persisted)
No input schema was published for this tool.
monitor_reportRead monitoring results (latest round or a given run_id)Read monitoring results (latest round or a given run_id)
No input schema was published for this tool.
db_initExplicitly initialize the database (sqlite idempotent table creation / mysql DDL; --drop rebuilds)Explicitly initialize the database (sqlite idempotent table creation / mysql DDL; --drop rebuilds)
No input schema was published for this tool.
db_statusDatabase status: driver, path, schema version, table list, missing tablesDatabase status: driver, path, schema version, table list, missing tables
No input schema was published for this tool.
search_gsc_statsRead Google Search Console Search Analytics data: clicks / impressions / CTR / average position,Read Google Search Console Search Analytics data: clicks / impressions / CTR / average position,
No input schema was published for this tool.
search_gsc_inspectQuery one URL's Google indexing status (URL Inspection API, read-only): verdict, coverageState,Query one URL's Google indexing status (URL Inspection API, read-only): verdict, coverageState,
No input schema was published for this tool.
search_submit_gscSubmit the sitemap to Google Search Console (soft-fail)Submit the sitemap to Google Search Console (soft-fail)
No input schema was published for this tool.
search_submit_indexnowSubmit URLs to IndexNow (requires INDEXNOW_KEY)Submit URLs to IndexNow (requires INDEXNOW_KEY)
No input schema was published for this tool.
search_submit_baiduSubmit URLs to Baidu normal inclusion (requires BAIDU_TOKEN / BAIDU_SITE).Submit URLs to Baidu normal inclusion (requires BAIDU_TOKEN / BAIDU_SITE).
No input schema was published for this tool.
webmaster_bing_statusRead Bing Webmaster console data (verified sites / URL submission quota / query stats / crawl issues). Requires BING_WEBMASTER_API_KEY in the site .env. Note: Bing trimmed its JSON API on 2026-08-31 (GetPages/GetSitemaps/GetTrafficStats/GetUrlSubmissionStatus now 404).Read Bing Webmaster console data (verified sites / URL submission quota / query stats / crawl issues). Requires BING_WEBMASTER_API_KEY in the site .env. Note: Bing trimmed its JSON API on 2026-08-31 (GetPages/GetSitemaps/GetTrafficStats/GetUrlSubmissionStatus now 404).
No input schema was published for this tool.
webmaster_bing_submitWrite to Bing Webmaster: submit URL(s) (comma-separated = batch, ≤10000 per call). Requires BING_WEBMASTER_API_KEY in the site .env.Write to Bing Webmaster: submit URL(s) (comma-separated = batch, ≤10000 per call). Requires BING_WEBMASTER_API_KEY in the site .env.
No input schema was published for this tool.
diagnose_siteFull GEO/SEO site diagnosis: domain (DNS/TLS cert/WHOIS), transport & server fingerprint (CMS/framework/platform/CDN), robots.txt, sitemap, homepage + representative pages (meta, H1..H6 structure, JSON-LD, OG, images/alt, links, mixed content), performance and security checks. Bootstraps the site o…Full GEO/SEO site diagnosis: domain (DNS/TLS cert/WHOIS), transport & server fingerprint (CMS/framework/platform/CDN), robots.txt, sitemap, homepage + representative pages (meta, H1..H6 structure, JSON-LD, OG, images/alt, links, mixed content), performance and security checks. Bootstraps the site o…
No input schema was published for this tool.
report_writeprivilegedWrite a Markdown report into the site data/reports/ directory (path-safe: filename is basenamed and confined to the reports dir). Auto-bootstraps the site on first use.Write a Markdown report into the site data/reports/ directory (path-safe: filename is basenamed and confined to the reports dir). Auto-bootstraps the site on first use.
No input schema was published for this tool.
util_pingConnectivity self-check: SDK version, driver, internal data directory, bound workspace and site countConnectivity self-check: SDK version, driver, internal data directory, bound workspace and site count
No input schema was published for this tool.
standards_listList the generic writing & GEO standards shipped with the engine (titles, whether a site-specific supplement exists).List the generic writing & GEO standards shipped with the engine (titles, whether a site-specific supplement exists).
No input schema was published for this tool.
standards_readRead a generic standard document (base + any site-specific supplement merged). Names are repository-relative without `.md`,Read a generic standard document (base + any site-specific supplement merged). Names are repository-relative without `.md`,
No input schema was published for this tool.
article_draftAssemble a ready-to-use writing brief for a new article: the matched T1–T7 body skeleton, the pre-writing research-brief template,Assemble a ready-to-use writing brief for a new article: the matched T1–T7 body skeleton, the pre-writing research-brief template,
No input schema was published for this tool.
channel_listList all external content platforms in the syndicate registry: API type (official|cookie|none), status (ready|pending|manual),List all external content platforms in the syndicate registry: API type (official|cookie|none), status (ready|pending|manual),
No input schema was published for this tool.
channel_style_getReturn the FULL platform style / rewrite rules for ONE platform (wechat / juejin / blog / …).Return the FULL platform style / rewrite rules for ONE platform (wechat / juejin / blog / …).
No input schema was published for this tool.
channel_checkValidate a title/body against a platform's style rules — the 校验 (validation) half. Deterministic, no content generation.Validate a title/body against a platform's style rules — the 校验 (validation) half. Deterministic, no content generation.
No input schema was published for this tool.
channel_publishPublish/export to one external platform. Mode A: pass slugs[] and the server reads the DB and runs the platform pipelinePublish/export to one external platform. Mode A: pass slugs[] and the server reads the DB and runs the platform pipeline
No input schema was published for this tool.
channel_plan_nextPer-platform publishing calendar: return the next article to publish for a platform plus all calendar rowsPer-platform publishing calendar: return the next article to publish for a platform plus all calendar rows
No input schema was published for this tool.
channel_plan_markUpdate a channel_plan row status (todo | draft | published | paused) and optionally record its draft ids (media ids).Update a channel_plan row status (todo | draft | published | paused) and optionally record its draft ids (media ids).
No input schema was published for this tool.
juejin_statusRead the Juejin (掘金) backend for this site: the draft box (article_draft/list_by_user) and the published listRead the Juejin (掘金) backend for this site: the draft box (article_draft/list_by_user) and the published list
No input schema was published for this tool.
40 of 40 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
GEO content engine MCP server: 56 tools across content, publishing, search-inclusion and AI-monitoring domains; stdio + Streamable HTTP transports, Bearer-token auth (the MCP bridge layer of @tengence/geo-sdk)
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
The crawl stopped at the 60-package limit. The rest of the tree was never resolved.
36 more resolved packages are not drawn here (display cap: 24). Every dependency carrying an advisory is drawn regardless of the cap. Full inventory (CycloneDX SBOM)
100 declared dependencies never landed in the tree. They are missing from Forge's resolution, not from the package.
+88 more not listed. The counts by reason above cover all of them.
Not followed: peerDependencies, optionalDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.