CNPC JavaDoc MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| searchA | Search CustomNPCs (CNPC) JavaDoc API — methods and fields across versions and forks. expression syntax: term — case-insensitive substring term:modifier — substring match in column; term::modifier — exact match in column a&b (AND) | a|b (OR) | {expr} (grouping). & has higher precedence than |. "noppes.npcs.api.entity.ICustomNpc" auto-expands to "/" and "$" paths. Modifiers: all (default) — all columns class — class (full path) classname — class name after last '/' package — package before last '/' name — name (methods+fields) method — same column, methods only field — same column, fields only desc — desc (JVM descriptor) modifier — access, is_static side — sideonly (always common for CNPC) Scoring: exact case hit = 1.0, case-insensitive = 0.5, then by mismatch (less unmatched chars ranks higher). Common patterns: "ICustomNpc::classname" → exact class name only "Script:classname" → all classes containing "Script" "noppes/npcs/api/entity:package" → all classes under a package "health:field" → fields only, no methods "()Z:desc" → methods returning boolean "get:method&static::modifier" → static methods containing "get" output="%class%" → deduplicated class list Version format: "1.12.2" for standard, "cnpc+:1.7.10" for CustomNPC+ fork. |
| show-hierarchyA | Display the class inheritance hierarchy for a CustomNPCs (CNPC) class. Returns two sections:
Example output for BlockEvent: Hierarchy: BlockEvent -> CustomNPCsEvent -> Event -> Object Subs: BlockEvent$BreakEvent BlockEvent$ClickedEvent ... |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: 'search' handles querying the JavaDoc database with a powerful search syntax, while 'show-hierarchy' displays class inheritance. There is no overlap in functionality.
Both tool names follow a consistent verb pattern (imperative), with 'search' being a single verb and 'show-hierarchy' using a verb_noun format with hyphenation. The style is uniform and predictable.
With only two tools, the server feels somewhat thin for a JavaDoc browsing domain. While the search tool is powerful, additional tools like 'get_class_details' or 'list_versions' would enhance the coverage. The count is borderline acceptable but not optimal.
The tool set covers search and hierarchy but misses direct access to detailed documentation for specific methods or fields. Users relying solely on these tools may face dead ends when needing comprehensive class or method info, indicating notable gaps.