Skip to main content
Glama

GovBR DS MCP

Open-Source-Server für das Model Context Protocol (MCP) für das Design System der brasilianischen Bundesregierung (GovBR-DS).

govbr-ds-mcp bietet KI-Agenten strukturierten Zugriff auf die Dokumentation des GovBR-DS, seine Komponenten, Barrierefreiheitsrichtlinien, Suche, Resources und wiederverwendbare Workflows für die Entwicklung.

Ziel ist es, Tools wie Codex, Claude Code, Kiro und andere MCP-kompatible Clients in die Lage zu versetzen, das GovBR Design System auf der Grundlage seiner synchronisierten offiziellen Dokumentation zu verstehen und zu nutzen, anstatt sich nur auf das Vorwissen des Modells zu verlassen.

Das Paket ist auf npm als govbr-ds-mcp veröffentlicht und kann direkt mit dem folgenden Befehl ausgeführt werden:

npx -y govbr-ds-mcp

Dies ist ein unabhängiges Community-Projekt. Es ist kein offizielles Projekt der brasilianischen Bundesregierung oder des für das GovBR-DS verantwortlichen Teams.


Warum dieses Projekt?

KI-Agenten können schnell Frontend-Code erzeugen, wissen aber nicht immer:

  • welche GovBR-DS-Komponente verwendet werden soll;

  • wie sich eine bestimmte Komponente verhalten soll;

  • welche Barrierefreiheitsempfehlungen gelten;

  • welche Nutzungsmuster empfohlen werden;

  • wo sich eine bestimmte Information in der GovBR-DS-Dokumentation befindet.

govbr-ds-mcp versucht, dieses Problem zu lösen, indem es die GovBR-DS-Dokumentation über das Model Context Protocol bereitstellt.

Agente de IA
    │
    ▼
govbr-ds-mcp
    │
    ├── Tools
    ├── Resources
    ├── Prompts
    └── Busca
          │
          ▼
   Dados estruturados locais
          ▲
          │
   Sincronização da documentação
          ▲
          │
 Repositório oficial GovBR-DS

Der MCP-Server verwendet intern kein LLM und führt während des normalen Betriebs keine externen Anfragen durch.


Related MCP server: PortOne Global MCP Server

Funktionen

Synchronisierung der Dokumentation

Die Dokumentation wird aus dem offiziellen GovBR-DS-Repository abgerufen und in lokale strukturierte Daten umgewandelt.

GitLab GovBR-DS
      │
      ▼
   GitLab API
      │
      ▼
 Parser Markdown
      │
      ▼
Componentes estruturados
      │
      ▼
components.generated.ts

Die erzeugten Daten werden lokal gespeichert, sodass der MCP-Server nach der Synchronisierung ohne Internetzugang funktionieren kann.

Derzeit synchronisiert das Projekt 37 dokumentierte Komponenten des GovBR-DS.


MCP-Tools

list_components

Listet die im lokalen Dokumentationsindex verfügbaren GovBR-DS-Komponenten auf.

Beispiel:

{}

Antwort:

[
  {
    "name": "Button",
    "slug": "button",
    "description": "..."
  },
  {
    "name": "Input",
    "slug": "input",
    "description": "..."
  }
]

get_component

Gibt die vollständige strukturierte Dokumentation einer bestimmten GovBR-DS-Komponente zurück.

Beispiel:

{
  "name": "button"
}

Die Suche unterscheidet nicht zwischen Groß- und Kleinschreibung.

Die folgenden Aufrufe sind äquivalent:

button
Button
BUTTON

search_docs

Durchsucht die lokal synchronisierte GovBR-DS-Dokumentation.

Beispiel:

{
  "query": "como usar um botão",
  "limit": 5
}

Die Suchmaschine unterstützt:

  • case-insensitive Suche;

  • Suche ohne Unterscheidung von Akzenten;

  • Entfernung portugiesischer Stoppwörter;

  • Komponenten-Aliase;

  • Kanonisierung morphologischer Varianten;

  • Priorisierung der identifizierten Komponente;

  • Ranking nach Abschnittsrelevanz;

  • Erzeugung relevanter Snippets;

  • Filter nach Komponente.

Beispiel:

{
  "query": "acessibilidade aria",
  "component": "button",
  "limit": 5
}

Die Suche findet vollständig im Speicher statt.

Es werden nicht verwendet:

  • Embeddings;

  • Vektordatenbank;

  • Elasticsearch;

  • LLM;

  • externe Suchdienste.


MCP-Resources

Die GovBR-DS-Dokumentation wird auch über MCP-Resources bereitgestellt.

Komponentenkatalog

govbr-ds://catalog

Stellt einen Index aller synchronisierten Komponenten bereit.


Komponentendokumentation

govbr-ds://components/{slug}

Beispiel:

govbr-ds://components/button

Gibt die vollständige Dokumentation der Komponente im Markdown-Format zurück.


Barrierefreiheitsdokumentation

govbr-ds://components/{slug}/accessibility

Beispiel:

govbr-ds://components/button/accessibility

Gibt die für die Komponente verfügbaren Barrierefreiheitsrichtlinien zurück.

Nicht alle GovBR-DS-Komponenten verfügen über eine spezifische Barrierefreiheitsdokumentation.

Die Resources werden vollständig aus den lokal synchronisierten Daten erzeugt.


MCP-Prompts

Der Server stellt wiederverwendbare Prompts für häufige Entwicklungsworkflows mit GovBR-DS bereit.

implement_govbr_component

Stellt die synchronisierte offizielle Dokumentation einer Komponente sowie Anweisungen zur Unterstützung ihrer Implementierung bereit.

Beispiel:

{
  "component": "button",
  "requirements": "Preciso de uma ação principal para confirmar o formulário."
}

Der Prompt stellt dem Modell die relevante Dokumentation der Komponente bereit, damit die Implementierung auf dem GovBR-DS basiert.


review_govbr_component

Stellt die Komponentendokumentation zusammen mit einem Codeausschnitt bereit, der überprüft werden soll.

Beispiel:

{
  "component": "button",
  "code": "<button class=\"br-button\">Enviar</button>"
}

Die Überprüfung kann dann die bereitgestellte Implementierung mit den in der synchronisierten Dokumentation verfügbaren Richtlinien vergleichen.


check_govbr_accessibility

Stellt die Barrierefreiheitsrichtlinien einer Komponente bereit, um die Überprüfung einer Implementierung zu unterstützen.

Beispiel:

{
  "component": "button",
  "code": "<button class=\"br-button circle\"><i class=\"fas fa-plus\"></i></button>"
}

Der MCP-Server führt den empfangenen Code weder aus noch interpretiert er ihn.

Der Code wird ausschließlich als Text behandelt und dem verbundenen Modell als Kontext bereitgestellt.


Architektur

src/
├── data/
│   ├── components.ts
│   └── components.generated.ts
│
├── ingestion/
│   ├── gitlab-client.ts
│   ├── component-parser.ts
│   └── component-sync.ts
│
├── services/
│   ├── component.service.ts
│   └── search.service.ts
│
├── tools/
│   ├── list-components.ts
│   ├── get-component.ts
│   └── search-docs.ts
│
├── resources/
│   ├── register-resources.ts
│   ├── component.resource.ts
│   └── accessibility.resource.ts
│
├── prompts/
│   ├── register-prompts.ts
│   ├── implement-component.prompt.ts
│   ├── review-component.prompt.ts
│   └── accessibility-review.prompt.ts
│
├── formatters/
│   └── component-markdown.ts
│
├── types/
│
└── index.ts

scripts/
└── sync-components.ts

Der Hauptablauf der Anwendung ist:

                    Cliente MCP
                        │
                        ▼
                  govbr-ds-mcp
                        │
          ┌─────────────┼─────────────┐
          │             │             │
        Tools       Resources       Prompts
          │             │             │
          └─────────────┼─────────────┘
                        ▼
                 Services locais
                        │
                        ▼
              Dados sincronizados
                        ▲
                        │
               sync:components
                        ▲
                        │
               GovBR-DS oficial

Schnellstart

  • Node.js 22+

  • npm

Es ist nicht erforderlich, das Paket zu klonen oder global zu installieren. MCP-Clients können den veröffentlichten Server direkt über npx starten:

npx -y govbr-ds-mcp

Der Server verwendet den MCP-Transport stdio und arbeitet mit den im Paket enthaltenen GovBR-DS-Daten, ohne HTTP-Aufrufe während der Abfragen.

Konfiguration in MCP-Clients

Claude Desktop

Fügen Sie den Server zur Konfigurationsdatei von Claude Desktop hinzu:

{
  "mcpServers": {
    "govbr-ds": {
      "command": "npx",
      "args": ["-y", "govbr-ds-mcp"]
    }
  }
}

Nach dem Speichern der Datei starten Sie Claude Desktop neu.

Siehe auch die MCP-Dokumentation von Claude.

Claude Code

Registrieren Sie den Server über das Terminal:

claude mcp add govbr-ds -- npx -y govbr-ds-mcp

Verwenden Sie claude mcp list, um die Registrierung zu bestätigen.

Codex

Fügen Sie Folgendes zur Datei ~/.codex/config.toml hinzu:

[mcp_servers.govbr-ds]
command = "npx"
args = ["-y", "govbr-ds-mcp"]

Sie können die Registrierung auch über das Terminal vornehmen:

codex mcp add govbr-ds -- npx -y govbr-ds-mcp

Starten Sie Codex neu, nachdem Sie die Konfiguration manuell geändert haben.

Siehe auch die MCP-Dokumentation von Codex.

Kiro

Öffnen oder erstellen Sie in Kiro .kiro/settings/mcp.json im Workspace. Um den Server global verfügbar zu machen, verwenden Sie ~/.kiro/settings/mcp.json:

{
  "mcpServers": {
    "govbr-ds": {
      "command": "npx",
      "args": ["-y", "govbr-ds-mcp"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Öffnen Sie nach dem Speichern das MCP-Panel von Kiro und bestätigen Sie, dass govbr-ds verbunden ist.

Siehe auch die MCP-Dokumentation von Kiro.


Lokale Entwicklung

Klonen Sie das Repository und installieren Sie die Abhängigkeiten:

git clone https://github.com/FelipeVergaraChico/govbr-ds-mcp.git
cd govbr-ds-mcp
npm install

Ausführen des MCP-Servers

Starten Sie den Server im Entwicklungsmodus:

npm run dev

Der Server verwendet den MCP-Transport stdio.

Da stdout für die Kommunikation des MCP-Protokolls reserviert ist, müssen Anwendungsprotokolle an stderr gesendet werden.

Vermeiden Sie:

console.log("Servidor iniciado");

Bevorzugen Sie:

console.error("Servidor iniciado");

MCP Inspector

Das Projekt kann mit dem MCP Inspector getestet werden.

Führen Sie aus:

npx @modelcontextprotocol/inspector npx -y govbr-ds-mcp

Im Inspector können die verfügbaren Funktionen getestet werden.

Tools

list_components
get_component
search_docs

Resources

govbr-ds://catalog
govbr-ds://components/{slug}
govbr-ds://components/{slug}/accessibility

Prompts

implement_govbr_component
review_govbr_component
check_govbr_accessibility

Synchronisieren der GovBR-DS-Dokumentation

Um den lokalen Index zu aktualisieren:

npx tsx scripts/sync-components.ts

Der Synchronisierungsprozess:

  1. greift über die GitLab-API auf das öffentliche GovBR-DS-Repository zu;

  2. identifiziert die dokumentierten Komponenten;

  3. lädt die Markdown-Dateien jeder Komponente herunter;

  4. lädt die Barrierefreiheitsdokumentation herunter, sofern verfügbar;

  5. interpretiert die Markdown-Dateien;

  6. normalisiert die Daten;

  7. erzeugt den lokalen Datensatz, der vom MCP verwendet wird.

Die erzeugten Daten werden gespeichert unter:

src/data/components.generated.ts

Die Datei wird automatisch erzeugt und darf nicht manuell bearbeitet werden.

Während des normalen Betriebs fragt der MCP-Server GitLab nicht ab.

Dadurch können die Tools, Resources, Prompts und die Suche auch ohne Internetverbindung genutzt werden.


Ausführen der Tests

Führen Sie aus:

npm test

Die Testsuite deckt Bereiche ab wie:

  • Markdown-Parsing;

  • Komponentensuche;

  • case-insensitive Suche;

  • Normalisierung von Akzenten;

  • Aliase;

  • Kanonisierung;

  • Suchranking;

  • Snippet-Generierung;

  • MCP-Tools;

  • MCP-Resources;

  • MCP-Prompts;

  • Formatierung der Dokumentation;

  • Behandlung nicht vorhandener Komponenten.

Die Unit-Tests hängen nicht von der Verfügbarkeit von GitLab ab.


Entwicklung

Installieren Sie die Abhängigkeiten:

npm install

Führen Sie den Server aus:

npm run dev

Führen Sie die Tests aus:

npm test

Aktualisieren Sie die lokale Dokumentation:

npx tsx scripts/sync-components.ts

Öffnen Sie den MCP Inspector:

npx @modelcontextprotocol/inspector npx tsx src/index.ts

Datenquelle

Die in diesem Projekt verwendete Dokumentation stammt aus dem offiziellen Repository des GovBR Design Systems:

GovBR-DS

Der aktuelle Erfassungsprozess verwendet hauptsächlich:

ds/componentes/

Die Komponentendokumentation weist normalerweise eine ähnliche Struktur auf wie:

ds/componentes/button/
├── button.md
├── button-access.md
└── imagens/

Die Hauptdatei enthält in der Regel Informationen wie:

  • Beschreibung;

  • Verwendung;

  • Anatomie;

  • Typen;

  • Verhalten;

  • Spezifikationen.

Sofern verfügbar, enthält die Datei *-access.md die spezifischen Barrierefreiheitsrichtlinien.

Nicht alle Komponenten besitzen exakt denselben Dateisatz.

Der Synchronisierungsprozess wurde entwickelt, um mit diesen Unterschieden umzugehen, ohne die Erzeugung des Datensatzes zu unterbrechen.


Projektprinzipien

Offizielle Dokumentation zuerst

Wann immer möglich, sollten die vom MCP bereitgestellten Informationen auf der synchronisierten offiziellen Dokumentation des GovBR-DS basieren.

Das Ziel ist es, Situationen zu reduzieren, in denen ein KI-Agent eine Regel oder ein Verhalten erfindet, das es im Design System nicht gibt.


LLM-unabhängig

Der MCP-Server ist nicht abhängig von:

  • OpenAI;

  • Anthropic;

  • Google;

  • lokalen Modellen;

  • einem anderen KI-Anbieter.

Das Modell liegt in der Verantwortung des verbundenen MCP-Clients.


Lokale Laufzeit

Externe Anfragen werden während der Synchronisierung der Dokumentation verwendet, nicht bei normalen MCP-Abfragen.

npx tsx scripts/sync-components.ts
        │
        └── Internet necessária

npm run dev
        │
        └── Documentação local

Einfache Suche vor komplexer Infrastruktur

Die aktuelle Suche verwendet ein deterministisches Textranking.

Das Projekt ist nicht abhängig von:

  • Embeddings;

  • Vektordatenbank;

  • RAG-Infrastruktur;

  • externem Suchdienst.

Für die aktuelle Dokumentationsmenge hält eine gut strukturierte lokale Suche das Projekt einfacher, vorhersehbarer und schlanker.


Kleine Antworten

Das Tool search_docs gibt relevante Snippets zurück, anstatt ganze Dokumente an das Modell zu senden.

Das hilft, Folgendes zu reduzieren:

  • Kontextmenge;

  • Token-Verbrauch;

  • irrelevante Informationen;

  • übermäßig große Antworten.

Wenn das vollständige Dokument benötigt wird, kann der Agent get_component oder die MCP-Resources verwenden.


Roadmap

Abgeschlossen

  • MCP-Server mit stdio-Transport

  • Auflistung der Komponenten

  • Einzelabfrage von Komponenten

  • Synchronisierung der GovBR-DS-Dokumentation

  • strukturierter Markdown-Parser

  • automatische Erzeugung des lokalen Datensatzes

  • lokale Suche in der Dokumentation

  • Relevanzranking

  • Normalisierung portugiesischer Abfragen

  • MCP-Resources

  • Barrierefreiheits-Resources

  • Komponentenkatalog

  • MCP-Prompts

  • Autovervollständigung von Komponenten in den Prompts

Geplant

  • offizielle HTML- und CSS-Implementierungsbeispiele

  • Integration mit @govbr-ds/core

  • Dokumentation der GovBR-Webkomponenten

  • Dokumentation der GovBR-React-Komponenten

  • Implementierungsbeispiele pro Komponente

  • Validierung von GovBR-DS-Code

  • Hilfsfunktionen für die Barrierefreiheitsvalidierung

  • Veröffentlichung auf npm

  • Veröffentlichung im MCP-Registry

  • HTTP-Transport


Verwandtes Projekt

Dieses MCP wurde entwickelt, um die Skill govbr-design-system zu ergänzen.

Die beiden Projekte haben unterschiedliche Verantwortlichkeiten:

govbr-design-system
        │
        └── Instruções, regras e boas práticas
            para orientar agentes de IA

govbr-ds-mcp
        │
        └── Documentação, busca, Resources,
            Tools e Prompts

Sie können zusammen von kompatiblen Agenten verwendet werden.

Konzeptionell:

                    Agente de IA
                         │
             ┌───────────┴───────────┐
             │                       │
           Skill                    MCP
             │                       │
     Como se comportar       O que a documentação diz
     Boas práticas           Componentes
     Regras de uso           Acessibilidade
     Orientações             Busca
                             Resources

So können Sie beitragen

Beiträge sind willkommen.

Einige interessante Bereiche für Beiträge:

  • Verbesserung des Dokumentationsparsers;

  • Verbesserung der Suchrelevanz;

  • Erstellung neuer Tests;

  • Unterstützung neuer offizieller GovBR-DS-Quellen;

  • Verbesserung der Kompatibilität mit MCP-Clients;

  • Unterstützung der offiziellen Bibliotheken;

  • Identifizierung nicht dokumentierter Komponenten;

  • Korrektur falsch interpretierter Daten.

Bevor Sie einen Pull Request senden:

npm test

Stellen Sie außerdem sicher, dass das Projekt weiterhin den im Repository verwendeten Typecheck/Build besteht.


Hinweis

govbr-ds-mcp ist ein unabhängiges Open-Source-Projekt.

Es wird nicht von der brasilianischen Bundesregierung oder dem für das GovBR Design System verantwortlichen Team gewartet, befürwortet oder offiziell unterstützt.

Die Dokumentation und die Ressourcen von GovBR-DS, die vom Projekt verwendet werden, unterliegen weiterhin den Lizenzen und Bedingungen ihrer jeweiligen Originalprojekte.


Lizenz

Siehe die Datei LICENSE für Informationen zur Lizenz dieses Projekts.

Available Tools

3 tools
get_componentA

Obtém a documentação oficial sincronizada completa de um componente do GovBR Design System. Use quando já souber qual componente GovBR-DS precisa consultar.

NameRequiredDescriptionDefault
nameYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The tool name and description imply a read-only operation without side effects, but it does not explicitly state that the operation is safe or what the response format will be. Since no annotations are provided, the description carries the burden but remains reasonably transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of one functional sentence and a usage note. It is well-structured and directly addresses the tool's purpose without unnecessary verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides sufficient context for a simple retrieval tool, indicating the source (GovBR Design System) and the condition for use (knowing the component). It does not detail the output structure, but given the lack of an output schema and the straightforward nature of the operation, it is adequately complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'name' is defined in the schema with type and minLength but no description. The tool description implies that 'name' should be the component name, but does not provide explicit format or examples. The parameter semantics are only partially conveyed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves complete official documentation for a specific GovBR Design System component, and explicitly notes it should be used when the component name is already known, distinguishing it from the sibling tools list_components and search_docs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use the tool: 'Use quando já souber qual componente GovBR-DS precisa consultar.' This clearly indicates it is for direct retrieval by name, contrasting with listing or searching.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_componentsA

Lista os componentes documentados do GovBR Design System disponíveis neste servidor. Use para descobrir quais componentes GovBR-DS podem ser consultados.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries the full burden. It discloses an important scope constraint (components 'available on this server'), but does not describe output format, ordering, pagination, or confirm the read-only nature beyond the verb 'list'. Adequate for a simple operation, but lacks richer behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary action and resource, and every sentence adds value. No fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless listing tool with no output schema, the description is sufficiently complete: it states what is listed, the scope (this server), and the intended use case. While it doesn't specify the return shape, the simplicity of a list tool makes this an acceptable gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema covers 100% (empty schema). Baseline for 0 params is 4. The description adds no parameter-specific meaning, but none is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool 'Lists the documented components of GovBR Design System available on this server' with a specific verb and resource. It also distinguishes itself from siblings by framing this as the discovery gateway for which GovBR-DS components can be queried, contrasting with get_component and search_docs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage context: 'Use to discover which GovBR-DS components can be consulted.' This tells the agent when to invoke the tool, though it does not explicitly name alternatives or exclusionary conditions. A clear, non-exhaustive guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_docsA

Pesquisa na documentação oficial sincronizada do GovBR Design System (GovBR-DS). Use esta ferramenta sempre que precisar responder perguntas sobre componentes, uso, comportamento, acessibilidade, padrões ou recomendações do GovBR-DS. Prefira esta fonte em vez de pesquisa web para dúvidas sobre GovBR-DS.

NameRequiredDescriptionDefault
limitNo
queryYes
componentNo

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does not mention side effects, read-only nature, authentication, rate limits, or any behavioral traits beyond the obvious 'search' action. The description adds no insight into what happens during the search or what the response contains.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences, front-loaded with purpose, and goes straight to the point. No fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is moderately simple but has no output schema, no annotations, and no parameter documentation. The description covers the what and when but omits return format, query construction, component filter usage, and potential limitations. Given the available structured data, it remains incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

schema_description_coverage is 0% and the description does not reference any parameters (query, limit, component). It only implies searching for components but does not explain how to use parameters or their semantics. The description fails to compensate for the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Pesquisa na documentação oficial sincronizada do GovBR Design System' (searches the official synchronized documentation), which clearly identifies the action (search) and resource (GovBR-DS docs). It distinguishes from siblings like list_components and get_component by focusing on searching across documentation rather than retrieving specific component details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit guidance on when to use the tool ('sempre que precisar responder perguntas sobre componentes, uso, comportamento, acessibilidade, padrões ou recomendações do GovBR-DS') and even recommends it over web search for GovBR-DS questions. It lacks an explicit 'when not to use' relative to sibling tools, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedget_component
    • First observedlist_components
    • First observedsearch_docs

TDQS

A4.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: list_components is for discovery, get_component is for retrieving full docs of a known component, and search_docs is for answering arbitrary questions across the documentation. Their usage guidance avoids ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern: list_components, get_component, and search_docs. The naming clearly signals the operation being performed, and any plural/singular variation follows conventional API naming.

Tool Count5/5

With three tools, the server is lean but well-scoped for its purpose of querying GovBR-DS documentation. Each tool earns its place by covering a distinct access mode: browsing, direct retrieval, and searching.

Completeness5/5

For a read-only documentation server, the surface is complete: users can discover available components, fetch complete documentation for a known component, and search for behavioral or accessibility guidance. No obvious dead ends or missing operations exist for the stated domain.

Maintenance

ActivitySlowing
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol implementation that enables AI-powered access to documentation resources, featuring URI-based navigation, template matching, and structured documentation management.
    9
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables searching and reading of PortOne documentation, including OpenAPI schemas and product guides, through the Model Context Protocol. It allows AI agents to easily access and integrate payment-related technical specifications into their workflows.
    8 npm
    ISC
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with direct access to the complete Godot Engine documentation, including classes, tutorials, and features. It enables developers to retrieve and analyze official documentation through natural language interfaces using the Model Context Protocol.
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLMs to query Brazilian public data such as CEP, CNPJ, DDD, exchange rates, banks, and holidays via the Model Context Protocol.
    12
    MIT