HytaleModding.dev MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@HytaleModding.dev MCP Serversearch docs for NPC template"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
HytaleModding.dev MCP Server
An MCP (Model Context Protocol) server that provides AI tools with access to the HytaleModding.dev documentation. Run it locally and connect it to Claude Desktop, Cursor, Windsurf, or any MCP-compatible client.
Watch how Claude uses it to built out a user interface: HytaleModding MCP Server Demo
Tools
search_docs
Search the documentation index. Returns matching pages and sections grouped by page with URLs and breadcrumb paths.
Parameter | Type | Required | Default | Description |
| string | yes | Search query text | |
| string | no |
| Locale code |
| number | no |
| Limits the number of pages returned |
get_doc
Fetch the full content of a documentation page, converted from HTML to readable text.
Parameter | Type | Required | Description |
| string | yes | Page path, e.g. |
Related MCP server: Roblox Documentation MCP Server
Prerequisites
Node.js 18+
npm
Setup
npm install
npm run buildRunning the server
The MCP-server communicates over stdio (stdin/stdout) using JSON-RPC, which is how MCP clients launch and talk to it, so there's
no need to have an ever-running server. AI clients will trigger the requests directly against the dist/index.js file (refer
to the testing manually section).
Client configuration
Claude Desktop
Add to your claude_desktop_config.json:
aCursor
Go to Cursor Settings > Tools & Integrations > MCP Tools and add:
{
"mcpServers": {
"hytalemodding-docs": {
"command": "node",
"args": ["/absolute/path/to/hytalemodding-mcp-server/dist/index.js"]
}
}
}Windsurf
Open Command Palette > Windsurf MCP Configuration Panel and add the same JSON block as above.
Claude Code
Run this from any directory:
claude mcp add hytalemodding-docs node /absolute/path/to/hytalemodding-mcp-server/dist/index.jsDevelopment
Watch mode recompiles on file changes:
npm run devTesting manually
You can pipe JSON-RPC messages to the server over stdio to test:
# Initialize and list tools
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}\n{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}\n' | node dist/index.js 2>/dev/null
# Search for documentation
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}\n{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_docs","arguments":{"query":"NPC template"}}}\n' | node dist/index.js 2>/dev/null
# Fetch a specific doc page
printf '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}\n{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_doc","arguments":{"path":"/en/docs/quick-start"}}}\n' | node dist/index.js 2>/dev/nullAvailable Tools
2 toolsget_docA
Fetch the full content of a Hytale modding documentation page. You MUST use the search_docs tool first to get a list of URLs that are compatible with this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Documentation page url (e.g. '/en/docs/official-documentation') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It adds the key precondition that URLs must come from search_docs and implies read-only behavior ('Fetch'). While it doesn't cover error handling or output format, the mandatory prerequisite is a valuable behavioral disclosure for a simple read tool.
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 sentences long, with the purpose front-loaded and the critical usage prerequisite in a clear second sentence. Every word contributes value; there is 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?
Given the tool's simplicity (one parameter, no output schema), the description adequately covers purpose, prerequisite, and parameter compatibility. The absence of an output schema means the description need not explain return values, and the 'full content' phrasing gives a general expectation. Minor gap: no detail on response structure, but this is acceptable for a simple fetch tool.
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?
The schema already documents the 'url' parameter with a format example, giving 100% coverage. The description adds extra meaning by noting that only URLs from search_docs are compatible, which clarifies that not arbitrary URLs will work. This enhances the schema-provided semantics.
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 uses a specific verb ('Fetch') and clearly identifies the resource ('full content of a Hytale modding documentation page'). It distinguishes itself from the sibling tool search_docs by indicating it retrieves full content rather than performing a 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?
The description provides explicit usage guidance: 'You MUST use the search_docs tool first to get a list of URLs that are compatible with this tool.' This clearly states when to use this tool and the required prerequisite, effectively distinguishing it from search_docs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_docsD
Fetch the full content of a Hytale modding documentation page. Provide a doc path (e.g. '/en/docs/official-documentation'). Use search_docs first to find the right page path.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of pages to return (default: 10) | |
| query | Yes | Search query (e.g. 'custom UI', 'NPC template', 'world generation') | |
| locale | No | Locale code (default: 'en') | en |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It fails to disclose that this is a search operation returning page results; instead, it claims to fetch full content. There is no mention of pagination, result format, or any behavioral details. The description actively misleads about what the tool does.
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 short but not concise in an effective way. It mixes two unrelated instructions (fetching content and using search_docs) without clear separation. The structure is confusing and fails to front-load the actual search purpose.
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 an output schema and simple parameters, the description is incomplete and misleading. An agent would not be able to correctly select and invoke this tool based on the description. It lacks any statement that this is a search tool, and the reference to 'doc path' is a serious omission/contradiction.
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?
The schema covers all parameters (query, limit, locale) with clear descriptions. However, the description instructs 'Provide a doc path (e.g. '/en/docs/official-documentation')', which does not match any parameter. A doc path is not the query parameter, and no 'path' parameter exists. This directly contradicts the schema and misguides the agent.
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 says 'Fetch the full content of a Hytale modding documentation page,' which describes a retrieval tool, not a search tool. The only hint that this is search_docs is 'Use search_docs first to find the right page path,' which is buried and contradicts the main verb 'Fetch'. The purpose is misleading.
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 a mild workflow hint ('Use search_docs first to find the right page path'), implying an alternative tool (get_doc) exists for fetching. However, it never explicitly states when to use search_docs vs get_doc, and the description itself confuses the two roles.
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.
2 tool updates
v1.0.0- First observed
get_doc - First observed
search_docs
TDQS
Scored across 2 tools
Both tools are described as 'Fetch the full content of a Hytale modding documentation page', making them appear to do the same thing. While one is named 'search' and the other 'get', the descriptions do not clearly differentiate their purposes, leaving agents confused about which to use.
Both tool names follow a verb_noun pattern (search_docs, get_doc), but one uses the plural 'docs' and the other singular 'doc', a minor inconsistency. The verbs 'search' and 'get' are distinct and reasonably clear.
With only 2 tools, the server feels minimal. For a documentation server, a search and fetch pair is plausible, but the count is at the lower end of what is reasonable for a coherent toolset.
The server appears to cover searching and fetching documentation pages, but the unclear boundary between the tools leaves a gap in understanding how to discover pages without already knowing a path. A clearer search step or listing mechanism would make the surface more complete.
Maintenance
Related MCP Connectors
Versioned documentation registry and semantic search for AI tools and coding assistants.
The documentation, as a tool your agent can call: 950+ AI-dev guides. Search + fetch tools.
Search and query nTop's knowledge base and engineering guides from AI applications.
Provide your AI coding tools with token-efficient access to up-to-date technical documentation for…
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.714 npm1MIT
- -licenseNot gradedqualityNot gradedmaintenanceEnables AI agents to intelligently search and retrieve Roblox documentation through semantic search and vector embeddings, providing natural language access to complete Roblox Creator Documentation.-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to access and search MkDocs documentation through tools for full-text search, page navigation, and code block extraction. It serves documentation pages as readable resources and provides structural outlines to help LLMs navigate documentation content.MIT
- FlicenseAqualityDmaintenanceExposes the Dalamud plugin API documentation to AI assistants, enabling them to answer questions about services, types, and methods for writing FFXIV Dalamud plugins.111-