blueprint-modular
Blueprint Modular
Un instrument ne se contente pas d'afficher une valeur — il porte un jugement.

Blueprint Modular n'est pas un énième UI kit. C'est une bibliothèque
d'instruments : 104 composants métier appelables comme des fonctions,
dont une classe porte la primitive de jugement partagée
interpret(value, context) — écart au repère, tendance, anomalie, sévérité.
La sémantique est unique, pure, et vérifiée par le convergence gate.
Quick start
pip install blueprint-modularimport bpm
bpm.metric(label="Chiffre d'affaires", value=125000, delta="+12%")Blueprint Modular expose une surface Python de composants bpm.* (metric, table, badge, live_gauge…), miroir fonctionnel de la surface React. Documentation : https://blueprint-modular.com
Related MCP server: Arco Lexicon
Vivant
Vitrine — https://blueprint-modular.com
App de démonstration — https://app.blueprint-modular.com
Connecteur MCP (lecture seule, sans auth) —
https://mcp.blueprint-modular.com/api/mcp· doc https://blueprint-modular.com/mcp
Installer
React / TypeScript (npm)
npm install @blueprint-modular/core// Toujours en namespace — ne jamais destructurer.
import { bpm } from '@blueprint-modular/core'
import '@blueprint-modular/core/dist/style.css'Python (PyPI)
pip install blueprint-modular
bpm run app.pyIntégration complète (CSS, Tailwind, SSR, API des composants) :
packages/core/USAGE.md. Référence machine pour
agents : public/llms.txt.
Preuve — convergence gate
npm run gateUne commande valide toute la surface : types (tsc), build (vite),
synchro doc, smoke render de chaque bpm.*, et snapshot des props
(toute suppression/renommage = échec — garantie θ-additive).
Écosystème
Blueprint Maker — du prompt à l'app
Next.js, en composants bpm.*. Modular est le substrat ; Maker le fabrique.
Aller plus loin
Positionnement — https://blueprint-modular.com/presentation
Catalogue MCP —
docs/MCP_CONNECTOR.mdRéférence machine — https://blueprint-modular.com/llms.txt
Licence
@blueprint-modular/core : Apache-2.0 · blueprint-modular (PyPI) : Apache-2.0
Available Tools
4 toolsget_componentDétail d'un composantARead-only
Retourne le détail complet d'un composant : description, props/types, exemple d'usage, composants associés/parents et couche sémantique (rôle, frame Ω, type d'indicateur, directionnalité, guidance agent — valeurs proposées, ontologie curée par l'humain). À UTILISER après list/search pour obtenir la signature exacte ET le sens du composant avant de générer du code. Le nom accepte 'bpm.metric' ou 'metric'.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Nom du composant (ex. 'bpm.metric' ou 'metric'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the description does not need to cover safety. It adds substantial behavioral context by listing the comprehensive return payload (semantic layer, ontology, example, props/types), which goes beyond the annotation and explains what the agent will receive. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded: one sentence enumerates the detailed content, followed by a direct usage directive. Every word serves a purpose, with no redundant filler, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must convey what is returned, and it does so thoroughly by listing all content categories. It also explains the name format and usage context. Minor gaps exist regarding exact formatting of props/types or error behavior, but for a single-parameter read tool, this is sufficient for an agent to select and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the 'name' parameter. The description repeats the accepted alias ('bpm.metric' or 'metric') without adding new semantic meaning beyond the schema, keeping the score at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns the complete detail of a component, enumerating the specific content (description, props/types, usage example, associated components, semantic layer). This distinguishes it from siblings list-components and search-components, which are for discovery, making the purpose unambiguous and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to use after list/search and before generating code, positioning this tool as the one for obtaining the exact signature and semantic meaning. This gives clear workflow context and implies it is not for initial discovery, effectively differentiating from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_componentsLister les composantsARead-only
Liste les composants du design system Blueprint Modular (nom + description en une ligne). À UTILISER pour parcourir le catalogue ou découvrir ce qui existe dans une catégorie donnée. Résultat paginé par curseur (réutiliser 'nextCursor' pour la page suivante). Catégories : Affichage de données, Feedback, Graphiques, IA & Spécialisés, Identification & traçabilité, Interaction, Mise en page, Média, Navigation, Utilitaires.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Curseur de pagination renvoyé par un appel précédent (nextCursor). Optionnel. | |
| category | No | Filtre par catégorie exacte ou partielle (ex. 'Graphiques'). Optionnel. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description goes beyond by disclosing pagination via 'nextCursor', the return format (name + one-line description), and the list of available categories. This adds meaningful behavioral context that is not present in the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact: a purpose statement, a usage directive, a pagination note, and a category list. Each sentence serves a distinct purpose, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no output schema, the description specifies what is returned (name + one-line description) and how pagination works. Combined with the rich annotations and clear usage context, it is fully complete for a list tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds extra value by listing the valid categories (e.g., Graphiques, Feedback), which the schema does not provide as an enum, and reinforces how to reuse 'nextCursor' for pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists components of the Blueprint Modular design system with name and one-line description. It explicitly frames the use case as browsing the catalog or discovering what exists in a category, which distinguishes it from the sibling search_components, get_component, and suggest_composition tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit usage context ('À UTILISER pour parcourir le catalogue ou découvrir ce qui existe dans une catégorie donnée'), making the primary use case clear. However, it does not explicitly state when not to use it or mention alternative tools by name, so it falls short of the full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_componentsRechercher des composantsARead-only
Recherche les composants pertinents pour une requête en texte libre (match sur nom, description, catégorie et tags), triés par pertinence. À UTILISER quand on cherche un composant par fonction ou mot-clé (ex. 'tableau triable', 'graphique', 'upload fichier'). Résultat paginé par curseur.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Termes de recherche en langage naturel. | |
| cursor | No | Curseur de pagination renvoyé par un appel précédent (nextCursor). Optionnel. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as read-only, and the description adds valuable behavioral details such as matching fields (name, description, category, tags), relevance sorting, and cursor-based pagination. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each conveying essential information: purpose, usage context, and pagination. No redundant wording; information density is high.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with two well-documented parameters and good annotations, the description covers what it does, when to use it, and pagination. It doesn't describe the result item structure, but in the absence of an output schema and given sibling tools, this is an acceptable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description goes beyond the schema by explaining the cursor's role in pagination ('Résultat paginé par curseur') and clarifying that query accepts natural language terms, adding practical meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action: 'Recherche les composants pertinents' with a defined search mechanism over name, description, category, and tags, sorted by relevance. It strongly distinguishes itself from sibling tools like list_components (likely a full listing) and get_component (likely by ID) by focusing on free-text search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage direction: 'À UTILISER quand on cherche un composant par fonction ou mot-clé' with concrete examples. It doesn't explicitly mention when NOT to use it or name alternatives, but the context is clear and practical.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_compositionSuggérer une compositionARead-only
Suggère une liste de composants Blueprint Modular répondant à un besoin décrit en langage naturel, en raisonnant sur la couche sémantique (rôle, frame Ω, guidance) : chaque suggestion explicite son sens (meaning) et ses associations sémantiques (pairWith). À UTILISER pour partir d'une intention d'écran (ex. 'un dashboard avec des métriques et un graphique') et obtenir les briques pertinentes. Réponse bornée.
| Name | Required | Description | Default |
|---|---|---|---|
| need | Yes | Description du besoin / de l'écran à construire. | |
| limit | No | Nombre max de suggestions (défaut 8 ; plafonné à 12). Optionnel. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, and the description adds useful behavioral context: it mentions the response is bounded ('Réponse bornée') and that each suggestion includes its meaning and semantic associations (pairWith). This goes beyond the annotation without contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary purpose. Every phrase adds value, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With two parameters and no output schema, the description provides essential context: the tool's semantic reasoning, output structure (meaning, pairWith), and bounded response. It could mention the default/max limit explicitly, but the schema covers that, making it sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing baseline 3. The description adds value by giving a concrete example of the 'need' parameter ('un dashboard avec des métriques et un graphique'), clarifying expected input beyond the schema's generic description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool suggests a list of Blueprint Modular components based on a natural language need, using the semantic layer. It distinguishes itself from siblings (list_components, search_components, get_component) by specifying its semantic reasoning and the screen-intention use case.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to use the tool when starting from a screen intention (e.g., 'un dashboard avec des métriques et un graphique') to obtain relevant components. It provides clear context but does not explicitly name alternatives or state when not to use this tool.
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. Dates show when Glama detected each change.
4 tool updates
v0.1.60- First observed
get_component - First observed
list_components - First observed
search_components - First observed
suggest_composition
TDQS
The tools are mostly distinct: list_components and search_components both return component lists but differ in browsing vs. keyword search, and their descriptions clearly define when to use each. get_component and suggest_composition serve unique roles, so confusion is minimal.
All tool names follow a consistent verb_noun pattern with lowercase and underscores: list_components, search_components, get_component, suggest_composition. The slight variance in nouns (components, component, composition) is semantically justified and does not break the pattern.
Four tools is well-scoped for a design system component catalog: browse, search, fetch details, and semantic composition suggestion. Each earns its place and the count feels neither thin nor bloated.
The set covers the full read-only lifecycle of the domain: discovering components (list/search), retrieving deep detail (get_component), and translating an intent into a component set (suggest_composition). No obvious gaps exist for a reference server.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Software component catalog: search your org's services, docs, APIs, dependencies, and ownership.
Read-only MCP over the Mzizi design system registry — nodes, components, ownership.
Read-only catalogue search: JVM developer tooling, ML models, compliance APIs, siSwati LLM.
Agent-design pattern guidance via 8 hosted read-only tools; Streamable HTTP, no auth, one Release.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that exposes the @bunge/ds-components design system catalog, allowing AI assistants to list, search, and retrieve component details including inputs, outputs, usage examples, and import instructions.4MIT

Arco Lexiconofficial
AlicenseNot gradedqualityBmaintenanceCanonical vocabulary server for autonomous business design. Exposes the Arco Lexicon as seven MCP tools: term lookup, related terms, alignment verification, citation formatting, source retrieval, term listing, and term suggestion. No authentication required. Streamable HTTP transport.MIT- AlicenseNot gradedqualityDmaintenanceProvides resources, tools, and prompts for a Design System via MCP protocol, enabling component search, reading, and related component discovery.225MIT
- AlicenseNot gradedqualityAmaintenanceA read-only MCP server that provides AI coding agents with a queryable contract for design system tokens, components, patterns, and anti-patterns.201Apache 2.0
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/Blueprint-Master/blueprint-modular'
If you have feedback or need assistance with the MCP directory API, please join our Discord server