mcpdeployment
The mcpdeployment server provides mathematical operations, text manipulation, JSON formatting, security scanning, and informational resources.
Tools
add– Add two integersreverse_text– Reverse a stringformat_json– Pretty-print JSON datacalculate– Evaluate mathematical expressionsscan_mcp_server– Scan MCP servers for security vulnerabilities (YARA-based or advanced LLM/API-based)check_scanner_status– Check scanner configuration and status
Resources
demo://info– Server metadatademo://timestamp– Current time and uptimedemo://examples– Usage examplesdemo://file/data– Read sample data
Prompts
code_review– Code review templatesummarize– Text summarization templatedebug_helper– Debugging assistance template
Additional Capabilities
Deploy locally via stdio (IDE integration) or as a remote HTTP server
Integrate with MCP clients such as Cursor IDE, Claude Desktop, VS Code, Windsurf, and Claude Code
Extend functionality by adding new tools, resources, or prompts via
src/mcpserver/server.py
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., "@mcpdeploymentdeploy my server with config.json"
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.
MCP Demo Server
A demonstration MCP (Model Context Protocol) server showcasing Tools, Resources, and Prompts with integrated security scanning.
Features
🛠️ Tools (6)
add- Add two numbersreverse_text- Reverse a stringformat_json- Pretty-print JSONcalculate- Evaluate mathematical expressionsscan_mcp_server- Scan MCP servers for vulnerabilitiescheck_scanner_status- Check scanner configuration
📚 Resources (4)
demo://info- Server metadatademo://timestamp- Current time and uptimedemo://examples- Usage examplesdemo://file/data- Read sample data
💬 Prompts (3)
code_review- Code review templatesummarize- Text summarization templatedebug_helper- Debugging assistance template
Related MCP server: Enterprise MCP Server
Quick Start
Prerequisites
Python 3.11+
uv package manager
Installation
# Clone the repository
git clone https://github.com/manutri1986/mcpdeployment.git
cd mcpdeployment
# Install dependencies (automatic with uv)
uv syncRun the Server
Local Development (stdio transport):
# Start MCP server for IDE integration
uv run mcp-serverThe server communicates via stdio and will wait for MCP protocol connections.
Remote Deployment (HTTP transport):
# Start HTTP server for remote access
MCP_REMOTE_HOST=127.0.0.1 MCP_REMOTE_PORT=8000 uv run mcp-server-remote
# Or use the test script
./scripts/test_http_local.sh📖 Full HTTP deployment guide: docs/HTTP_DEPLOYMENT.md
Security Scanning
Quick Scan
# Run security scan (YARA analyzer - fast, no API key needed)
uv run python scripts/scanners/yara_scanner.py
# Quick scan (sample components only)
uv run python scripts/scanners/yara_scanner.py --quick
# Advanced scanners (require API keys)
uv run python scripts/scanners/llm_api_scanner.py # OpenAI LLM analysis
uv run python scripts/scanners/cisco_api_scanner.py # Cisco AI DefenseScanner Coverage:
✅ Tools (6) - All scanned
✅ Prompts (3) - All scanned
⚠️ Resources (4) - Cannot scan via stdio
Setup Advanced Scanning (Optional)
For deeper analysis with LLM and API analyzers:
# Run setup script
./scripts/setup_scanner.sh
# Or set environment variables manually
export MCP_SCANNER_API_KEY="your_api_key"
export MCP_SCANNER_ENDPOINT="https://us.api.inspect.aidefense.security.cisco.com/api/v1"Get your API key: Cisco AI Defense
📖 Full documentation: docs/SCANNER_SETUP.md
Using with MCP Clients
Cursor IDE
Configuration included at .cursor/mcp.json. After setup:
Restart Cursor IDE
Test: "Use the add tool to calculate 5 + 3"
Or: "Access the demo://info resource"
Claude Desktop, VS Code, Windsurf
Add to your MCP client configuration:
{
"mcpServers": {
"mcpdeployment": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/manutri1986/mcpdeployment.git",
"mcp-server"
]
}
}
}Configuration file locations:
Client | Config Path |
Claude Desktop (macOS) |
|
Claude Desktop (Windows) |
|
Cursor |
|
Windsurf |
|
VS Code |
|
Claude Code |
|
Project Structure
mcpdeployment/
├── src/mcpserver/ # MCP server implementation
│ ├── __init__.py
│ ├── __main__.py # Entry point (stdio transport)
│ ├── __main_remote__.py # Entry point (HTTP transport)
│ └── server.py # Tools, resources, prompts
├── scripts/ # Utility scripts
│ ├── scanners/ # Security scanner implementations
│ │ ├── yara_scanner.py
│ │ ├── llm_api_scanner.py
│ │ └── cisco_api_scanner.py
│ ├── setup_scanner.sh # Scanner configuration
│ └── test_http_local.sh # Local HTTP testing
├── tests/ # Test files
│ └── test_scanner.py # Test scanner setup
├── reports/ # Generated scan reports (gitignored)
├── docs/ # Documentation
│ ├── methodology/ # Scanner methodology docs
│ ├── SCANNER_SETUP.md
│ ├── SCANNER_LIMITATIONS.md
│ └── HTTP_DEPLOYMENT.md # Remote deployment guide
├── data/ # Sample data
│ └── sample_data.json
├── STRUCTURE.md # Detailed structure guide
├── CLAUDE.md # AI assistant guidance
├── README.md # This file
└── pyproject.toml # Project configuration📖 See STRUCTURE.md for detailed directory structure and purpose.
Architecture
Built with FastMCP, a Python framework for MCP servers.
Key Pattern:
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("Demo")
@mcp.tool()
def your_tool(arg: type) -> type:
"""Tool description"""
return result
@mcp.resource("uri://path")
def your_resource() -> str:
"""Resource description"""
return json.dumps(data)
@mcp.prompt()
def your_prompt(arg: type) -> str:
"""Prompt description"""
return f"Prompt text with {arg}"See CLAUDE.md for detailed architecture notes.
Development
Test Scanner
# Verify scanner is configured
uv run python tests/test_scanner.pyAdding Components
Edit src/mcpserver/server.py:
Add function with appropriate decorator (
@mcp.tool(),@mcp.resource(),@mcp.prompt())Update scanner scripts in
scripts/scanners/to include new tools/prompts in scan listsRun security scan:
uv run python scripts/scanners/yara_scanner.py
Documentation
CLAUDE.md - Development guide for AI assistants
docs/HTTP_DEPLOYMENT.md - Remote HTTP deployment guide
docs/SCANNER_SETUP.md - Scanner configuration
docs/SCANNER_LIMITATIONS.md - What can/cannot be scanned
Troubleshooting
Server won't start
Check Python version:
uv run python --version(needs 3.11+)Reinstall dependencies:
uv sync
Tools not appearing in client
Restart client completely
Check client logs for errors
Verify configuration file syntax
Scanner errors
Verify installation:
uv pip list | grep cisco-ai-mcp-scannerTest setup:
uv run python tests/test_scanner.py
License
MIT
Available Tools
1 tooladdC
Add two numbers
| Name | Required | Description | Default |
|---|---|---|---|
| a | Yes | ||
| b | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. The description correctly implies it performs addition and returns a result, but does not mention any edge cases (e.g., overflow) or whether the tool is idempotent. A score of 3 is appropriate given the simplicity.
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 very short and to the point, which is appropriate for a simple tool. It could be considered slightly too brief, but as a single sentence it 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?
Given the tool's simplicity and the presence of an output schema, the description is adequate but not complete. It does not mention whether the addition uses integer or floating-point arithmetic, or any constraints. A more complete description might include 'Returns the sum of two integers.'
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 0% description coverage, meaning the description does not elaborate on parameters beyond what is in the schema. The description simply mentions 'two numbers', which adds no extra meaning over the schema field names 'a' and 'b'. Baseline 3 applies because schema coverage is low but the tool is extremely simple.
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 'Add two numbers' clearly states the verb (add) and resource (numbers), but it is very brief and does not distinguish from any potential siblings or provide additional context.
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 on when to use this tool versus alternatives, nor any prerequisites or limitations. For a trivial arithmetic tool this may be acceptable, but the scoring criteria requires explicit guidance.
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.
1 tool update
v0.1.0- First observed
add
TDQS
Only one tool exists, so there is no ambiguity between tools.
With a single tool, naming consistency is not applicable; the name 'add' is clear and follows a verb pattern.
A single arithmetic tool is too few for a server presumably named 'mcpdeployment', which suggests broader functionality. The scope is extremely limited.
The server's name implies deployment-related operations, but only an addition tool is provided, missing all typical deployment lifecycle operations.
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
Create, deploy, and operate MCP servers directly from your GitHub repositories.
MCP server for Product Management
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.214MIT
- FlicenseNot gradedqualityDmaintenanceA highly configurable, deployment-ready MCP server with modular architecture for dynamic tool loading and external package support.1-
- AlicenseAqualityAmaintenanceA comprehensive MCP server providing OpenStack project management and monitoring capabilities with built-in safety controls and single-project scope.4141MIT
- AlicenseNot gradedqualityAmaintenanceMCP server for the Komodo DevOps platform that enables managing servers, stacks, deployments, builds, and more through natural language.1906MIT
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/manutrip-pm-AI-Defense/mcpdeployment'
If you have feedback or need assistance with the MCP directory API, please join our Discord server