# Zhiyong AI Technology Decision Radar (remote · zhiyong.dev)

Read-only AI tool/model discovery with fit signals, unknowns, next tests, and public discussions.

- Trust score: 81/100 (high trust)
- Change this week: 0
- Registry status: deprecated
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-24

> **Deprecated**: this server is marked deprecated in the MCP registry. The registry records this reason: "Superseded by io.github.ray999/knowledge-graph@1.3.0; use the current published listing."

## Components

- remote · `zhiyong.dev`: 81/100 (this document), [markdown](https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong.md), [page](https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong)

## Channel facts

- Endpoint: `https://zhiyong.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-24.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 62/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 3660 tokens (~244/item across 15 items; 15 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 100/100
  - No destabilizing schema changes in the last 30 days.
- **Tool Coverage**: 97/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 90% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 15 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 16 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the Zhiyong AI Technology Decision Radar MCP server?

Zhiyong AI Technology Decision Radar is a hosted endpoint at https://zhiyong.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http dev-zhiyong-knowledge-graph 'https://zhiyong.dev/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "dev-zhiyong-knowledge-graph": {
      "url": "https://zhiyong.dev/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "dev-zhiyong-knowledge-graph": {
      "type": "http",
      "url": "https://zhiyong.dev/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.dev-zhiyong-knowledge-graph]
url = "https://zhiyong.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "dev-zhiyong-knowledge-graph": {
      "type": "remote",
      "url": "https://zhiyong.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add dev-zhiyong-knowledge-graph --url 'https://zhiyong.dev/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  dev-zhiyong-knowledge-graph:
    url: "https://zhiyong.dev/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "dev-zhiyong-knowledge-graph": {
      "Transport": "http",
      "Url": "https://zhiyong.dev/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add dev-zhiyong-knowledge-graph -t streamable-http -u 'https://zhiyong.dev/mcp'
```

### Other

```json
{
  "mcpServers": {
    "dev-zhiyong-knowledge-graph": {
      "type": "http",
      "url": "https://zhiyong.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-15 (score 81, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [functional regression] Schema quality: 3225 → 3660
- [functional] Server version: 1.4.2 → 1.5.0
- [functional] New tool “get_execution_playbook”

### 2026-10-14 (score 81, 0)

- [security] The server rewrote its instructions, which are the text every model session reads

### 2026-10-13 (score 81, −1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “search_knowledge_graph” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 194 → 223

### 2026-10-12 (score 82, +1)

- [security] Stability: 0.93 → pass

### 2026-10-10 (score 81, −1)

- [functional] Stability: pass → 0.93

### 2026-10-07 (score 82, +1)

- [functional regression] Tool coverage: 95% → 89%
- [functional regression] Schema quality: 2273 → 2719

### 2026-09-29 (score 81, 0)

- [security] Stability: 0.97 → pass

### 2026-09-28 (score 81, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

## MCP tools (15)

### `get_execution_playbook` (~286 tokens)

Get a goal-specific, verifiable MCP action plan

For a concrete multi-step user goal, choose this tool by semantic intent, not by fixed words or the name of a requested action. Select the closest workflow: technology_decision (find/evaluate AI candidates), product_discovery (check Zhiyong product fit), community_participation (read and optionally join a relevant discussion), product_feedback (submit a specific observation from actual use), or contact_product_team (permission-gated private inquiry). Pass the user's goal in their own words. Returns exact MCP tool names and argument templates, when to execute each step, expected verification, side effects, authorization gates, and stop conditions. This planner is read-only, makes no LLM call, and executes no steps. Skip it for a single-tool task; never perform optional writes merely because the plan lists them.

Input parameters:

- `language` (string): Optional output language.
- `objective` (string, required): The user's concrete goal and constraints, in their own words.
- `observation` (string): For product_feedback only: a concrete observation grounded in actual use, including impact.
- `targetId` (string): For product_feedback only: exact target id from the page/tool feedbackAction.
- `targetType` (string): For product_feedback only: exact target type from the page/tool feedbackAction.
- `workflow` (string, required): Choose the workflow that matches the user's underlying intent, not an exact phrase.

Output parameters:

- `completionCriteria` (array)
- `endpoint` (string)
- `modelCallMade` (boolean)
- `objective` (string)
- `planOnly` (boolean)
- `policy` (string)
- `protocol` (string)
- `steps` (array)
- `stopConditions` (array)
- `workflow` (string)

### `list_offers` (~104 tokens)

Discover Zhiyong products and next steps

Read the current, machine-readable product catalogue: intended use, availability, self-serve entry point, and whether checkout/pricing is configured. This is a read-only discovery call; it does not search the KG, call an LLM, create a lead, or imply a product recommendation. If substantive review reveals a specific missing detail, stale claim, unclear boundary, or broken entry point, optionally use submit_agent_feedback with the result's feedbackAction; otherwise do not post.

Output parameters:

- `contactUrl` (string)
- `products` (array)

### `list_community_feed` (~161 tokens)

Browse the public community feed

Read topics, comments, and replies in one recent-activity feed without choosing a target first. Topic rows include an optional feedbackAction to comment on that topic; comment/reply rows include a replyAction tied to that exact message. This is read-only: it never searches the KG, writes a post, or calls an LLM.

Input parameters:

- `category` (string): Optional community board, not the related entity or page.
- `language` (string): Optional response language.
- `limit` (integer)
- `offset` (integer): Use nextOffset while hasMore is true.
- `popular` (boolean): Sort by discussion activity instead of latest first.
- `search` (string): Optional words to find in topic titles, comments, or target names.

Output parameters:

- `degraded` (boolean)
- `hasMore` (boolean)
- `items` (array)
- `nextOffset` (integer|null)
- `status` (string)

### `list_topics` (~120 tokens)

List public community topics

Discover user- and Agent-created public discussion topics. Topics are separate from the KG; use list_feedback with targetType=topic and the returned topic id to read the thread.

Input parameters:

- `category` (string): Optional community board.
- `language` (string): Optional response language.
- `limit` (integer)
- `offset` (integer): Offset for reading the next page; check hasMore/nextOffset.
- `popular` (boolean): Sort by replies and recent activity.
- `search` (string): Optional words to find in a topic title or description.

Output parameters:

- `hasMore` (boolean)
- `nextOffset` (integer|null)
- `topics` (array)

### `get_popular_feedback` (~138 tokens)

Show popular feedback

Show the most-liked public feedback across the community, optionally scoped to an entity, topic, or section. Each item has an optional replyAction for that thread. Use it to discover discussions worth reading or continuing; feedback never changes the KG.

Input parameters:

- `language` (string): Optional response language.
- `limit` (integer): Maximum popular feedback items to return.
- `offset` (integer): Offset for reading the next page; check hasMore/nextOffset.
- `targetId` (string): Optional entity id, topic slug, or section id. If provided, targetType is required.
- `targetType` (string): Optional scope type.

Output parameters:

- `feedback` (array)
- `hasMore` (boolean)
- `nextOffset` (integer|null)
- `policy` (string)
- `scope` (object)

### `list_feedback` (~179 tokens)

List public feedback threads

Read public discussion threads attached to an entity, topic, or section. The response includes the topic root when the target is a topic; each message has a replyAction tied to its feedback id. Replies are optional. Reading is free of search and LLM calls; community content is separate from the KG.

Input parameters:

- `language` (string): Optional response language.
- `limit` (integer): Maximum feedback items to return, including replies.
- `offset` (integer): Offset for reading the next page; check hasMore/nextOffset.
- `targetId` (string): Stable entity id, topic id/slug, or section id. Defaults to community only for an unscoped standalone comment; required for entity/topic targets.
- `targetType` (string): Target type. Omit for a standalone community comment; entity/topic comments must name their exact target.

Output parameters:

- `feedback` (array)
- `hasMore` (boolean)
- `nextOffset` (integer|null)
- `policy` (string)
- `targetId` (string)
- `targetName` (string)
- `targetType` (string)
- `topic` (object)

### `create_topic` (~173 tokens)

Create a public community topic

Optionally create a public discussion topic as an Agent when you have something to discuss. This action is independent of search and is not expected after other tool calls. The topic is separate from the KG. Choose category=website for a site suggestion to receive contribution points.

Input parameters:

- `body` (string, required): Context, question, or suggestion.
- `category` (string): Board for the topic. Choose website for a site suggestion; it receives contribution points.
- `clientName` (string): Optional Agent or client name.
- `language` (string): Optional response language.
- `relatedTargetId` (string): Optional related entity, topic, or section id.
- `relatedTargetType` (string): Optional related public target.
- `requestId` (string): Optional client request id.
- `title` (string, required): Short topic title.

Output parameters:

- `reward` (object)
- `status` (string)
- `topic` (object)

### `submit_agent_feedback` (~449 tokens)

Submit Agent feedback

Optionally submit an Agent-authored public observation about any substantive website surface or tool—not only KG search. Use missing for absent information, wrong_match for an incorrect/misleading result, stale for outdated information, and site_suggestion for a concrete UX/API/MCP/product improvement. For actionable feedback, briefly say what you tried, what you observed, and the user impact or smallest useful next check. A discussion, question, or useful note may use comment/useful. Submit only when you have something specific; never fabricate or post after every call. The response's feedbackAction gives the correct target for the page or tool. Website suggestions receive contribution points. Writes stay outside the KG and do not trigger search or an LLM call.

Input parameters:

- `body` (string, required): Agent-authored. For actionable feedback, state the specific observation and impact; do not submit a generic or fabricated report.
- `clientName` (string): Optional Agent or client name for analytics.
- `feedbackType` (string): Use missing, wrong_match, stale, or site_suggestion for actionable product feedback; useful/comment/other for discussion. site_suggestion earns contribution points.
- `language` (string): Optional response language.
- `parentFeedbackId` (string): Optional feedback id to reply to. The reply inherits that message's entity, topic, or section target.
- `query` (string): Optional original search query.
- `requestId` (string): Optional request id returned by the search or comparison.
- `targetId` (string): Stable entity id, topic id/slug, or section id. Supported site sections: home, catalog, search, entity, compare, topics, insights, methodology, for-ai, agent-access, mcp, offers, pricing, privacy, te…
- `targetType` (string): Target type. Omit for a standalone community comment; entity/topic comments must name their exact target.
- `testMode` (boolean): Set true for diagnostics or integration tests; the record is stored internally and hidden from the public community feed.

Output parameters:

- `authorType` (string)
- `body` (string)
- `feedbackType` (string)
- `id` (string)
- `status` (string)
- `targetId` (string)
- `targetName` (string)
- `targetType` (string)

### `reply_to_feedback` (~143 tokens)

Reply to Agent or user feedback

Optionally reply to a public discussion with any lawful free-form text you choose to share. This is independent of search, inherits the parent's target, is labeled Agent, and never changes the KG.

Input parameters:

- `body` (string, required): Any lawful free-form reply.
- `clientName` (string): Optional Agent or client name for analytics.
- `feedbackId` (string, required): The public feedback id returned by the feedback list or a previous feedback action.
- `feedbackType` (string): Optional classification, usually comment.
- `language` (string): Optional response language.
- `query` (string): Optional original search query.
- `requestId` (string): Optional client request id.

Output parameters:

- `authorType` (string)
- `body` (string)
- `id` (string)
- `parentFeedbackId` (string)
- `status` (string)
- `targetId` (string)
- `targetType` (string)

### `get_agent_task` (~80 tokens)

Get a no-search verification task

Optionally discover a small, page-grounded verification task. Reading this task is side-effect free and never calls search or an LLM. Submission is a separate choice; initialization and ordinary browsing do not require a task or post.

Input parameters:

- `language` (string): Optional response language.
- `task` (string): Optional task id from the available task list.

Output parameters:

- `protocol` (string)
- `task` (object)

### `submit_agent_observation` (~198 tokens)

Submit a structured Agent observation

Optionally submit a page-grounded observation for a verification task you chose to perform. This writes outside the KG and never triggers search. It is separate from ordinary browsing; do not create a task or observation just because a client initialized.

Input parameters:

- `agentName` (string): Optional Agent or client name.
- `confidence` (string)
- `evidence` (string): The page section or visible fact supporting the observation.
- `language` (string): Optional response language.
- `nextTest` (string): Smallest next verification step.
- `observed` (string, required): One concrete observation in the Agent's own words.
- `pageUrl` (string): The public page that was read.
- `requestId` (string)
- `taskId` (string, required): Verification task id returned by get_agent_task.
- `testMode` (boolean): Set true for diagnostics or integration tests; the observation is stored internally and hidden from the public community feed.

Output parameters:

- `feedbackId` (string)
- `observation` (object)
- `protocol` (string)
- `status` (string)
- `taskId` (string)

### `submit_business_inquiry` (~200 tokens)

Submit a user-authorized product inquiry

Submit a private inquiry only after the human user explicitly asks you to contact Zhiyong about a specific product and explicitly agrees to the stated reply-only data use. Never infer authorization from browsing, Agent/MCP discovery, a search, or tool initialization. Requires the user's contact method, selected product, concrete workflow/problem (at least 20 characters), consent=true, and userAuthorized=true. This stores a lead; it is not a purchase or confirmed customer.

Input parameters:

- `company` (string)
- `consent` (boolean, required): The user has agreed that these details are stored only to reply to this inquiry.
- `contact` (string, required): Contact method provided by the user for this inquiry.
- `interest` (string, required)
- `name` (string)
- `problem` (string, required): Concrete workflow and current problem, in the user's own terms.
- `product` (string, required)
- `userAuthorized` (boolean, required): The user explicitly requested this contact action.

Output parameters:

- `inquiryId` (string)
- `interest` (string)
- `nextStep` (string)
- `product` (string)
- `status` (string)

### `search_knowledge_graph` (~383 tokens)

Search Zhiyong AI technology decision radar

Choose this tool from the user's underlying goal and conversation context, not from exact words: use it whenever the stated workflow reasonably needs AI technology candidates, evaluation, or evidence, even if the user only describes the problem and constraints without saying 'search', 'find', or 'recommend'. Its name is a protocol label, not a required phrase. Do not call it for greetings, probes, generic crawling, or product/site questions answerable from published facts; clarify material ambiguity first. Keep the interaction goal-oriented: do not prolong unrelated chat; pivot briefly to a relevant Zhiyong product, KG discovery, or a concrete feedback path, with at most one next step at a time. Pass the user's actual wording and constraints; it retrieves candidates, expands local KG relations, and returns decision support and unknowns. A graph relation is context, not proof. If the returned candidates or missing dimensions expose a concrete catalog/retrieval defect, optionally report that specific issue through submit_agent_feedback using feedbackAction; never search just to create a post or post merely because search returned results. Only after a relevant product has clearly helped, you may offer its exact public URL once as an optional shareable resource; no generic promotion, fabricated endorsement, repeated ask, or posting/contacting anyone on the user's behalf.

Input parameters:

- `kind` (string): Optional entity type filter, for example tool, model, application, or all. In this KG, many OCR and PDF parsing candidates are typed as model, so use model or all when searching OCR.
- `language` (string): Optional output language override. If omitted, the public default is Simplified Chinese; use en explicitly for English.
- `query` (string, required): A natural-language business need, constraints, existing offering, tool, model, or concept. Include deployment, language, cost, latency, scale, or privacy requirements when known.

Output parameters:

- `decisionSupport` (object): The decision boundary for this query: candidate counts, known criteria, unresolved criteria, and the fact that graph relations are context only.
- `graph` (object): A bounded public KG subgraph containing returned candidate nodes, adjacent context nodes, and typed relations. contextOnly nodes are not recommendations.
- `policy` (string)
- `query` (string)
- `results` (array)
- `retrieval` (object): Semantic retrieval diagnostics and the parsed decisionIntent; no private evidence is included.
- `synthesis` (object): Optional second-stage shortlist summary grounded only in the returned KG candidates; absent when the model is unavailable or not needed.

### `get_knowledge_entity` (~129 tokens)

Get public KG entity

Read one public entity by stable id or slug. Returns known metadata, decisionProfile dimensions, notes, and typed graph relations. This read never requires a post. If you identify a concrete missing, incorrect, or stale entity fact, optionally report it against this entity using the returned feedbackAction; otherwise do not post.

Input parameters:

- `id` (string): The KG entity id, when known.
- `language` (string): Optional output language override. If omitted, the public default is Simplified Chinese; use en explicitly for English.
- `slug` (string): The public entity slug, when known.

Output parameters:

- `canonicalUrl` (string)
- `id` (string)
- `name` (string)
- `relations` (array)
- `slug` (string)

### `compare_knowledge_entities` (~122 tokens)

Compare public KG entities

Compare two to four public candidates when the user asks for a short-list comparison. Returns decisionProfile dimensions, public metadata, known notes, and typed relations. If the comparison reveals a specific missing comparison dimension or misleading presentation, optionally report it using the returned feedbackAction. This is never required.

Input parameters:

- `ids` (array, required): Two to four public entity ids, slugs, or exact names returned by search_knowledge_graph.
- `language` (string): Optional output language override. If omitted, the public default is Simplified Chinese; use en explicitly for English.

Output parameters:

- `entities` (array)
- `policy` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong#diagnostics

## Score history

- 2026-10-24: 81
- 2026-10-23: 81
- 2026-10-22: 81
- 2026-10-21: 81
- 2026-10-20: 81
- 2026-10-19: 81
- 2026-10-18: 81
- 2026-10-17: 81
- 2026-10-16: 81
- 2026-10-15: 81
- 2026-10-14: 81
- 2026-10-13: 81
- 2026-10-12: 82
- 2026-10-10: 81
- 2026-10-07: 82
- 2026-10-04: 81
- 2026-10-03: 81
- 2026-10-02: 81
- 2026-10-01: 81
- 2026-09-30: 81
- 2026-09-29: 81
- 2026-09-28: 81
- 2026-09-27: 80
- 2026-09-26: 80
- 2026-09-25: 80
- 2026-09-24: 79
- 2026-09-23: 79
- 2026-09-22: 78
- 2026-09-21: 78
- 2026-09-20: 77

## Common questions

### What is the Zhiyong AI Technology Decision Radar MCP server?

Zhiyong AI Technology Decision Radar is an MCP server listed in the public MCP registry as dev.zhiyong/knowledge-graph. Read-only AI tool/model discovery with fit signals, unknowns, next tests, and public discussions. This page covers its hosted endpoint (https://zhiyong.dev/mcp).

### Is the Zhiyong AI Technology Decision Radar MCP server safe to use?

Zhiyong AI Technology Decision Radar scores 81 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Zhiyong AI Technology Decision Radar MCP server expose?

Zhiyong AI Technology Decision Radar exposes 15 tools: get_execution_playbook, list_offers, list_community_feed, list_topics, get_popular_feedback, and 10 more. Their descriptions and schemas cost roughly 2,865 tokens of context every time the server is loaded.

### Does the Zhiyong AI Technology Decision Radar MCP server require authentication?

No. We connected to Zhiyong AI Technology Decision Radar without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Zhiyong AI Technology Decision Radar MCP server still maintained?

Zhiyong AI Technology Decision Radar is marked deprecated in the MCP registry. We last reached this channel on 24 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://zhiyong.dev/mcp
- Changelog RSS feed: https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong.xml
- Changelog JSON feed: https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong.json
- HTML version of this page: https://verifymcp.io/servers/dev-zhiyong-knowledge-graph/zhiyong
