nuclei-server MCP Server
# nuclei-server MCP Server
A Model Context Protocol server
This is a TypeScript-based MCP server that implements a simple notes system. It demonstrates core MCP concepts by providing:
- Resources representing text notes with URIs and metadata
- Tools for creating new notes
- Prompts for generating summaries of notes
<a href="https://glama.ai/mcp/servers/@Spritualkb/nuclei-mcp">
<img width="380" height="200" src="https://glama.ai/mcp/servers/@Spritualkb/nuclei-mcp/badge" alt="nuclei-server Server MCP server" />
</a>
## Features
### Resources
- List and access notes via `note://` URIs
- Each note has a title, content and metadata
- Plain text mime type for simple content access
### Tools
- `create_note` - Create new text notes
- Takes title and content as required parameters
- Stores note in server state
### Prompts
- `summarize_notes` - Generate a summary of all stored notes
- Includes all note contents as embedded resources
- Returns structured prompt for LLM summarization
## Development
Install dependencies:
```bash
npm install
```
Build the server:
```bash
npm run build
```
For development with auto-rebuild:
```bash
npm run watch
```
## Installation
To use with Claude Desktop, add the server config:
On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"nuclei-server": {
"command": "/path/to/nuclei-server/build/index.js"
}
}
}
```
### Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), which is available as a package script:
```bash
npm run inspector
```
The Inspector will provide a URL to access debugging tools in your browser.TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one starts a scan and the other cancels it. There is no overlap or ambiguity between these operations, making it easy for an agent to select the correct tool for the intended action.
Both tools follow a consistent verb_noun pattern (start_scan, cancel_scan), using snake_case throughout. This predictable naming scheme enhances readability and reduces confusion for agents.
With only 2 tools, the server feels too thin for a scanning domain, as it lacks essential operations like retrieving scan results, listing scans, or configuring scans. This minimal set may force agents into dead ends or require workarounds.
The tool surface is severely incomplete for a nuclei scanning server. While start and cancel are basic actions, there are significant gaps: no way to get scan status, view results, list scans, or manage templates. This will likely cause agent failures in typical scanning workflows.