XW

xtraordinaryscar/workspace-assistant-mcp

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

0 stars 0 forks 品質 58 トレンド 14

A small Model Context Protocol server, written in Python, that gives Claude twelve tools for working with a project folder: listing, searching, reading, editing and analyzing files, generating...

概要

A small Model Context Protocol server, written in Python, that gives Claude twelve tools for working with a project folder: listing, searching, reading, editing and analyzing files, generating Markdown output, saving notes, and read-only git information. Built for a university course project using the official mcp Python SDK (version 1.x, FastMCP style). It serves MCP over on 127.0.0.1. claude.ai reaches it through a fixed address, and small watchdog scripts keep the server and tunnel running. notes/ is created the first time write_note (or a saved report) writes a file. .trash/ holds files removed by delete_file. logs/ holds the watchdog output. The tests use a temporary folder and delete it afterwards. 1. Download Python 3.10 or newer from https://www.python.org/downloads/ 2. In the installer, tick before clicking Install. 3. Open a new Command Prompt and check: python --version requirements.txt pins mcp>=1.8.0,<2. Streamable HTTP needs 1.8 or newer, and version 2.

README

以下は原文 README の抜粋です。原文を見る。

workspace-assistant (MCP server)

A small Model Context Protocol server, written in Python, that gives Claude twelve tools for working with a project folder: listing, searching, reading, editing and analyzing files, generating Markdown output, saving notes, and read-only git information.

Built for a university course project using the official mcp Python SDK (version 1.x, FastMCP style). It serves MCP over streamable HTTP on 127.0.0.1. claude.ai reaches it through a fixed ngrok address, and small watchdog scripts keep the server and tunnel running.

What it does

Tool What it does Writes files?
list_project_files Lists files with size and last-modified date, with an optional extension filter No
analyze_text_file Word count, line count, reading time and top 10 keywords No
search_in_files Case-insensitive keyword search across text files, with file and line numbers No
generate_markdown_toc Builds a Markdown table of contents from a .md file’s headings No
generate_project_report Markdown summary: counts by file type, total size, largest and newest files Only if save_as is given
write_note Creates a new .md or .txt file in notes/ Yes (new files only)
find_todos Lists TODO, FIXME and NOTE comments with file and line number No
find_broken_links Reports relative links in a .md file that point to files that don’t exist No
read_file Returns a file’s lines with line numbers, in parts for long files No
str_replace Replaces one exact piece of text in an existing file (must match exactly once; never edits server.py) Yes (existing files only)
delete_file Moves a file into .trash/ so it can be recovered; never erases it; never touches server.py Yes (moves to .trash/)
git_lite Runs only git status, git log or git diff and returns the output No

Project structure

mcp-server/
├── server.py          # the MCP server and all tools
├── requirements.txt   # Python dependency (mcp 1.x)
├── test_tools.py      # tests that call the tools directly (no Claude needed)
├── run-server.bat     # keeps the server running (restarts it if it stops)
├── run-tunnel.bat     # keeps the ngrok tunnel running (restarts it if it stops)
├── start-all.bat      # starts both watchdogs
├── check-status.bat   # checks that both addresses respond
├── handoff/           # session handoff files (see "Handoff protocol" below)
├── .gitignore         # keeps notes/, .trash/, logs/, caches and test files out of git
└── README.md

notes/ is created the first time write_note (or a saved report) writes a file. .trash/ holds files removed by delete_file. logs/ holds the watchdog output. The tests use a temporary folder and delete it afterwards.

Setup (Windows), one time

1. Install Python

GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →