Plato's Kallipolis
by handongzhen101-jpg · remote · no sign-in to list tools · v0.1.0 · published by GitHub user handongzhen101-jpg
Read-only MCP tools for AI agent discovery, structured resources, and NIULAI information.
6 tools: 6 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads6Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http platos-kallipolis https://platoskallipolis.com/api/mcpFindings
Matches of fixed checks, with the text they matched.
- Infosearch_resources
The input schema at properties.q.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.q.description: "...abel-boundary subdomains; no full URLs, credentials, control characters, stemming or model..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
6 tools
Only reads 6Claude Code: allow
compile_query_planNormalize a public-data query into a typed evidence, freshness, latency, result, and cost plan.No findings
Why it is in this group
- The name "compile_query_plan" says "query": a word for reading.
Description, as the server wrote it Normalize a public-data query into a typed evidence, freshness, latency, result, and cost plan. Compilation does not execute retrieval or contact providers.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_growth_metricsReturn enabled, partial, contract-only, and unavailable growth metrics with privacy and interpretation boundaries.No findings
Why it is in this group
- The name "get_growth_metrics" says "get": a word for reading.
Description, as the server wrote it Return enabled, partial, contract-only, and unavailable growth metrics with privacy and interpretation boundaries.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_niulai_infoReturn publisher-declared Base network, contract, claim, community-role, custody, and risk-boundary information for 牛来 (NIULAI).No findings
Why it is in this group
- The name "get_niulai_info" says "get": a word for reading.
Description, as the server wrote it Return publisher-declared Base network, contract, claim, community-role, custody, and risk-boundary information for 牛来 (NIULAI).
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
get_resourceRetrieve one complete prepared resource profile, including evidence-backed facts and primary-source provenance, by its stable resource ID.No findings
Why it is in this group
- The name "get_resource" says "get": a word for reading.
Description, as the server wrote it Retrieve one complete prepared resource profile, including evidence-backed facts and primary-source provenance, by its stable resource ID.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_agentsSearch the public agent registry by capability and protocol.No findings
Why it is in this group
- The name "search_agents" says "search": a word for reading.
Description, as the server wrote it Search the public agent registry by capability and protocol. Preview data only.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
search_resourcesSearch 350 prepared structured resource profiles by category, keyword or declared source hostname without contacting external providers.1 finding
Why it is in this group
- The name "search_resources" says "search": a word for reading.
Findings
- Info
The input schema at properties.q.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.q.description: "...abel-boundary subdomains; no full URLs, credentials, control characters, stemming or model..."
Description, as the server wrote it Search 350 prepared structured resource profiles by category, keyword or declared source hostname without contacting external providers.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http platos-kallipolis https://platoskallipolis.com/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__platos-kallipolis__search_agents",
"mcp__platos-kallipolis__search_resources",
"mcp__platos-kallipolis__get_resource",
"mcp__platos-kallipolis__get_niulai_info",
"mcp__platos-kallipolis__get_growth_metrics",
"mcp__platos-kallipolis__compile_query_plan"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as platos-kallipolis. Review it before you use it.
