mcp-server-scf
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SCF_API_KEY | Yes | API key from your self-hosted platform instance | |
| SCF_API_URL | Yes | Base URL of your self-hosted platform (e.g. http://localhost:8000) |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| scf_list_controlsA | List SCF security controls from the reference catalog. Returns paginated controls with SCF ID, title, description, and mapped frameworks. Filter by domain, framework, or free-text search. |
| scf_get_controlA | Get a single SCF control by ID. Returns description, mapped frameworks, assessment objectives, and linked evidence items from the reference catalog. |
| scf_list_frameworksA | List every compliance framework mapped in the SCF catalog (NIST 800-53, ISO 27001, SOC 2, FedRAMP, GDPR, and 350+ more). Returns framework identifiers and display names. |
| scf_list_domainsA | List every compliance domain in the SCF taxonomy. Domains group related controls (e.g., GOV = Governance, AST = Asset Management, IAC = Identity & Access Control). |
| scf_list_evidence_catalogA | List evidence items from the SCF reference catalog — the 272 standard evidence types that can be collected to demonstrate control implementation. Supports free-text search and pagination. |
| scf_list_assessment_objectivesA | List SCF assessment objectives — the 5,736 test criteria used to evaluate control implementation. Optionally filter by control ID; supports free-text search and pagination. |
| scf_list_scoped_controlsA | List controls scoped to the organization with implementation status. Filter by scope status, domain, framework, CSF function, weighting, or free-text search. Paginated. |
| scf_get_scoped_controlA | Get one scoped control in detail: owner, implementation notes, evidence links, and audit history. Identify by scf_id, not by UUID. |
| scf_update_scoped_controlA | Update a scoped control's implementation fields (write — editor+ role). Identify by scf_id, not UUID. Only provided fields are applied. |
| scf_get_scoping_statsA | Get the organization's implementation statistics: counts by status, overall completion percentage, and per-framework coverage breakdown. |
| scf_scope_frameworkA | Bulk-scope every control mapped to a framework into the organization (write — editor+ role). Creates a scoped-control entry for each control in the framework. |
| scf_batch_update_controlsA | Batch-update up to 500 scoped controls in one transaction (write — editor+ role). Each operation identifies its target by scf_id; status values are lowercase. |
| scf_list_evidenceA | List evidence items tracked against an organization's controls. Returns each item's tracking status, maturity level, and linked controls. Optionally filter by system. |
| scf_create_evidenceA | Create an evidence tracking record from a catalog evidence ID (write — editor+ role). Starts tracking an evidence item for the organization. |
| scf_get_evidence_maturityA | Get the organization's evidence maturity summary: average maturity score, automation percentage, distribution by maturity level, and improvement opportunities. |
| scf_get_evidence_item_maturityA | Get one evidence item's collection maturity: current level (1=Ad Hoc to 5=Optimized), contributing factors, upgrade potential, and tracking state. |
| scf_get_evidence_upgrade_recommendationsA | Get upgrade-path recommendations for maturing one evidence item's collection: target level, effort, impact, and step-by-step actions — the same guidance shown in the platform UI. |
| scf_get_evidence_suggestionsA | Get system-aware collection suggestions for one evidence item: which tracked system currently collects it, which in-scope systems are capable of collecting it, and tailored collection guidance. |
| scf_list_evidence_gapsA | List the organization's evidence coverage gaps: evidence required by in-scope controls that is not yet tracked, with overall coverage percentage. |
| scf_get_evidence_healthA | Get evidence collection health for the organization: per-item freshness status (green/amber/red) against collection frequency, with a roll-up summary. |
| scf_list_evidence_filesA | List all files uploaded or ingested for an evidence item. Returns filename, content type, upload timestamp, validation status, and a pre-signed download URL (15-min expiry). |
| scf_get_evidence_fileA | Get metadata and a pre-signed download URL (15-min expiry) for a single evidence file. Use to inspect or retrieve a specific uploaded artifact. |
| scf_update_evidenceA | Upsert an evidence item's tracking fields (write — editor+ role). Creates the tracking row if missing. All body fields are optional; only provided fields are applied. |
| scf_get_evidence_validationA | Get the validation result for a single evidence file: status (valid/warning/partial/invalid), completeness score, individual rule findings, source, and timestamp. |
| scf_revalidate_evidence_fileA | Re-run the validation engine against an evidence file (write — editor+ role). Checks catalog existence, content type, field coverage, freshness, storage. Returns the updated result. |
| scf_get_evidence_validation_summaryA | Get aggregate evidence validation metrics for the organization dashboard: total files validated, counts by status (valid/warning/partial/invalid), and overall pass rate. |
| scf_trigger_evidence_assessmentA | Queue an AI assessment of a single evidence file (write — editor+ role, async). Returns a pending record; poll scf_get_evidence_assessment until status is sufficient/partial/insufficient. |
| scf_get_evidence_assessmentA | Get the AI assessment for an evidence file: status, relevance score (0–100), structured findings, summary, and audit metadata (model, tokens, cost). Poll after scf_trigger_evidence_assessment. |
| scf_bulk_assess_evidenceA | Queue AI assessments for multiple evidence files (write — editor+ role, async, max 50). Provide evidence_id, file_ids, and/or assess_unassessed. Returns count queued. |
| scf_get_evidence_assessment_summaryA | Get aggregate AI assessment metrics for the organization dashboard: total assessed, counts by status, unassessed count, average relevance score, and total cost in cents. |
| scf_list_evidence_tasksA | List evidence collection tasks — the work queue showing what needs to be collected, by whom, and by when. Optionally filter by assignee or status. |
| scf_trigger_window_assessmentA | Queue a windowed AI assessment that scores every file in the evidence item's frequency window as one portfolio (write — editor+ role, async). Returns 422 if tracking or frequency is missing. |
| scf_list_window_assessmentsA | List recent windowed AI assessments for an evidence item (newest first). Each entry includes window bounds, frequency, file IDs, coverage, status, relevance score, findings, and cost. |
| scf_get_window_assessmentA | Get one windowed AI assessment by ID. Returns full detail: window bounds, frequency, file IDs, coverage, expected artifact types, status, relevance score, findings, summary, hashes, tokens, cost. |
| scf_bulk_assess_windowsA | Queue windowed AI assessments for up to 25 evidence IDs (write — editor+ role, async). Items without tracking or a frequency set are reported under |
| scf_get_window_assessment_summaryA | Get aggregate windowed-assessment metrics for the organization dashboard: total windows assessed, counts by status (including |
| scf_get_control_assessment_compositeA | Get the rolled-up assessment composite for one SCF control: composite score, status band, included/missing evidence IDs, mandatory gaps, per-window detail. 404 if no composite row exists yet (async). |
| scf_list_control_assessment_compositesA | List rolled-up assessment composites for the org. Cursor-paginated, worst-band first (insufficient → sufficient). Filter by status/domain/computation_version. Pass next_cursor to page forward. |
| scf_list_risksA | List risk assessments in the organization's risk register. Returns each risk's likelihood, impact, treatment status, and linked controls. |
| scf_get_riskA | Get one risk assessment in detail: likelihood, inherent and residual impact scores, treatment plan, owner, and review date. |
| scf_create_riskA | Create a new risk assessment in the risk register (write — editor+ role). Likelihood and impact scores populate the 5×5 risk matrix. |
| scf_get_risk_matrixA | Get the 5×5 risk matrix data for the organization — risk distribution across likelihood × impact, ready for visualization. |
| scf_get_risk_summaryA | Get the organization's aggregate risk summary: totals by severity, treatment status breakdown, and trend data. |
| scf_list_custom_risksA | List the organization's custom risk definitions — org-defined risks alongside the static SCF catalog, carrying auto-generated R-ORG-N codes. |
| scf_create_custom_riskA | Create a custom org-defined risk (write — editor+ role). Auto-generates an R-ORG-N code and creates the matching risk assessment record. |
| scf_update_custom_riskA | Update a custom risk definition's metadata — title, description, category (write — editor+ role). Only provided fields are applied. |
| scf_delete_custom_riskA | Delete a custom risk definition, its assessment record, and every control mapping (destructive write — editor+ role). Irreversible. |
| scf_list_custom_risk_controlsA | List controls linked to a custom risk. Returns |
| scf_add_custom_risk_controlA | Link a scoped control to a custom risk (write — editor+ role). The control must already be scoped (in-scope) for this organization. |
| scf_remove_custom_risk_controlA | Unlink a scoped control from a custom risk (write — editor+ role). The control and risk both remain; only the mapping is removed. |
| scf_list_vendorsA | List third-party vendors in the organization's TPRM (Third-Party Risk Management) registry. Optionally filter by status or criticality. Paginated. |
| scf_get_vendorA | Get one vendor's detail: certifications, assessments, computed risk score, and latest research results. |
| scf_create_vendorA | Create a vendor in the TPRM registry (write — editor+ role). Platform auto-scores risk based on criticality and data handling. |
| scf_update_vendorA | Update an existing vendor record (write — editor+ role). Only provided fields are applied. |
| scf_trigger_vendor_researchA | Queue AI security research for a vendor (write — editor+ role, async). Checks HIBP breach data, NVD vulnerabilities, and public posture. Returns a task ID; poll scf_get_vendor_research. |
| scf_get_vendor_researchA | Get the latest vendor research result: breach history, known vulnerabilities, and security posture analysis. Poll this after scf_trigger_vendor_research. |
| scf_trigger_vendor_assessmentA | Queue an AI vendor security assessment (write — editor+ role, async, HTTP 202). Replaces the deprecated DPSIA trigger. Returns assessment_id + job_id; poll scf_get_vendor_assessment_status. |
| scf_list_vendor_assessmentsA | List a vendor's AI security assessments, newest first. Includes status, RAG rating, recommendation, and report fields per record. |
| scf_get_latest_vendor_assessmentA | Get a vendor's latest completed AI security assessment: RAG status, recommendation, executive summary, report_markdown/report_json. 404 if none completed yet. |
| scf_get_vendor_assessmentA | Get one vendor AI assessment by ID with full detail: services_used, data_role, RAG status, recommendation, full report fields, and research sources. |
| scf_get_vendor_assessment_statusA | Get the job status of a queued vendor AI assessment: status, started_at, completed_at, error_message. Poll this after scf_trigger_vendor_assessment. |
| scf_get_current_userA | Get the authenticated caller's profile: name, email, organization memberships, and per-org role. |
| scf_list_organizationsA | List every organization the caller has access to. Returns org UUID, name, subscription tier, and member count. Use this first to obtain the org_id other tools need. |
| scf_get_organizationA | Get one organization's detail: subscription tier, member count, usage limits, and settings. |
| scf_list_membersA | List members of one organization with their role (admin, editor, or viewer). |
| scf_get_work_queueA | Get the caller's work queue: prioritized pending tasks, assignments, and action items across every organization they belong to. |
| scf_get_audit_logA | Get one organization's audit trail: field-level changes to controls, evidence, and related entities, with actor, timestamp, and before/after values. |
| scf_get_notificationsA | Get the caller's notifications: new assignments, comments, status changes, and system alerts. |
| scf_list_capability_themesA | List an organization's 11 KSI capability themes. Themes group NIST 800-53 controls into security capability areas for a high-level posture view. |
| scf_list_capabilitiesB | List an organization's capabilities. Capabilities map to systems and evidence, showing what security functions the infrastructure supports. |
| scf_list_systemsA | List the organization's infrastructure systems — the tools and platforms that implement security capabilities. Optionally filter by linked vendor. |
| scf_create_systemA | Create a system in the organization's infrastructure inventory (write — editor+ role). Systems can be linked to capabilities and evidence. |
| scf_update_systemA | Update an existing system record (write — editor+ role). All fields are optional; only provided fields are applied. |
| scf_get_capability_theme_scorecardB | Get the multi-axis KSI scorecard for every capability theme. Returns per-theme Implementation Coverage, Maturity, Evidence Coverage, Evidence Quality, and composite KSI Posture Score bands. |
| scf_get_capability_themeA | Get a single capability theme (KSI) with full posture, multi-axis scores, band, and legacy posture_percentage. |
| scf_list_capability_theme_controlsA | List SCF controls mapped to a capability theme (KSI), with scoping status, implementation status, and maturity level. Supports pagination and scope filtering — ideal for KSI drill-down. |
| scf_list_system_catalogA | List system-catalog templates — the platform's knowledge base of known vendors/tools (slug, vendor, type, recipe maturity levels). Optionally search by name. |
| scf_get_system_catalog_templateA | Get one system-catalog template by slug with full detail: aliases and curated evidence-collection recipes (maturity level, steps, frequency, estimated time). |
| scf_get_system_recipesA | Get evidence-collection recipes for a system, matched via its catalog template, alias, or fallback. Returns matched_via, the template summary, and per-maturity-level recipe steps. |
| scf_generate_system_recipesA | Queue AI generation of evidence-collection recipes for a system (write — editor+ role, async, HTTP 202). Poll scf_get_recipe_generation_status for progress. |
| scf_get_recipe_generation_statusA | Get the status of a queued AI recipe-generation job for a system. Poll this after scf_generate_system_recipes. |
| scf_get_capability_theme_evidence_postureA | Get per-theme evidence metrics: controls with evidence, file counts by assessment status, average relevance score, and derived confidence (strong/moderate/weak/none). Use for KSI evidence dashboards. |
| scf_create_webhookA | Create a webhook endpoint for evidence-inbox ingestion (write — admin role). Returns the plaintext HMAC signing secret exactly once — store it immediately; it cannot be retrieved later. |
| scf_list_webhooksA | List the organization's webhook endpoints (newest first). Returns name, status, delivery count, and secret prefix. |
| scf_get_webhookA | Get one webhook endpoint's detail: delivery stats, allowed evidence IDs, and rate-limit configuration. |
| scf_delete_webhookA | Revoke a webhook endpoint — soft-delete that marks it inactive (destructive write — admin role). Future deliveries return 403; the record remains for audit. |
| scf_rotate_webhook_secretA | Rotate the HMAC signing secret for a webhook endpoint (write — admin role). The old secret is invalidated immediately. Returns the new plaintext secret exactly once. |
| scf_list_webhook_deliveriesA | List delivery logs for a webhook endpoint (newest first). Each entry shows signature validation result, processing status, evidence ID, and timestamps. |
| scf_list_document_generatorsA | List the ISMS document generators available to this organization (read — viewer role): generator name, document type, tier, derivative flag. Call before scf_generate_documents. |
| scf_list_document_domainsA | List the SCF domains this organization can currently generate documents for (read — viewer role). A domain appears only when it has enough scoped controls to produce a document. |
| scf_get_document_settingsA | Get the organization's document-generation settings (read — viewer role): whether doc-gen is enabled, whether derivative generators are enabled, and the SCF licence acknowledgement state. |
| scf_update_document_settingsA | Enable or configure document generation (write — admin role). Generation stays blocked until the SCF licence is acknowledged, so the first call usually sets both enabled and acknowledge_licence. |
| scf_generate_documentsA | Queue ISMS document generation for one or more generators (write — admin role). Returns a task_id; poll scf_get_document_generation_status. Existing documents are skipped unless force is set. |
| scf_get_document_generation_statusA | Poll this organization's in-flight document generation (read — viewer role). Returns {status: 'idle'} when nothing is running. Call after scf_generate_documents until it completes. |
| scf_list_documentsA | List generated ISMS documents (read — viewer role): lifecycle status, section counts, unresolved conflicts, pending retirements, and whether the document is stale against current org inputs. |
| scf_get_documentA | Get one generated document in full (read — viewer role): metadata plus every section with its merge state — clean, edited, conflicted or pending retirement. Use this to read a document. |
| scf_update_document_sectionA | Replace one section's content with a human edit (write — editor role). Tracked as a human layer, so a later regeneration reports a conflict instead of overwriting it silently. |
| scf_get_document_section_generatedA | Get the generator's own version of a section, ignoring any human edit (read — viewer role). Use it to see what the platform would produce before resolving a conflict. |
| scf_resolve_document_sectionA | Resolve one section's merge state (write — editor role). keep_mine/take_generated settle a conflict; retire/keep dispose of a pending retirement. The wrong pair for the state returns 409. |
| scf_transition_documentA | Move a document through its lifecycle — draft to review, review to approved, approved to published (write — approving and publishing need admin). Valid targets are enforced by the platform. |
| scf_get_document_historyA | Get a document's version and transition history (read — viewer role): who moved it between lifecycle states, when, why, and what each generation version changed. |
| scf_export_documentA | Export a document as rendered markdown or HTML text (read — viewer role). The platform also renders PDF, but that is a binary download and is not offered here — fetch it from the web UI instead. |
| scf_preview_documentA | Preview a document's assembled content as structured JSON (read — viewer role) — the merged result of generated and edited sections without rendering to a file. |
| scf_list_engagementsA | List the organization's audit engagements (read — viewer role). Each entry carries its frameworks, status, dates and the catalog version its scope was frozen against. |
| scf_get_engagementA | Get one audit engagement's detail (read — viewer role, or an auditor assigned to this engagement). |
| scf_create_engagementA | Create an audit engagement (write — admin role). This freezes the in-scope controls for the named frameworks against the current catalog version, so the scope renders even after deprecations. |
| scf_update_engagementA | Update an audit engagement's name, frameworks, status or dates (write — admin role). Only the fields you pass are changed. |
| scf_delete_engagementA | Delete an audit engagement and its frozen scope (destructive write — admin role). Returns no content on success. Auditor access granted through this engagement is revoked with it. |
| scf_get_engagement_scopeA | Get an engagement's frozen control scope (read — viewer role, or an assigned auditor). Rows carry a catalog lifecycle badge, so controls deprecated since the freeze still render, marked. |
| scf_get_engagement_presentationB | Get the engagement's scope presented natively in one of its frameworks (read — viewer, or assigned auditor): SCF controls organised by that framework's own structure, as an auditor reads them. |
| scf_list_my_engagementsA | List the engagements the calling identity can read as an assigned auditor, across organizations (read). This is the auditor's own view — use scf_list_engagements for the organization-side list. |
| scf_list_engagement_auditorsA | List the auditors granted read access to one engagement (read — viewer role). |
| scf_add_engagement_auditorA | Grant an existing user read access to one engagement (write — admin role). The grant is engagement-scoped: it exposes that engagement's frozen scope and queries, nothing else in the organization. |
| scf_remove_engagement_auditorA | Revoke an auditor's access to one engagement (destructive write — admin role). Returns no content on success. |
| scf_list_engagement_queriesA | List an engagement's structured auditor queries (read — viewer role, or an assigned auditor). A query is an auditor's question against one control, with its responses and status. |
| scf_get_engagement_queryA | Get one auditor query with its full response thread (read — viewer role, or an assigned auditor). |
| scf_create_engagement_queryA | Raise an auditor query against one control in the engagement's scope (write — editor role, or an assigned auditor). The control must be in the engagement's frozen scope. |
| scf_respond_to_engagement_queryA | Add a response to an auditor query (write — editor role, or an assigned auditor). Returns the updated query with its full thread. |
| scf_update_engagement_query_statusA | Move an auditor query through its lifecycle (write — editor role, or an assigned auditor). The platform validates the transition, so an invalid target is refused rather than recorded. |
| scf_get_catalog_reconciliation_statusA | Get this organization's catalog position (read — viewer role): its catalog version, the platform's current version, and whether reconciliation is due or in flight. Start here. |
| scf_preview_catalog_reconciliationA | Create a reconciliation preview run (write — admin role): what moving to the target catalog version would do to scoped controls, evidence and mappings. Changes nothing until apply. |
| scf_list_reconciliation_runsA | List this organization's catalog reconciliation runs, newest first (read — viewer role), with each run's status and target version. |
| scf_get_reconciliation_runA | Get one reconciliation run in detail (read — viewer role): the computed diff, every deprecated entity needing a decision, and the planned action currently recorded against each. |
| scf_set_reconciliation_actionsA | Record decisions for a reconciliation run (write — admin role). REPLACES the run's planned actions, so send the complete list. Each deprecated entity gets migrate, retain or retire_only. |
| scf_apply_catalog_reconciliationA | Apply a previewed reconciliation run (write — admin role). Asynchronous. The run must be 'previewed' and expected_to_version must match, so a stale preview is refused rather than applied. |
| scf_rollback_catalog_reconciliationA | Roll an applied reconciliation run back (destructive write — admin role). Asynchronous, and requires the typed confirmation string the run detail states. |
| scf_cancel_catalog_reconciliationA | Cancel a reconciliation run that has not been applied (write — admin role). The organization stays on its current catalog version. |
| scf_get_catalog_changelogA | Get this organization's catalog changelog (read — viewer role): what changed across reconciliations, newest first. Answers 'when did this control change, and what did we decide?' |
| scf_get_cdm_document_mapA | Get the CDM document map (read — viewer role): per-domain coverage showing which ingested documents speak to which SCF domains, and where the corpus is silent. Finds documentation gaps. |
| scf_list_cdm_documentsA | List the documents ingested into the organization's CDM corpus (read — viewer role), with their ingestion state. |
| scf_list_cdm_proposalsA | List control-level CDM proposals with nested citations (read — viewer role), highest consolidated score first. The review queue: 'this document evidences this control, here is where'. |
| scf_accept_cdm_proposalA | Accept a control-level CDM proposal (write — editor role). One decision covers the whole card: the proposal and every citation under it flip to accepted together. |
| scf_dismiss_cdm_proposalA | Dismiss a control-level CDM proposal (write — editor role). The proposal and its citations are dismissed together, and the reason — if given — is stored on each. |
| scf_list_cdm_mappingsA | List CDM citation-level mappings (read — viewer role): the document passages proposed as evidence for a control, each lifecycle-badged. Use scf_list_cdm_proposals for the per-control view. |
| scf_query_cdm_corpusA | Search the organization's ingested policy corpus for passages relevant to one scoped control (read — viewer role). Ranked hits with source documents: 'what do our own documents say?' |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MarkAC007/mcp-server-scf'
If you have feedback or need assistance with the MCP directory API, please join our Discord server