Handsontable MCP Server
Allows fetching and searching Handsontable documentation for the Angular framework, including guides and API references.
Allows fetching and searching Handsontable documentation for vanilla JavaScript, including guides and API references.
Allows fetching and searching Handsontable documentation for the React framework, including guides and API references.
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., "@Handsontable MCP ServerSearch for 'filter' in Handsontable docs"
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.
Handsontable MCP Server
Model Context Protocol server providing access to Handsontable documentation for AI-powered code generation.
Features
Three MCP Tools
get_doc- Fetch specific documentation pages as Markdownsearch_docs- Search 563 pages by keywordlist_categories- Browse all documentation categories
Multi-Framework Support
JavaScript (vanilla)
React
Angular
Vue 2/3 (via integration guides)
Smart Features
Input validation and sanitization
Rate limiting (100ms between requests)
LRU cache with 1-hour TTL (max 100 items)
Structured JSON logging
HTML to Markdown conversion
Coverage
61 API endpoints
128 guide topics
20 documentation categories
563 total pages
Related MCP server: amCharts 5 MCP Server
Quick Setup
1. Clone and Install
git clone https://github.com/GreenFlux/handsontable-mcp-server.git
cd handsontable-mcp-server
npm install2. Add to Claude Desktop
macOS: Edit ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: Edit %APPDATA%\Claude\claude_desktop_config.json
Replace /absolute/path/to with your actual path:
{
"mcpServers": {
"handsontable": {
"command": "node",
"args": ["/absolute/path/to/handsontable-mcp-server/index.js"]
}
}
}3. Restart Claude Desktop
The server starts automatically when Claude Desktop launches.
Using the Server
Once connected, ask Claude about Handsontable:
Available Tools
1. get_doc
Fetch specific documentation and return as Markdown.
Parameters:
topic(required): Documentation topic (e.g., "column-sorting", "filters")framework(optional): "javascript", "react", or "angular" (default: "javascript")type(optional): "guide" or "api" (default: "guide")
Example:
Get the React column sorting documentation2. search_docs
Search for topics by keyword.
Parameters:
keyword(required): Search term
Example:
Search Handsontable docs for "filter"3. list_categories
List all documentation categories and topics.
Example:
Show me all Handsontable documentation categoriesSee DOCUMENTATION.md for a complete reference of all 61 API endpoints, 128 guide topics, and 20 categories.
Development
Run with auto-reload:
npm run devRun tests:
npm testLint code:
npx eslint .Format code:
npx prettier --write .Architecture
The server:
Receives MCP tool requests via stdio
Validates and sanitizes all inputs
Applies rate limiting (100ms between requests)
Fetches HTML from handsontable.com
Parses with JSDOM, removes navigation/footer
Converts to Markdown with Turndown
Caches result with LRU eviction
Returns formatted documentation
Project Structure
handsontable-mcp-server/
├── index.js # Main MCP server
├── test.js # Test suite
├── docs-structure.json # Pre-analyzed docs
├── .github/
│ └── workflows/
│ └── ci.yml # GitHub Actions
└── README.mdContributing
Contributions are welcome! Please read CONTRIBUTING.md first.
Security
See SECURITY.md for security policy and vulnerability reporting.
License
MIT - See LICENSE for details.
Acknowledgments
Documentation source: Handsontable
Built with Model Context Protocol SDK
Available Tools
3 toolsget_docA
Fetch Handsontable documentation for a specific topic and framework. Returns the documentation as markdown.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes | The documentation topic (e.g., "column-sorting", "filters", "installation"). Use search_docs to find available topics. | |
| framework | No | The framework version of the docs (default: javascript) | javascript |
| type | No | Whether this is a guide or API reference (default: guide) | guide |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose all behavioral traits. Only states returns markdown; no info on error handling, authorization, rate limits, or what happens if topic is invalid.
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?
Two concise sentences front-load the purpose and output format. No superfluous content; every sentence earns its place.
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?
Adequate for a simple fetch tool with 3 parameters and no output schema, but lacks details on error cases, return format specifics, and usage examples. Could be more 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% with descriptions for all parameters. Description adds value by hinting to use search_docs for finding topics, and explains enum defaults and purpose beyond schema.
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?
Description clearly states verb 'Fetch', resource 'Handsontable documentation', and scope 'for a specific topic and framework'. Distinguishes from siblings like search_docs by specifying retrieval of markdown for a known topic.
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?
Explicitly mentions using search_docs to find available topics within the topic parameter description, providing context for when to use this tool vs searching. Lacks explicit when-not-to-use statements but offers clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesA
List all available documentation categories with their topics. Useful for browsing the documentation structure.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states that the tool lists all categories (no filtering), but does not disclose order, pagination, or any constraints. Minimal insight beyond the basic purpose.
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 consists of two concise sentences, no wasted words. The first sentence front-loads the action and resource, followed by a usage hint.
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 no output schema, the description mentions it returns categories with topics, which is helpful. However, it lacks details like return format or structure, but for a simple list tool it is sufficiently 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?
The input schema has 0 parameters with 100% coverage, so the description does not need to add parameter details. Baseline 4 is appropriate as no parameters exist to describe.
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 it lists all available documentation categories with their topics, using the specific verb 'list' and resource 'categories with topics'. This distinguishes it from siblings like get_doc (retrieve a specific document) and search_docs (search across 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 says 'Useful for browsing the documentation structure,' which gives clear context for when to use it. However, it does not explicitly state when not to use it or mention alternatives, but the sibling tools allow inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_docsA
Search for Handsontable documentation topics by keyword. Returns matching API endpoints, guide topics, and categories.
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes | Keyword to search for (e.g., "column", "filter", "sort") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full transparency burden. It describes the return content (API endpoints, guide topics, categories) but does not mention any behavioral traits such as read-only nature, rate limits, authentication needs, or result limitations. It is adequate for a simple search but lacks depth.
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 concise—two sentences with no wasted words. It is front-loaded with the core action and immediate outcome, making it efficient for an agent to parse.
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 required parameter, no output schema, no nested objects) and sibling tools, the description covers the essential information. Minor gaps include lack of output format details (e.g., count, ordering), but overall it is sufficiently 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?
The schema covers 100% of parameters, including a description for 'keyword' that is similar to the tool description. The tool description does not add significant extra meaning beyond the schema, so a baseline score of 3 is 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 action ('Search'), the resource ('Handsontable documentation topics by keyword'), and specifies the types of results ('API endpoints, guide topics, and categories'). It effectively distinguishes from siblings: 'get_doc' likely retrieves a single document, and 'list_categories' lists categories, while this tool provides broader 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 implies usage for general search but does not explicitly state when to use this tool over alternatives ('get_doc', 'list_categories'). No 'when to use' or 'when not to use' guidance is provided, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose: fetching a specific doc, listing categories, and searching. No overlap or ambiguity.
All tools follow a consistent verb_noun pattern in snake_case: get_doc, list_categories, search_docs.
With 3 tools, the set is well-scoped for a documentation server, covering essential operations without being too sparse or excessive.
The tool surface covers searching, listing categories, and fetching specific docs, providing a complete workflow for documentation access.
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 agentverse documentation, generated by doc2mcp.
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
MCP server for stocksense-ai documentation, generated by doc2mcp.
MCP server for opencode documentation, generated by doc2mcp.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI assistants to access up-to-date documentation for Python libraries like LangChain, LlamaIndex, and OpenAI through dynamic fetching from official sources.1MIT

amCharts 5 MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceMCP server that gives AI assistants on-demand access to 1,500+ amCharts 5 docs, ~300 code examples, and 1000+ class API references.3168MIT- AlicenseAqualityDmaintenanceAn MCP server that serves documentation and enables AI-powered search, Q\&A, and document analysis for developer tools and guides.54MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that provides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.17MIT
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/GreenFlux/handsontable-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server