Ignition-JavaDoc-MCP
Provides fast search and detailed Markdown documentation retrieval for the Ignition Inductive Automation Java API, including classes, packages, and members.
Click on "Install 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., "@Ignition-JavaDoc-MCPSearch for the Ignition Dataset class"
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.
Ignition Javadocs MCP
An MCP (Model Context Protocol) server for extremely fast and accurate searching and documentation retrieval of the Ignition Inductive Automation Java API.
Features
Lightning Fast Search: Indexes the Javadoc JSON-like artifacts (e.g.
type-search-index.js) to provide sub-second search responses without downloading full HTML.Dynamic HTML Parsing: When detailed documentation is requested, it dynamically fetches the Javadoc HTML and meticulously converts it into clean, AI-readable Markdown using
cheerio.Multi-Version Support: Can query any version of Ignition (default
8.1.39) that publishes Javadoc to the inductive automation SDK domain.
Related MCP server: devdocs-mcp
Tools Provided
search_ignition_api: Search forclass,package, ormemberby keyword.get_ignition_class_docs: Retrieve the full Markdown documentation for a specific class (e.g., package:com.inductiveautomation.ignition.common, class:Dataset).get_ignition_package_docs: Retrieve the full Markdown documentation for a specific package.get_ignition_member_docs: Retrieve documentation for a single member (method/field/constructor). Use theufield from search results asmemberAnchor.
Caching
The search index is cached to disk in .cache/ (one file per Ignition version) so restarts don't re-download it. Cache entries expire after 24 hours. Override the cache location with the IGNITION_JAVADOC_CACHE_DIR environment variable.
Getting Started
Prerequisites
Node.js >= 18
Installation & Build
# Install dependencies
npm install
# Compile the TypeScript to JavaScript
npm run buildUsage with MCP Clients
To use this with an MCP client (such as Claude Desktop), configure your MCP settings file to run this server.
Example configuration:
{
"mcpServers": {
"ignition-javadoc": {
"command": "node",
"args": [
"/path/to/Ignition-Module-Development-Docs/dist/index.js"
]
}
}
}This MCP operates exclusively on stdio.
Available Tools
4 toolsget_ignition_class_docsC
Gets the documentation for a specific class.
| Name | Required | Description | Default |
|---|---|---|---|
| version | No | Ignition version to query (default: '8.1.39') | |
| className | Yes | The class name (e.g., 'Dataset') | |
| packagePath | Yes | The package path (e.g., 'com.inductiveautomation.ignition.common') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It states only that it 'gets documentation,' offering no detail on read-only behavior, return format, error conditions, or the effect of the version parameter. The schema's default for version is not disclosed in the description, and no safety profile is established.
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 a single, front-loaded sentence with no filler. It clearly conveys the operation. However, it is so terse that it sacrifices useful context; it's concise but not under-specified. It earns its place but could include more.
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?
With no output schema and no annotations, the description leaves open what 'documentation' includes (e.g., class overview, method list). It also fails to mention the version parameter's role or how this differs from sibling doc tools. For a tool with 3 parameters and related siblings, the description is too sparse to be fully complete.
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?
Schema coverage is 100%, so each parameter (packagePath, className, version) already has a clear description. The description's phrase 'specific class' reinforces className but adds no new semantic information. Baseline 3 applies because the schema does the heavy lifting.
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 clearly states 'Gets the documentation for a specific class'—a specific verb and resource. It doesn't explicitly distinguish from sibling tools like get_ignition_package_docs or get_ignition_member_docs, but the term 'class' clarifies scope. Missing explicit sibling differentiation prevents a 5.
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 no guidance on when to use this tool versus alternatives. There is no mention of searching the API or using package/member docs for other levels of granularity. The user must infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ignition_member_docsA
Gets the full documentation for a specific member (method/field/constructor) of a class. Use the 'u' field from search_ignition_api results as memberAnchor.
| Name | Required | Description | Default |
|---|---|---|---|
| version | No | Ignition version to query (default: '8.1.39') | |
| className | Yes | The class name (e.g., 'Dataset') | |
| packagePath | Yes | The package path (e.g., 'com.inductiveautomation.ignition.common') | |
| memberAnchor | Yes | The member anchor id from search results, e.g. 'getValueAt(int,java.lang.String)' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It states the operation is to 'get' documentation, implying a safe read, and adds the context that memberAnchor comes from search results. Yet it does not describe error behavior, output format, or any potential side effects, leaving some information gaps.
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 only two sentences long, each earning its place: the first clearly states the purpose, and the second provides actionable parameter guidance. There is no redundant information or filler, making it highly efficient.
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?
For a simple documentation retrieval tool, the description covers the essential usage path: it identifies the input requirements and how to obtain the crucial memberAnchor. While it doesn't describe the output structure or error handling, the tool's complexity is low and the description provides enough context for an agent to select and invoke it correctly, especially given the sibling tool context.
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?
Although the schema provides 100% parameter descriptions, the description adds critical semantic value for memberAnchor by explaining its origin ('u' field from search results). This goes beyond the schema's example value and clarifies how to construct a valid input. Other parameters rely on the schema, so the added meaning for one key parameter elevates the score.
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 clearly states the tool's function: retrieving full documentation for a specific member (method/field/constructor) of a class. The verb 'Gets' and the resource 'full documentation for a specific member' are specific, and the mention of member types distinguishes it from the class and package documentation siblings.
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 a direct usage guideline by instructing to use the 'u' field from search_ignition_api results as the memberAnchor, which is a key input. However, it does not explicitly state when to use this tool over sibling tools, relying on the member-focused wording to imply the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_ignition_package_docsB
Gets the documentation for a specific package.
| Name | Required | Description | Default |
|---|---|---|---|
| version | No | Ignition version to query (default: '8.1.39') | |
| packagePath | Yes | The package path (e.g., 'com.inductiveautomation.ignition.common') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It merely states that it retrieves package documentation but does not describe what the returned documentation format is, whether the operation is read-only (though likely), any potential error conditions, or the role of the `version` parameter. This is a minimal disclosure that leaves significant behavioral aspects unspecified.
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 a single, lean sentence that states the core function without extraneous words. It is perfectly sized and front-loaded, conveying the essential purpose immediately.
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?
The tool is a simple getter with clear parameters, but it lacks an output schema and the description does not explain what the documentation contains or how it relates to sibling tools. Given the tool's simplicity, this is adequate but has gaps—e.g., no mention of return type or typical usage context, which would help an agent select and use it correctly.
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 provides full descriptions for both parameters (`packagePath` with an example, `version` with its default), so schema coverage is 100%. The description adds no additional parameter context beyond what is already in the schema, which is acceptable for a schema-heavy tool, but does not compensate with extra nuance.
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 clearly states the tool's function: 'Gets the documentation for a specific package.' It uses a specific verb ('gets') and identifies the resource ('package documentation'), and the tool name reinforces its distinct purpose among siblings (class docs, member docs). This unambiguously differentiates it from `get_ignition_class_docs` and `get_ignition_member_docs`.
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 no guidance on when to use this tool versus the sibling tools (search_ignition_api, get_ignition_class_docs, get_ignition_member_docs). It does not mention exclusions or alternatives, leaving the agent to infer the appropriate context solely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_ignition_apiB
Searches the Ignition Java API documentation for classes, packages, or members.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Optional filter for the type of element to search for | |
| query | Yes | The search query (e.g. 'Dataset') | |
| version | No | Ignition version to query (default: '8.1.39') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the burden of behavioral disclosure. It only rephrases the tool's basic function, adding no details about return format, result count, pagination, or read-only nature. The agent gains little insight beyond the tool name.
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 a single, focused sentence that states the purpose without any filler. It is well-front-loaded and appropriately concise for a simple search tool.
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?
The tool has only three parameters with full schema coverage, so the description does not need to explain them. However, with no output schema and no behavioral context, the description remains minimal but adequate for a straightforward search operation.
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?
Schema description coverage is 100%, so parameters are already well-documented. The description does not add extra meaning or context for the parameters, making the baseline score of 3 appropriate.
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 clearly states the tool's action ('searches') and target ('Ignition Java API documentation'), and mentions the three element types (classes, packages, members). It is distinct from sibling tools that 'get' specific docs, though it does not explicitly name them.
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?
No guidance is given about when to use this tool versus the sibling retrieval tools. The description implies a search-first workflow but does not state it, nor does it mention any prerequisites or exclusions.
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. Dates show when Glama detected each change.
4 tool updates
v1.0.0- First observed
get_ignition_class_docs - First observed
get_ignition_member_docs - First observed
get_ignition_package_docs - First observed
search_ignition_api
TDQS
Each tool targets a distinct aspect of the JavaDoc API: searching, retrieving class docs, package docs, or member docs. There is no overlap in their purposes, so an agent can easily choose the correct tool for a given task.
All tool names follow a consistent pattern of a verb (search/get) followed by 'ignition' and then the target type (api, class_docs, package_docs, member_docs). This uniform structure makes the tool set predictable and easy to navigate.
With only four tools, the server is tightly scoped to its purpose of exploring the Ignition API documentation. Each tool covers a fundamental operation (search, package, class, member) without unnecessary bloat, making the set feel complete and manageable.
The tool set covers the full lifecycle of browsing JavaDoc: searching for any API element, then drilling down into packages, classes, and members. There are no obvious missing operations for a documentation server, as search can find anything and retrieval covers all levels of detail.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for developer documentation, generated by doc2mcp.
MCP server for dev documentation, generated by doc2mcp.
MCP server for doc2mcp documentation, generated by doc2mcp.
MCP server for autoxingtech documentation, generated by doc2mcp.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides comprehensive access to MCP documentation through structured guides, full-text search, and interactive development workflows for building servers and clients.337MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides version-pinned, deterministic documentation sourced from DevDocs.io to AI assistants (Claude, RooCode, Cline, Copilot etc.) and also via offline mode. Not via Scraping! But using the supported downloading option from devdocs.15713MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server for intelligently reading Java source code, supporting extraction from Maven dependencies and local projects with dual decompilers.155Apache 2.0
- AlicenseNot gradedqualityAmaintenanceA Model Context Protocol (MCP) server for exploring, analyzing, and decompiling Java JAR files.2715MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/soubhagya2001/Ignition-JavaDoc-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server