protogrid

Search / io.github.mzizi-dev/mzizi-mcp

mzizi-mcp

R0· no sign-in

Mzizi design system MCP: components, tokens, skills and docs. Free; sign-in only for Fundi.

v0.13.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality69needs work
Trust97of 100
Uptime, 30 days100%
Latency p50824 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "mzizi-mcp": {
      "type": "http",
      "url": "https://mcp.mzizi.dev/mcp"
    }
  }
}
claude mcp add --transport http mzizi-mcp https://mcp.mzizi.dev/mcp
[mcp_servers.mzizi-mcp]
url = "https://mcp.mzizi.dev/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mzizi-mcp": {
      "type": "remote",
      "url": "https://mcp.mzizi.dev/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "mzizi-mcp": {
      "type": "http",
      "url": "https://mcp.mzizi.dev/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mzizi-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLm16aXppLmRldi9tY3AifQ%3D%3D"
}
{
  "servers": {
    "mzizi-mcp": {
      "type": "http",
      "url": "https://mcp.mzizi.dev/mcp"
    }
  }
}
{
  "mcpServers": {
    "mzizi-mcp": {
      "httpUrl": "https://mcp.mzizi.dev/mcp"
    }
  }
}
extensions:
  "mzizi-mcp":
    enabled: true
    name: "mzizi-mcp"
    type: streamable_http
    uri: "https://mcp.mzizi.dev/mcp"
    timeout: 300

Quality 69 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations14 of 14 tools declare readOnlyHint or destructiveHint
  • warn
    tools.directory_hints5 of 14 tools declare all four hints; missing: mzizi_get_component (destructiveHint); mzizi_check_accessibility (destructiveHint); mzizi_search (destructiveHint); …
  • pass
    tools.token_costabout 3,588 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability25 · weight 15
  • warn
    stability.changes6 tool changes in 30 days
  • fail
    stability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvabledeps.dev does not know @nyuchi/[email protected]

14 tools, about 3,588 tokens to load them all · tool set a6b9f8d38586 · tools last changed 2026-10-06 · checked 2026-10-19 16:20 UTC

Tool changes

  • mzizi_get_skillschangeddescription, input schema
    before

    List the published Mzizi agent skills, or fetch one in full. Skills are what an agent loads first. Served from the skill files bundled into this server at build time, so they are exactly the text in mzizi-dev/agent-tools at the deployed commit.

    after · 56% of words in common

    List the published Mzizi agent skills, or fetch one in full. Skills are what an agent loads first. Each skill has a category: `dev` (how every agent works in every repo: digital-hygiene and progress-report — load these before any dev work), `design`, `language` or `build`. Pass `category` to get every skill in it in full (e.g. category=dev), or `name` for one skill. Served from the skill files bundled into this server at build time, so they are exactly the text in mzizi-dev/agent-tools at the deployed commit.

  • mzizi_list_componentschangedinput schema
  • mzizi_get_componentchangeddescription
    before

    Fetch one component in full, Rust first. When the component has a Mzizi Roots (Rust, Dioxus) implementation, `rust` comes first: its crate, the `cargo add` line, its CONTRACT clause block and the `.rs` source inline. `react` follows: the React build (deprioritised; it keeps working, new work goes to Rust), shadcn-shaped with files[] inline and its `npx shadcn add` line. With no Rust, `rust` is null and `lead` is "react". Add docs (use cases, variants, a11y: the documented contract) and version history (from the changelog) with `include`. Former nyuchi-* names resolve to their mzizi-* successors.

    after · 86% of words in common

    Fetch one component in full, Rust first. When the component has a Mzizi Roots (Rust, Dioxus) implementation, `rust` comes first: its crate, the `cargo add` line, its CONTRACT clause block and the `.rs` source inline. `astro` follows when the component has a pure Astro implementation (mzizi-registry#397): its `mzizi add --target astro` line, the files it installs into src/components/mzizi/ and their dependencies; null otherwise. `react` follows: the React build (deprioritised; it keeps working, new work goes to Rust), shadcn-shaped with files[] inline and its `npx shadcn add` line. With no Rust, `rust` is null and `lead` is "react". Add docs (use cases, variants, a11y: the documented contract) and version history (from the changelog) with `include`. Former nyuchi-* names resolve to their mzizi-* successors.

  • mzizi_list_componentschangeddescription, input schema
    before

    The registry index, optionally filtered by node, owner, collection or type. Returns a lean row per component (name, type, node, owner, collection) — use get_component for one component in full, or search when you only have words. Paged: up to 400 rows per call, with total and hasMore reported.

    after · 80% of words in common

    The registry index, optionally filtered by node, owner, collection, type or rust. Returns a lean row per component (name, type, node, owner, collection, and rustCrate when it has a Mzizi Roots (Rust) implementation, which is the lead) — use get_component for one component in full, or search when you only have words. Paged: up to 400 rows per call, with total and hasMore reported.

  • mzizi_get_componentchangeddescription, input schemameaning changed
    before

    Fetch one component in full: metadata, dependencies, registryDependencies, files[] with source inline, docs (use cases, variants, a11y) and version history (from the changelog). One read, everything. Former nyuchi-* names resolve to their mzizi-* successors.

    after · 40% of words in common

    Fetch one component in full, Rust first. When the component has a Mzizi Roots (Rust, Dioxus) implementation, `rust` comes first: its crate, the `cargo add` line, its CONTRACT clause block and the `.rs` source inline. `react` follows: the React build (deprioritised; it keeps working, new work goes to Rust), shadcn-shaped with files[] inline and its `npx shadcn add` line. With no Rust, `rust` is null and `lead` is "react". Add docs (use cases, variants, a11y: the documented contract) and version history (from the changelog) with `include`. Former nyuchi-* names resolve to their mzizi-* successors.

  • mzizi_searchchangeddescription
    before

    Search the registry by words: components, conventions, AI instruction sets and releases. Start here when you do not know the exact name of what you want. Documentation pages are searched by the docs_* tools.

    after · 60% of words in common

    Search the registry by words: components, conventions, AI instruction sets and releases. Start here when you do not know the exact name of what you want. A component hit with `rustCrate` has a Mzizi Roots (Rust) implementation, which is the lead; at an equal score it ranks first. Documentation pages are searched by the docs_* tools.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 97 / 100

provenance90
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +website +reachable +uptime-100% +updated-13d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@nyuchi/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.mzizi.dev/mcp streamable-httpnoneyes100%824 ms2025-11-252026-10-19
packageregistryversionruntimesecrets
@nyuchi/mzizi-mcpnpm0.13.0–

Tools (14)

docs_query_docs_filesystem_mziziread-only[docs.mzizi.dev] Run a read-only shell-like query against a virtualized, in-memory filesystem rooted at `/` that contains ONLY the Mzizi documentation pages. This is NOT a shell on any real machine — nothing runs on the user's computer, the server host, or any network. The filesystem is a sandbox backed by documentation chunks. This is how you read documentation pages: there is no separate "get page" tool. To read a page, pass its `.mdx` path to `head` or `cat` — a page at the URL path `/some/page` lives at `/some/page.mdx`. To search the docs with exact keyword or regex matches, use `rg`. To understand the docs structure, use `tree` or `ls`. **Paths are specific to this site — never guess them.** Discover real paths with `tree / -L 2`, `ls /`, or the search tool before reading. If a path does not exist, that only means the guess was wrong; it does NOT mean the topic is undocumented — use `rg -il "keyword" /` to find where it is covered. **Workflow:** Start with the search tool for broad or conceptual queries like "how to authenticate" or "rate limiting". Use this tool when you need exact keyword/regex matching, structural exploration, or to read the full content of a specific page by path. Supported commands: rg (ripgrep), grep, find, tree, ls, cat, head, tail, stat, wc, sort, uniq, cut, sed, awk, jq, plus basic text utilities. No writes, no network, no process control. Run `--help` on any command for usage. Each call is STATELESS: the working directory always resets to `/` and no shell variables, aliases, or history carry over between calls. If you need to operate in a subdirectory, chain commands in one call with `&&` or pass absolute paths (e.g., `cd /some-directory && ls` or `ls /some-directory`). Do NOT assume that `cd` in one call affects the next call. Examples (replace the placeholder paths with real ones from `tree` or search): - `tree / -L 2` — see the top-level directory layout - `rg -il "rate limit" /` — find all files mentioning "rate limit" - `rg -C 3 "apiKey" /some-directory/` — show matches with 3 lines of context around each hit - `head -80 /some/page.mdx` — read the top 80 lines of a specific page - `head -80 /page-one.mdx /page-two.mdx /section/page-three.mdx` — read multiple pages in one call - `cat /some/page.mdx` — read a full page when you need everything Output is truncated to 30KB per call. Prefer targeted `rg -C` or `head -N` over broad `cat` on large files. To read only the relevant sections of a large file, use `rg -C 3 "pattern" /path/file.mdx`. Batch multiple file reads into a single `head` or `cat` call whenever possible. When referencing pages in your response to the user, convert filesystem paths to URL paths by removing the `.mdx` extension. For example, `/some/page.mdx` becomes `/some/page`.
docs_search_mziziread-only[docs.mzizi.dev] Search across the Mzizi knowledge base to find relevant information, code examples, API references, and guides. Use this tool when you need to answer questions about Mzizi, find specific documentation, understand how features work, or locate implementation details. The search returns contextual content with titles and direct links to the documentation pages. If you need the full content of a specific page, use the query_docs_filesystem tool to `head` or `cat` the page path (append `.mdx` to the path returned from search — e.g. a result at `/some/page` is read with `head -200 /some/page.mdx`).
docs_submit_feedback[docs.mzizi.dev] Report a problem with this documentation site so the docs team can fix it. Use when a documentation page is incorrect, outdated, confusing, incomplete, or has a broken example. This is for feedback about the documentation content itself — not for product support requests or feedback about this tool or assistant.
mzizi_check_accessibilityread-onlyContrast and colour-vision checks against the Mzizi APCA/AAA floor. Computed locally — no network, no upstream dependency.
mzizi_fundidestructiveDelegate a task to the fundi agent, or check on one. Submit-and-poll: `submit` returns a task id immediately and never waits for the run. Needs sign-in: fundi runs as your Mzizi console user.
mzizi_get_architectureread-onlyThe Mzizi DNA double helix — nodes, rungs and strands — with live counts. Pass `node` for one node's covenant, stakeholder and implementation rules.
mzizi_get_componentread-onlyFetch one component in full, Rust first. When the component has a Mzizi Roots (Rust, Dioxus) implementation, `rust` comes first: its crate, the `cargo add` line, its CONTRACT clause block and the `.rs` source inline. `astro` follows when the component has a pure Astro implementation (mzizi-registry#397): its `mzizi add --target astro` line, the files it installs into src/components/mzizi/ and their dependencies; null otherwise. `react` follows: the React build (deprioritised; it keeps working, new work goes to Rust), shadcn-shaped with files[] inline and its `npx shadcn add` line. With no Rust, `rust` is null and `lead` is "react". Add docs (use cases, variants, a11y: the documented contract) and version history (from the changelog) with `include`. Former nyuchi-* names resolve to their mzizi-* successors.
mzizi_get_doctrineread-onlyHow to build here: Ubuntu pillars and principles, mzizi conventions, and the AI instruction sets.
mzizi_get_skillsread-onlyList the published Mzizi agent skills, or fetch one in full. Skills are what an agent loads first. Each skill has a category: `dev` (how every agent works in every repo: digital-hygiene and progress-report — load these before any dev work), `design`, `language` or `build`. Pass `category` to get every skill in it in full (e.g. category=dev), or `name` for one skill. Served from the skill files bundled into this server at build time, so they are exactly the text in mzizi-dev/agent-tools at the deployed commit.
mzizi_get_tokensread-onlyThe Mzizi brand system: 21 colour families (7 minerals, 7 heritage, 7 experimental), semantic colours, typography, spacing, radii and the ecosystem brands. Ask for `colors` to get every colour family in one call.
mzizi_list_componentsread-onlyThe registry index, optionally filtered by node, owner, collection, type or rust. Returns a lean row per component (name, type, node, owner, collection, and rustCrate when it has a Mzizi Roots (Rust) implementation, which is the lead) — use get_component for one component in full, or search when you only have words. Paged: up to 400 rows per call, with total and hasMore reported.
mzizi_mcp_describeread-onlyWhat this MCP server exposes: its tools, which are free and which need sign-in, what each replaces, and where its data comes from.
mzizi_report_issueReport a problem with a component or the registry. It goes to your own issue desk — a Durable Object holding your reports — which reproduces it via fundi, drafts an issue body including what the reproduction actually returned, and logs it to fundi. fundi files the GitHub issue with its proposed fix in it and tracks that issue afterwards, so action 'get' shows where yours got to: filed, picked up, closed. Use 'list' to see your earlier reports and 'retry' to re-attempt one that drafted but could not be logged. Your history is included in each new issue, because a repeated complaint from one reporter is often one bug. Needs sign-in: the desk belongs to your Mzizi console user.
mzizi_searchread-onlySearch the registry by words: components, conventions, AI instruction sets and releases. Start here when you do not know the exact name of what you want. A component hit with `rustCrate` has a Mzizi Roots (Rust) implementation, which is the lead; at an equal score it ranks first. Documentation pages are searched by the docs_* tools.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.github.mzizi-dev/mzizi-mcp",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.mzizi.dev/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.13.0",
  "packages": [
    {
      "version": "0.13.0",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@nyuchi/mzizi-mcp",
      "registryType": "npm"
    }
  ],
  "repository": {
    "url": "https://github.com/mzizi-dev/agent-tools",
    "source": "github",
    "subfolder": "mzizi-mcp"
  },
  "websiteUrl": "https://mzizi.dev",
  "description": "Mzizi design system MCP: components, tokens, skills and docs. Free; sign-in only for Fundi."
}