Norma by Quality Clouds

Deterministic code governance for AI coding agents.

От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноМожет изменять данные

Что умеет

  • Get Rules For Ruleset: Returns the rules in one Norma ruleset: each rule's id, name, severity, impact area, description and fix guidance. These are the standards your code is judged against, not sugge
  • Get Rulesets: Returns the Norma rulesets available for this repository's tech stack, detected automatically with no configuration. One ruleset per language or framework, for example typescript-norma-r
  • Live Check: Runs a deterministic Norma Livecheck on one file against your organization's rules and returns the violations found. Same file, same rules, same verdict every time. Nothing is stored: file

Какие данные видит

Нужен ли аккаунт

Не нужен: сервер работает без входа

Deterministic code governance for AI coding agents. Norma checks code against your organization's rules as the agent writes and returns a fixed verdict: rule ID, severity, line, fix. Same file, same rules, same answer, whichever agent is driving. One ruleset, versioned centrally, with an audit trail of every check.

Connect from Claude Code, Cursor, Copilot or any MCP client. OAuth sign-in, no configuration.

Список инструментов сервера (6)

Технические названия из tools/list. Нужны только разработчикам.

get_rules_for_rulesetReturns the rules in one Norma ruleset: each rule's id, name, severity, impact area, description and fix guidance. These are the standards your code is judged against, not suggestions. ruleset_id is a value returned by get_rulesets. The rule ids returned here are the values register_applied_actions records. remote_url is optional — the workspace git remote (`git remote get-url origin`). It is accepted for symmetry with get_rulesets but never scopes a ruleset's rules, so it is ignored here and rules are always served regardless of repository state.
get_rulesetsReturns the Norma rulesets available for this repository's tech stack, detected automatically with no configuration. One ruleset per language or framework, for example typescript-norma-ruleset for TypeScript, react-norma-ruleset for React, nodejs-norma-ruleset for Node.js. Call this first in any review or governance task. The ruleset_id values returned here are the inputs accepted by get_rules_for_ruleset. Each entry carries ruleset_id, name, version and rule group ids. remote_url is optional — the workspace git remote (`git remote get-url origin`). When given, the catalog is scoped to that repository (resolved within your organizations); when omitted, your organization's generic, tier-entitled catalog is returned. This tool always answers, even with no resolvable repository: for OAuth sessions the response carries a "repository_context" with status "linked" (repository-scoped), "unlinked" (no repository — generic catalog), or "unresolved" (a remote was sent but could not be parsed or matched — generic catalog plus guidance). It is never an error to lack a repository.
live_checkRuns a deterministic Norma Livecheck on one file against your organization's rules and returns the violations found. Same file, same rules, same verdict every time. Nothing is stored: file_content is held in memory only, and the file extension selects the applicable ruleset. Call before proposing code, again after editing to confirm the fix landed, then record the outcome with register_applied_actions. Optional: max_issues (cap on findings returned; a server hard maximum still applies) and min_severity (info < low < medium < high < critical; "total_issues" still counts all). One outcome: "clean" (no issues; "coverage" flags a reduced check), "issues" (a "rules" map keyed by rule_id plus per-finding entries with rule_id, location and snippet), "not_checkable" (no rules for the type, or empty content), "refused" (too large / binary / rate-limited), or "error".
get_open_issuesReturns the violations Norma recorded for this repository in its last completed full scan, each with the context to fix it. These are standing violations of your organization's rules, not suggestions. Optionally pass files (exact repository-relative paths) to scope the result to those files. Each issue carries rule_id, rule_name, severity, impact_area, file, line, description, the fix action and the rule's good/bad code examples — everything needed to fix it without further calls. Returns the top 25 by severity; when more exist the response includes total_open and a portal_url to the rest in Norma. An empty result is never bare — the outcome says why, so you must not report the code as clean unless it truly is: "issues" (fixable issues returned), "no_open_issues" (a scan completed and found none — genuinely clean), "no_completed_scan" (no full scan has completed yet — NOT the same as clean), "no_issues_in_files" (your files have none but the repository has open issues elsewhere; total_open tells how many), "no_linked_repository" (link a repository first with link_repository), or "error". Each issue's file and line are as of the scan, so the code may have moved: re-locate the offending pattern from the rule and description instead of trusting the line number, and skip any issue whose code no longer exists or whose file was renamed or deleted (the next full scan reconciles — this imprecision is expected). When you apply fixes from this tool, make ONE commit containing only the files your fixes changed and do NOT push it (the developer reviews and pushes), ending the commit message with these git trailers, filled from your own identity: Fixed-by: Norma MCP (proactive issue fixing) LLM: <your model name> <your model version> IDE: <the MCP client / IDE you run in> Then record the fixes with register_applied_actions as violations_fixed.
register_applied_actionsWrites the outcome of a coding task into your Norma compliance audit trail. An external, timestamped record of which rules were verified, which violations were fixed, which were prevented, and which model did the work. This is the record a reviewer or auditor reads later, so register at the end of every task, not only when something was fixed. Append-only. Fields: llm_name/llm_version, plus verified_compliant / violations_fixed / violations_prevented, each item referencing a rule by rule_id from get_rules_for_ruleset. Returns "registered", or "failed" with reason "oauth_required" or "invalid_input" (with a detail message).
link_repositoryAssociates this session's workspace with its repository in your Norma organization, so rulesets, Livechecks and audit records resolve to the right repo. Call once at the start of a session if the workspace is not already linked. Inputs: remote_url (the git remote, as `git remote get-url origin` reports it) and default_branch (optional — a hint; the organization's own record wins). Re-linking overwrites the existing association. Returns outcome "linked" (id, name, reference branch), or "failed" with reason "auto_import_not_available", "oauth_required" or "invalid_input".
Norma by Quality Clouds: подключить к Claude, ChatGPT, Cursor · Connectors.fun