Shannon Lite MCP
Provides runtime status monitoring of Temporal and workers in the Shannon system.
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., "@Shannon Lite MCP scan https://example.com"
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.
This package enables AI assistants and applications to configure Shannon, start scans, monitor runtime, inspect workspaces, and read reports programmatically.
Features
Full Shannon Lite workflow support through MCP tools
Built-in config management for
~/.shannon/config.tomlScan orchestration (
start,status,workspaces, logs, report reads)Safe destructive operations with explicit confirmation tokens
Smart CLI execution (
shannonbinary or fallback tonpx @keygraph/shannon)TypeScript implementation with strict Zod validation
Related MCP server: Spotter-SAST
Setup
Prerequisites
Node.js 18+
Docker (daemon running)
Shannon CLI access (
shannoninPATHornpxavailable)
MCP Configuration
If you are running this repo locally (unpublished package), build first:
npm install
npm run buildThen use command node with args [/absolute/path/to/shannon-mcp/dist/index.js] in your MCP client configuration.
For Claude Desktop
Add to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"shannon-lite": {
"command": "npx",
"args": ["-y", "shannon-lite-mcp"]
}
}
}For Cursor
Add the configuration to your Cursor settings:
{
"mcpServers": {
"shannon-lite": {
"command": "npx",
"args": ["-y", "shannon-lite-mcp"]
}
}
}For Windsurf
Add the configuration to your Windsurf settings:
{
"mcpServers": {
"shannon-lite": {
"command": "npx",
"args": ["-y", "shannon-lite-mcp"]
}
}
}For Warp
Add the following to your Warp session setup:
{
"shannon-lite": {
"command": "npx",
"args": ["-y", "shannon-lite-mcp"],
"working_directory": null,
"start_on_launch": true
}
}For Other MCP Clients
Use standard MCP server settings:
Command:
npx -y shannon-lite-mcpornode /path/to/shannon-mcp/dist/index.jsTransport: stdio
Available MCP Tools
shannon_health- Check Docker/Node/CLI readiness, config, and workspace stateshannon_config_set- Write~/.shannon/config.tomlforanthropic,custom_base_url,bedrock,vertex, orroutershannon_config_get- Read current config with secret maskingshannon_start_scan- Start a scan withurl,repo, and optionalconfig,workspace,output,pipeline_testing,routershannon_status- Get Temporal + worker runtime statusshannon_list_workspaces- List known Shannon workspacesshannon_get_workspace- Return detailed workspace/session metadatashannon_read_workflow_log- Read workspaceworkflow.log(tail by default)shannon_read_report- Read final report from workspace deliverablesshannon_stop- Stop Shannon runtime (clean mode requires confirmation token)shannon_uninstall- Remove~/.shannonand stop runtime (requires confirmation token)
Safety Notice
Shannon Lite can run real security test flows. Use only on systems you are authorized to test.
Destructive operations require exact confirmation tokens:
shannon_stopwithclean=true:I_UNDERSTAND_THIS_WILL_REMOVE_SHANNON_DATAshannon_uninstall:DELETE_SHANNON_HOME_AND_STOP_SHANNON
Usage Examples
Configure Anthropic API Key
await mcp.callTool("shannon_config_set", {
provider: "anthropic",
auth_method: "api_key",
api_key: "sk-ant-..."
});Start a Scan
await mcp.callTool("shannon_start_scan", {
url: "https://example.com",
repo: "/absolute/path/to/repo",
workspace: "q2-audit"
});Read Final Report
await mcp.callTool("shannon_read_report", {
workspace: "q2-audit"
});Clean Stop (destructive)
await mcp.callTool("shannon_stop", {
clean: true,
confirm_destructive: "I_UNDERSTAND_THIS_WILL_REMOVE_SHANNON_DATA"
});Development Setup
Prerequisites
Node.js 18+
npm
Local Development
Install dependencies:
npm installBuild the project:
npm run buildRun in development mode:
npm run devRun tests:
npm run test:run
Contributing
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add some amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Links
Support
Create an issue for bug reports or feature requests
Check existing issues before creating new ones
Include reproduction steps, environment info, and relevant logs
Made with care for the security engineering community.
Available Tools
11 toolsshannon_config_getA
Read ~/.shannon/config.toml and return masked credentials and active provider.
Inputs: no named parameters.
shannon_config_setB
Write ~/.shannon/config.toml for Shannon Lite providers (anthropic, custom_base_url, bedrock, vertex, router).
Inputs: provider (required), auth_method, api_key, oauth_token, +13 more.
shannon_get_workspaceC
Get detailed data for a single workspace.
Inputs: workspace (required), workspaces_dir, include_raw_session.
shannon_healthA
Check Shannon Lite MCP runtime health (Docker, CLI resolution, config, workspace directory).
Inputs: no named parameters.
shannon_list_workspacesA
List Shannon workspaces and their high-level status.
Inputs: workspaces_dir, limit.
shannon_read_reportB
Read a workspace report file from deliverables (defaults to comprehensive_security_assessment_report.md).
Inputs: workspace (required), workspaces_dir, filename, max_chars.
shannon_read_workflow_logA
Read workflow.log for a workspace (tail by default).
Inputs: workspace (required), workspaces_dir, bytes, from_start.
shannon_start_scanC
Start a Shannon Lite scan using URL/repo and optional config/workspace/output/router flags.
Inputs: url (required), repo (required), config, workspace, +3 more.
shannon_statusB
Get Shannon runtime status (Temporal + workers).
Inputs: no named parameters.
shannon_stopA
Stop Shannon worker and infra containers. Clean mode requires a confirmation token.
Inputs: clean, confirm_destructive.
shannon_uninstallA
Stop Shannon runtime and remove ~/.shannon. Requires explicit confirmation token.
Inputs: confirm_destructive (required), clean.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Each tool has a clearly distinct purpose: config, workspace management, health, scan execution, report reading, runtime control, and uninstall. No overlapping functionality.
All tools follow the consistent pattern `shannon_<verb>` or `shannon_<verb>_<noun>` (e.g., shannon_config_get, shannon_list_workspaces, shannon_start_scan, shannon_stop).
11 tools cover the essential operations for managing Shannon Lite without being excessive. The scope is well-defined for typical use cases.
Core workflows are covered: config, workspace listing, scan initiation, report reading, health checks, stop, and uninstall. Minor gaps exist (no explicit workspace creation or scan status polling), but agents can work around them.
Related MCP Connectors
MCP server for ScanMalware.com URL scanning, malware detection, and analysis.
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
MCP server: static security scanner for MCP servers, agent skills & plugins. 17 attack patterns.
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceMCP server for Blackduck Coverity Static Analysis Software.-
- AlicenseCqualityDmaintenanceEnterprise-grade MCP server for static application security testing with multi-tool integration, compliance verification, AI-powered remediation, and multi-tenant management.2310MIT
- FlicenseNot gradedqualityDmaintenanceA remote MCP server that exposes mock application security testing data (applications, scans, issues) for LLM clients to query security posture using natural language.-
- AlicenseNot gradedqualityDmaintenanceMCP server for ai-scanner that enables AI agents to scan codebases for LLM usage, AI frameworks, and exposed secrets.66 npm1MIT