Sponsored by Deepsite.site

MCP Tools

Created By
MCP-Mirror9 months ago
Mirror of
Content

MCP Tools

A custom Model Context Protocol (MCP) server implementation that provides file system and command execution tools for Claude Desktop and other LLM clients.

What is the Model Context Protocol?

The Model Context Protocol (MCP) is an open protocol that standardizes how applications provide context to Large Language Models (LLMs). Much like a USB-C port provides a standardized way to connect devices to various peripherals, MCP provides a standardized way to connect AI models to different data sources and tools.

This project implements a FastMCP server with several useful tools that enable Claude and other LLMs to interact with your local file system and execute commands. It extends LLMs' capabilities with local system access in a controlled way through well-defined tool interfaces.

Key Benefits of MCP

  • Standardized Integration: MCP provides a growing list of pre-built integrations that your LLM can directly plug into
  • Vendor Flexibility: Easily switch between LLM providers and vendors (Claude, GPT-4o, Gemini, etc.)
  • Security: Best practices for securing your data within your infrastructure
  • Tool Exposure: Encapsulate existing tools and make them accessible to any MCP-compatible LLM client

Features

The MCP server provides the following file system and command execution tools:

  • execute_shell_command: Execute shell commands and get stdout/stderr results
  • show_file: View file contents with optional line range specification
  • search_in_file: Search for patterns in files using regular expressions
  • edit_file: Make precise changes to files with string replacements and line operations
  • write_file: Write or append content to files

MCP Architecture

MCP follows a client-server architecture:

  • Hosts: LLM applications (like Claude Desktop or IDEs) that initiate connections
  • Clients: Maintain 1:1 connections with servers, inside the host application
  • Servers: Provide context, tools, and prompts to clients (this project implements a server)

Prerequisites

  • Python 3.10 or higher
  • An MCP-compatible client (Claude Desktop, or any other client that supports MCP)

Installation

  1. Install uv
  2. Clone this repository or download the source code
  3. Run uv run mcp install to install the MCP server
  4. Run which uv to get an absolute path to the uv executable
  5. Update your MCP server configuration in Claude Desktop to use the absolute path to the uv executable

My MCP server configuration looks like this:

{
  "globalShortcut": "",
  "mcpServers": {
    "zbigniew-mcp": {
      "command": "/Users/zbigniewtomanek/.local/bin/uv",
      "args": [
        "run",
        "--with",
        "mcp[cli]",
        "--with",
        "marker-pdf",
        "mcp",
        "run",
        "/Users/zbigniewtomanek/PycharmProjects/my-mcp-tools/server.py"
      ]
    }
  }
}

Usage

Connecting from Claude Desktop

  1. Open Claude Desktop
  2. Connect to the MCP server using the identifier "zbigniew-mcp"

Note: While this implementation focuses on Claude Desktop, MCP is designed to be compatible with any MCP-compatible tool or LLM client, providing flexibility in implementation and integration.

Available Tools

execute_shell_command

Execute shell commands safely using a list of arguments:

execute_shell_command(["ls", "-la"])
execute_shell_command(["grep", "-r", "TODO", "./src"])
execute_shell_command(["python", "analysis.py", "--input", "data.csv"])
execute_shell_command(["uname", "-a"])

show_file

View file contents with optional line range specification:

show_file("/path/to/file.txt")
show_file("/path/to/file.txt", num_lines=10)
show_file("/path/to/file.txt", start_line=5, num_lines=10)

search_in_file

Search for patterns in files using regular expressions:

search_in_file("/path/to/script.py", r"def\s+\w+\s*\(")
search_in_file("/path/to/code.py", r"#\s*TODO", case_sensitive=False)

edit_file

Make precise changes to files:

# Replace text
edit_file("config.json", replacements={"\"debug\": false": "\"debug\": true"})

# Insert at line 5
edit_file("script.py", line_operations=[{"operation": "insert", "line": 5, "content": "# New comment"}])

# Delete lines 10-15
edit_file("file.txt", line_operations=[{"operation": "delete", "start_line": 10, "end_line": 15}])

# Replace line 20
edit_file("file.txt", line_operations=[{"operation": "replace", "line": 20, "content": "Updated content"}])

write_file

Write or append content to files:

# Overwrite file
write_file("/path/to/file.txt", "New content")

# Append to file
write_file("/path/to/log.txt", "Log entry", mode="a")

fetch_page

Fetch the contents of a web page to a PDF (requires chromium installed) and then parses it to markdown using local LLMs:

fetch_page("https://example.com")

Transport Mechanisms

MCP supports multiple transport methods for communication between clients and servers:

  • Standard Input/Output (stdio): Uses standard input/output for communication, ideal for local processes
  • Server-Sent Events (SSE): Enables server-to-client streaming with HTTP POST requests for client-to-server communication

This implementation uses a local MCP server that communicates via text input/output.

Extending with Your Own Tools

You can easily extend this MCP server by adding new tools with the @mcp.tool decorator. Follow the pattern in server.py to create new tools that expose additional functionality to your LLM clients.

Security Considerations

The MCP server provides Claude with access to your local system. Be mindful of the following:

  • The server executes shell commands as your user
  • It can read, write, and modify files on your system
  • Consider limiting access to specific directories if security is a concern
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
CursorThe AI Code Editor
Tavily Mcp
ChatWiseThe second fastest AI chatbot™
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
DeepChatYour AI Partner on Desktop
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
WindsurfThe new purpose-built IDE to harness magic
Playwright McpPlaywright MCP server
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Amap Maps高德地图官方 MCP Server
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Serper MCP ServerA Serper MCP Server
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.