Skip to main content
Glama
765,239 tools. Updated 2026-11-11 00:55

"Working with Ghost CMS content management and development" matching MCP tools:

  • Search Flevy's marketplace of consulting frameworks, PowerPoint templates, Excel financial models, business toolkits, and management case studies. Use this whenever a user needs a best-practice framework, methodology, template, financial model, or real-world case example on any business or management topic (strategy, digital transformation, supply chain, pricing, operational excellence, M&A, etc.). Returns up to 10 relevance-ranked recommendations across two content types: "document" (premium documents authored by management consultants) and "case_study" (management case studies). ALWAYS include each recommended item's url as a clickable link when you mention it in your reply — never reference a document without its link, because the link is the only way the user can open it. Each result carries a content_id for get_content_details. Filters: topic (single, or "topics" for documents covering ALL of several topics), author (list more documents from an author seen in results), filetype (including tier1_consulting_deck for McKinsey-style strategy decks), content_type. Topic-filtered responses also list related_topics to pivot to. Provide at least one of query, topic(s), or author; use list_topics to map user phrasing to a canonical topic.
    ConnectorNo auth
  • Returns the organization's development standards: coding conventions, project structure, and framework-specific rules. Read-only. Call it before writing or reviewing code, so the result follows this organization's rules rather than general defaults. Call it first without a section to get an index of available sections, each with a note on what it covers, then call again with one section id copied from that index; inventing a section id returns a not-found error naming that step. Request only the sections a task needs - the full content of one section can be long. The framework argument is deprecated: use section with the "framework:" prefix instead. It returns prose rules, not data - use get_style_tokens for visual values and get_component for component APIs.
    ConnectorNo auth
  • Submits an approval request of any supported type: UAT_PROMOTION, UAT_SIGN_OFF, PRODUCTION_PROMOTION, VISIBILITY_CHANGE, OWNERSHIP_TRANSFER, RETIREMENT, DOMAIN_CHANGE, or ROLLBACK. **An agent may submit but never decide**: SpringRoll requires a human approver, and an agent token cannot approve its own request. Confirm with the user before calling this. It creates review work for named people. Type-specific behaviour: • `PRODUCTION_PROMOTION`: this does NOT deploy. It asks. `releaseId` defaults to the application's latest release, and `targetEnvironmentType` to 'production'. Once approved, call springroll.deploy.promote. • `UAT_PROMOTION`: `targetEnvironmentType` is required, 'uat' (or 'development' where Development needs approval). An approval only unlocks the environment it names. • `UAT_SIGN_OFF`: `targetEnvironmentType` defaults to 'uat'. • `ROLLBACK`: `justification` and `targetEnvironmentType` (the environment to roll back) are required. Put the deployment to restore in `payload.targetDeploymentId`; it defaults to the last successful one. • `RETIREMENT`: `justification` is required. • Every other type takes no `targetEnvironmentType`.
    ConnectorNo auth
  • Pull rows from a CMS dataset by datasetId (UUID from search_datasets). Returns an array of row objects whose keys are the dataset columns. Supports paging (size/offset), full-text keyword search across the dataset, and exact-match column filters via filters: {COLUMN: VALUE} (column names match the keys in returned rows, e.g. {"State": "TX"}).
    ConnectorNo auth
  • Submits an approval request of any supported type: UAT_PROMOTION, UAT_SIGN_OFF, PRODUCTION_PROMOTION, VISIBILITY_CHANGE, OWNERSHIP_TRANSFER, RETIREMENT, DOMAIN_CHANGE, or ROLLBACK. **An agent may submit but never decide**: SpringRoll requires a human approver, and an agent token cannot approve its own request. Confirm with the user before calling this. It creates review work for named people. Type-specific behaviour: • `PRODUCTION_PROMOTION`: this does NOT deploy. It asks. `releaseId` defaults to the application's latest release, and `targetEnvironmentType` to 'production'. Once approved, call springroll.deploy.promote. • `UAT_PROMOTION`: `targetEnvironmentType` is required, 'uat' (or 'development' where Development needs approval). An approval only unlocks the environment it names. • `UAT_SIGN_OFF`: `targetEnvironmentType` defaults to 'uat'. • `ROLLBACK`: `justification` and `targetEnvironmentType` (the environment to roll back) are required. Put the deployment to restore in `payload.targetDeploymentId`; it defaults to the last successful one. • `RETIREMENT`: `justification` is required. • Every other type takes no `targetEnvironmentType`.
    ConnectorNo auth
  • Mint a PROJECT-scoped management token (`er_mcp_`) for MCP and REST; it cannot authenticate relay traffic. Use it after create_project to configure a fresh project, or for any project you already own. Attenuated by design: the scopes must be a subset of THIS management token's own grant (`read` is always included), expiry is mandatory (1–90 days, default 30, never "never"), and the minted management token (being project-scoped) can never mint management tokens itself. `spend` is human-granted only: no management token, of any scope, can mint one carrying it. Mint a spend-scoped token from the project's panel instead. Requires an ACCOUNT-scoped management token and the `config` scope. Returns the plaintext exactly once; only its hash is stored.
    ConnectorNo auth

Matching MCP Servers

Matching MCP Connectors

  • CMS Open Data MCP — US Centers for Medicare & Medicaid Services.

  • UXBERT Labs headless CMS: model, write and publish bilingual content, media, delivery checks.

  • Makes a live HEAD request to the target domain from the Cloudflare edge, follows up to 5 redirects, and returns the full redirect chain, final HTTP status, key response headers, a security header score, and any third-party surveillance actors referenced in the Content-Security-Policy header. Use this tool when: - You want to verify whether a site enforces HTTPS and HSTS. - You need to inspect what third-party scripts a site loads via its CSP header. - You are assessing a domain's security posture before trusting it. - You want to detect surveillance actors embedded in a site's CSP. Do NOT use this tool when: - You need tracker database data (category, score, entity) — use `get_domain` instead. - You need the technology stack (CMS, framework) — use `intel_stack` instead. - You need robots.txt AI crawler policy — use `intel_robots` instead. Inputs: - `domain` (query, required): Domain to probe. Can include or omit `https://`. Examples: `nytimes.com`, `https://example.com`. Returns: - `reachable`: false if the domain did not respond within 6 seconds. - `redirect_chain`: each hop with URL, status code, and Location header. - `security_headers.score`: 0-100 based on presence of HSTS, CSP, X-Content-Type, X-Frame-Options, Referrer-Policy. - `security_headers.missing`: list of headers absent. - `csp_actors`: known surveillance actors detected in the CSP header. - `error`: set if the connection failed. Cost: - Free. No API key required. Latency: - Typical: 1-3s (outbound fetch), p99: 6s (timeout). Plan for async if chaining calls.
    ConnectorNo auth
  • Polls a login session created by create_auth_session until the user completes the browser login. Poll every 2-3 seconds while status is 'pending'. Status 'active' reports the GRANTED scope, read back from the issued token. Completing the login does NOT authenticate this MCP session: pass session_request_id on every protected call afterwards. Omit it and the server falls back to your connector's bearer token, which usually carries content scope only, so content tools keep working while admin tools like pair_by_code refuse with admin_scope_required. The raw token is intentionally not returned over MCP. 'expired' means start over with create_auth_session.
    ConnectorNo auth
  • Record that an article went live at a URL. Flips the suggestion to published, writes the distribution ledger row, stamps the Passport, and pings IndexNow. Call it only once the URL actually resolves — the IndexNow ping fires immediately, and a ping for a dead URL is wasted (search engines crawl, hit the 404, drop it; nothing re-pings later). For a CMS-scheduled article, set scheduledFor via update_article_status and stay in ready_to_publish: publish auto-detect attests it (and pings IndexNow) when it appears. Use this instead of update_article_status for the published transition — a status flip alone records no URL, and without a URL the article is invisible to Search Console outcome tracking (clicks/impressions on the Earnings page). Also works on an already-published suggestion to attach a missing or corrected URL. Pass `publishedAt` (ISO datetime, must not be in the future) when the article went live EARLIER than this call — e.g. attesting after the fact or matching a CMS publish date — so the record carries the real go-live moment instead of the call time.
    Connector
    Destructive
    No auth
  • Get counts of NSW complying development certificates (CDCs) by status, application type and council. Call it before nsw_cdc_search_applications or nsw_cdc_search_nearby_applications: it returns the total loaded and by_status, by_application_type and by_council lists of { key, count }, whose keys are the exact filter values those tools accept. Filters are optional and combine with AND; without them the counts cover all of NSW. Counts refresh every 6 hours while the history backfill extends coverage back to 2021. Free, no payment needed. Source: NSW Department of Planning, Housing and Infrastructure (NSW Planning Portal), CC BY 4.0.
    ConnectorNo auth
  • Look up the Final POS REST API (https://api.finalpos.com) — endpoint method/path, request fields, response shape, and a worked fetch example. This is the ONLINE-ONLY fallback for admin/management operations command-frame cannot express (creating products/variants/categories, customer management, outlets/stations/tax tables, webhooks). Command-frame is ALWAYS first choice for live POS data — it works offline and the host owns money/totals. A call to this API is network egress from the station: it fails whenever connectivity does, so never put one in the sale path — use it for setup/admin work and degrade gracefully. Pass resource to list a domain, operation for one endpoint, or query for fuzzy search.
    ConnectorOAuth
  • Replaces the account api_token with a new one and returns it. The OLD TOKEN STOPS WORKING IMMEDIATELY - only call this when the user explicitly asks to rotate/revoke their token.
    Connector
    Destructive
    OAuth
  • Deletes ONE content block (list, text, actions or links) from a block, with ALL its entries; the block itself and its other content blocks stay. Returns an error if the cell is unknown, but answers success and changes nothing when no content block has this `blockId` on the cell. No dry run: read the block ids with get_cell_details first. The response carries contentBudget {used, available, budget}, the room the card now has for new entries. To remove a single entry rather than the whole content block, send the remaining entries with update_content_block.
    Connector
    Destructive
    API key
  • Returns resource URLs/content in this response; it does NOT write any files. Each resource comes back with a ready `fetch` shell command — run it yourself to save the file to its `dest`. Use inline=true only when a `fetch` command could not reach the server; the content then arrives in this response and you must write it to `dest`. Pass `filename` (string) or `filenames` (array), plus `workspace_dir` (the mapping workflow's) so `dest` matches the workflow's paths; calling with neither filename returns the list of available resources (it does not fail). Available: sz_json_analyzer.py, sz_schema_generator.py, sz_verbatim_check.py, sz_routing_report.py, senzing_entity_specification.md, senzing_mapping_examples.md, identifier_crosswalk.json mapping_workflow and analyze_record already return each resource's `fetch` command — you do not need this tool to run them. If a previously-known fetch instruction stops working, call this tool again to obtain the current one.
    ConnectorNo auth
  • Returns the most recent earnings call summary for a ticker — management guidance text, overall call sentiment (positive / neutral / negative with a one-line rationale), and AI-extracted highlights and lowlights from the call as {title, content} bullets. This is a structured summary derived from the call, not the raw transcript text. Useful for "what did management say about X on the last call", "was the most recent call bullish or bearish", or "summarise the highlights from MSFT's latest earnings". Only the most recent quarter is stored per ticker; for historical EPS actual-vs-estimate series use get_earnings_history. Args: ticker: Stock ticker (e.g. 'AAPL', 'NVDA'). Returns: { ticker, fiscal_year, fiscal_quarter, guidance, sentiment: { label, summary }, highlights: [ { title, content }, ... ], lowlights: [ { title, content }, ... ] }
    ConnectorNo auth
  • Search pirch's pool of verified-live job listings. Every job returned was opened and confirmed real and accepting applicants by pirch within the last 72 hours — dead and ghost listings are removed automatically, so results can be trusted as live right now. Free, public data. When showing a job to a user, link its `url` (the pirch page, which shows the verification and links to the original posting).
    ConnectorNo auth
  • Check the progress and final status of a specific AI development session using its session key. Use this to monitor an asynchronous edit until it completes, fails, or is cancelled — keep checking until a terminal state. The session key comes from dreamagent_chat or dreamagent_list_sessions and is an identifier, not a secret. Returns (actual fields): 'active=', 'run_status=', 'next_after=' (cursor for the next check), optional 'new_output:' (text produced since the last check), then either "Still working — poll again" or a terminal 'done=true' line: finished (with the final output tail), 'the edit was NOT started: <reason>' (rejected early, e.g. HTTP 402 insufficient credits), or 'stream error' (the connection to the run broke — the server-side run may still have finished; verify with dreamagent_get_edit_progress). run_status values: queued | running | cancel_requested | completed | failed | cancelled | interrupted | unknown.
    ConnectorNo auth
  • Check the progress and final status of a specific AI development session using its session key. Use this to monitor an asynchronous edit until it completes, fails, or is cancelled — keep checking until a terminal state. The session key comes from dreamagent_chat or dreamagent_list_sessions and is an identifier, not a secret. Returns (actual fields): 'active=', 'run_status=', 'next_after=' (cursor for the next check), optional 'new_output:' (text produced since the last check), then either "Still working — poll again" or a terminal 'done=true' line: finished (with the final output tail), 'the edit was NOT started: <reason>' (rejected early, e.g. HTTP 402 insufficient credits), or 'stream error' (the connection to the run broke — the server-side run may still have finished; verify with dreamagent_get_edit_progress). run_status values: queued | running | cancel_requested | completed | failed | cancelled | interrupted | unknown.
    ConnectorNo auth
  • List drupal.org projects after filters, largest install base first, paged. Examples: "top modules without an 11.4 branch", "themes over 10k installs without security coverage". One project: project_profile. Its pending records: project_upgrade_report. - Filters combine: type, min_installs, security (covered, not-covered, revoked), core_minor (+ missing), era (d8plus, pre_d8), member_of (+ max_depth). All apply to count and rows. - core_minor reads the composer constraint of the newest release on each development branch. A minor counts when any patch of it satisfies the constraint. An unreleased tip change is not seen. missing=true keeps projects with no branch declaring it: the upgrade gap list. - member_of keeps one root's members, direct and transitive; max_depth (needs member_of) drops members past that many requires away. A filtered list adds membership: root_release, complete, unread_count and unread (up to 20, package + cause). - Row: machine_name, title, type, installs, security, status, dev_branches (branch, installs, core_minors, era), latest_release, cms_depth, member_of_count. cms_depth is the row's membership depth under the cms root; member_of_count is how many roots include it. A project in no root has neither; a project that is not a cms member has member_of_count alone. count: projects. next_offset is absent on the last page.
    ConnectorNo auth
  • Hybrid keyword + semantic search over the public pages of vascue.io: healthcare-operations guides, Vascue Front Desk for clinics, provider-side insurance-claims automation, practice-management integrations (two-way sync with Cliniko and Nookal; Jane, Mindbody, PracticeHub, HexaHealth, Halaxy, Clinicea, ClinicOffice, Semble, Plato Medical and JERA in progress), security and compliance pages, case studies, pricing and blog posts. Use it to answer questions about what Vascue offers, how its products work and what it has published. One topic per call; cite the returned page URL for every excerpt you use. Returns a JSON text payload: result.chunks[] ordered by relevance, each with text (a Markdown excerpt), score (0-1, higher is better) and item.metadata.url (the canonical https://www.vascue.io/... page). Off-topic queries still return the nearest chunks, so treat scores below about 0.5 as weak evidence and say so when the site does not cover a topic. Read-only and idempotent; no authentication; 60 requests per minute per client. Public content only: never send patient information, claim documents, clinic credentials or booking requests. It cannot book appointments or look up clinic data.
    ConnectorNo auth
  • Hybrid keyword + semantic search over the public pages of vascue.io: healthcare-operations guides, Vascue Front Desk for clinics, provider-side insurance-claims automation, practice-management integrations (two-way sync with Cliniko and Nookal; Jane, Mindbody, PracticeHub, HexaHealth, Halaxy, Clinicea, ClinicOffice, Semble, Plato Medical and JERA in progress), security and compliance pages, case studies, pricing and blog posts. Use it to answer questions about what Vascue offers, how its products work and what it has published. One topic per call; cite the returned page URL for every excerpt you use. Returns a JSON text payload: result.chunks[] ordered by relevance, each with text (a Markdown excerpt), score (0-1, higher is better) and item.metadata.url (the canonical https://www.vascue.io/... page). Off-topic queries still return the nearest chunks, so treat scores below about 0.5 as weak evidence and say so when the site does not cover a topic. Read-only and idempotent; no authentication; 60 requests per minute per client. Public content only: never send patient information, claim documents, clinic credentials or booking requests. It cannot book appointments or look up clinic data.
    ConnectorNo auth