quantgeekdev_mcp_filesystem

quantgeekdev_mcp_filesystem

by QuantGeekDev
A Model Context Protocol (MCP) server designed for filesystem operations with Server-Sent Events (SSE) support.

Filesystem MCP Server with SSE Capabilities

Overview

The Filesystem MCP Server is a Model Context Protocol (MCP) server built using the mcp-framework. It provides a robust foundation for developing and deploying custom tools with Server-Sent Events (SSE) capabilities. This server is designed to integrate seamlessly with the Claude Desktop client, enabling users to extend its functionality with custom tools and workflows.

Quick Start

To get started with the Filesystem MCP Server, follow these steps:

# Install dependencies
npm install

# Build the project
npm run build

Project Structure

The project is organized as follows:

filesystem/
├── src/
│   ├── tools/        # MCP Tools
│   │   └── ExampleTool.ts
│   └── index.ts      # Server entry point
├── package.json
└── tsconfig.json

Adding Components

The project includes an example tool in src/tools/ExampleTool.ts. You can add more tools using the CLI:

# Add a new tool
mcp add tool my-tool

# Example tools you might create:
mcp add tool data-processor
mcp add tool api-client
mcp add tool file-handler

Tool Development

Here’s an example of how to structure a custom tool:

import { MCPTool } from "mcp-framework";
import { z } from "zod";

interface MyToolInput {
  message: string;
}

class MyTool extends MCPTool<MyToolInput> {
  name = "my_tool";
  description = "Describes what your tool does";

  schema = {
    message: {
      type: z.string(),
      description: "Description of this input parameter",
    },
  };

  async execute(input: MyToolInput) {
    // Your tool logic here
    return `Processed: ${input.message}`;
  }
}

export default MyTool;

Publishing to npm

To publish your server as an npm package:

  1. Update your package.json:
  2. Ensure name is unique and follows npm naming conventions.
  3. Set appropriate version.
  4. Add description, author, license, etc.
  5. Check bin points to the correct entry file.

  6. Build and test locally:
    shell npm run build npm link filesystem # Test your CLI locally

  7. Login to npm (create account if necessary):
    shell npm login

  8. Publish your package:
    shell npm publish

Using with Claude Desktop

Local Development

Add this configuration to your Claude Desktop config file:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "filesystem": {
      "command": "node",
      "args":["/absolute/path/to/filesystem/dist/index.js"]
    }
  }
}

After Publishing

Once published, update your Claude Desktop config file:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["filesystem"]
    }
  }
}

Building and Testing

To build and test your server:

  1. Make changes to your tools.
  2. Run npm run build to compile.
  3. The server will automatically load your tools on startup.

Learn More

About

The Filesystem MCP Server is a versatile tool for extending the capabilities of the Claude Desktop client with custom tools and workflows. It leverages the power of the MCP framework and supports Server-Sent Events (SSE) for real-time communication.

Resources

Stars

3 stars

Watchers

1 watching

Forks

0 forks

Languages

Features & Capabilities

Categories
mcp_server model_context_protocol typescript sse filesystem api_integration claude

Implementation Details

Stats

0 Views
3 GitHub Stars

Repository Info

QuantGeekDev Organization

Similar MCP Servers

continuedev_continue by continuedev
25049
21423
9300