Inngest MCP Docs Server
A Model Context Protocol server that provides AI coding agents with access to up-to-date Inngest documentation by fetching and converting web content to Markdown format.
README Documentation
Inngest MCP Docs Server
A Model Context Protocol (MCP) server that provides access to Inngest documentation by fetching and converting web content to Markdown format. This server enables AI coding agents to access up-to-date Inngest documentation directly within supported tools like Cursor and Claude Code.
Features
- š Real-time Documentation Access: Fetches the latest Inngest documentation from the web
- š Markdown Conversion: Converts HTML documentation to clean, readable Markdown
- š Easy Integration: Simple setup with Cursor and Claude Code
- š ļø Extensible: Built with TypeScript and easily customizable
Installation
Prerequisites
- Node.js 18 or higher
- npm/pnpm/yarn package manager
- Cursor or Claude Code installed
Clone & Install
-
Clone this repository:
git clone https://github.com/your-username/inngest-mcp.git cd inngest-mcp -
Install dependencies:
npm install -
Choose your installation method below based on your preferred tool.
Cursor Setup
Option A: One-Click Install (Easiest)
Use the install button below š
Option B: Manual Configuration
-
Open Cursor Settings:
- Go to
CursorāCursor Settings - Navigate to the MCP section in the GUI
- Go to
-
Add the MCP server configuration:
{ "inngest-docs-server": { "command": "npx", "args": ["-y", "tsx", "/path/to/your/inngest-mcp/index.ts"], "enabled": true } } -
Update the path:
- Replace
/path/to/your/inngest-mcp/index.tswith the actual path to yourindex.tsfile
- Replace
-
Restart Cursor to apply the changes
Claude Code Setup
Option A: Command Line (Recommended)
# Navigate to your project directory
cd /path/to/your/inngest-mcp
# Add the MCP server
claude mcp add inngest-docs-server npx -y tsx ./index.ts
Option B: Scope-Specific Installation
Local Scope (Project-specific):
claude mcp add inngest-docs-server -s local npx -y tsx ./index.ts
Project Scope (Team-shared):
claude mcp add inngest-docs-server -s project npx -y tsx ./index.ts
User Scope (Global):
claude mcp add inngest-docs-server -s user npx -y tsx ./index.ts
Option C: JSON Configuration
Create or update your .mcp.json file:
{
"mcpServers": {
"inngest-docs-server": {
"command": "npx",
"args": ["-y", "tsx", "/path/to/your/inngest-mcp/index.ts"],
"env": {}
}
}
}
Usage
Once installed, you can use the Inngest MCP server in your AI assistant:
Available Tools
fetch_docs: Fetches and converts Inngest documentation to Markdown
Example Prompts
"Can you fetch the latest Inngest documentation about steps and workflows?"
"Use the fetch_docs tool to get information about Inngest functions"
"Help me understand Inngest workflows by fetching the documentation"
In Cursor
- Open any file in your project
- Use the AI chat feature
- Ask questions about Inngest documentation
- The AI will automatically use the MCP server to fetch current documentation
In Claude Code
- Start a conversation with Claude
- Use the
/mcpcommand to check server status - Ask questions about Inngest, and Claude will fetch the latest documentation
Development
Project Structure
inngest-mcp/
āāā index.ts # Main MCP server implementation
āāā package.json # Dependencies and scripts
āāā package-lock.json # Lock file
āāā README.md # This file
Contributing
The server is built with TypeScript and uses:
- @modelcontextprotocol/sdk: MCP protocol implementation
- cheerio: HTML parsing and manipulation
- turndown: HTML to Markdown conversion
We welcome contributions! You can help by adding new tools to expose more of the Inngest documentation to AI assistants. This creates a powerful workflow for developers, allowing AI assistants to have a more native understanding of Inngest when helping you build.
How to Add a New Tool
To add a new tool, you'll need to register it with the MCP server in index.ts. This allows AI assistants like Cursor and Claude Code to discover and use your new tool.
Here is an example of how to add a new tool that fetches documentation about Inngest:
-
Open
index.tsand find theserver.registerToolsection. -
Add a new tool definition. Use the
server.registerToolmethod.- Choose a specific and descriptive name for your tool (e.g.,
fetch_events_docs). - Write a clear title and description so that the AI knows what the tool does.
- Call
fetchDocumentswith the relevant URLs.
// in index.ts // ... existing fetch_docs tool ... server.registerTool( "fetch_events_docs", // A specific, descriptive name { title: "Fetch Inngest Events Documentation", description: "Fetches and converts documentation about Inngest Events, including how to send and receive them.", }, async () => { const text = await fetchDocuments([ "https://www.inngest.com/docs/getting-started/send-and-receive-events", "https://www.inngest.com/docs/reference/event-payload", // Add more relevant URLs here ]); return { content: [{ type: "text", text }], }; } ); - Choose a specific and descriptive name for your tool (e.g.,
Contribution Workflow
To contribute your changes:
- Fork the repository
- Create a feature branch:
git checkout -b feature/new-docs-tool - Add your new tool to
index.ts. - Test your changes.
- Submit a pull request.
Troubleshooting
Common Issues
"Command not found" errors:
- Ensure Node.js and npm are installed
- Verify the path to your
index.tsfile is correct - Try using absolute paths instead of relative paths
"Permission denied" errors:
- Check file permissions:
chmod +x index.ts - Ensure you have read/write access to the project directory
Server not connecting:
- Verify the MCP server is properly configured
- Check that all dependencies are installed
- Restart your IDE after configuration changes
Claude Code Specific
Check server status:
claude mcp list
claude mcp get inngest-docs-server
Remove and re-add server:
claude mcp remove inngest-docs-server
claude mcp add inngest-docs-server npx -y tsx ./index.ts
Reset project choices:
claude mcp reset-project-choices
Cursor Specific
Verify configuration:
- Go to Cursor Settings ā MCP
- Check that the server is listed and enabled
- Verify the command path is correct
Restart Cursor:
- Close Cursor completely
- Reopen and try again
Debug Mode
Enable debug logging by setting environment variables:
# For development
DEBUG=mcp:* npx tsx index.ts
# For Claude Code
claude mcp add inngest-docs-server -e DEBUG=mcp:* npx -y tsx ./index.ts