MCP File System Agent
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., "@MCP File System AgentList all PDF files in the tests folder."
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 File System Agent
A local agentic file-system assistant built with LangChain, Ollama, FastMCP, and MCP.
The project demonstrates how an LLM can autonomously select and use tools exposed by an MCP server to perform file-related operations such as reading, listing, writing, and searching files.
Architecture
User
│
▼
┌─────────────────┐
│ LangChain │
│ Agent │
└────────┬────────┘
│
▼
┌─────────────────┐
│ Ollama LLM │
│ Qwen3 1.7B │
└────────┬────────┘
│
Tool selection
│
▼
┌──────────────────────┐
│ LangChain MCP Adapter│
└──────────┬───────────┘
│
MCP / HTTP
│
▼
┌──────────────────────┐
│ FastMCP Server │
│ localhost:8000/mcp │
└──────────┬───────────┘
│
┌─────────────┼─────────────┐
▼ ▼ ▼
read_file list_files write_file
│
▼
Local File SystemRelated MCP server: local-mcp
Features
MCP-based tool architecture
Local FastMCP server using HTTP transport
LangChain agent with tool calling
Local LLM inference through Ollama
PDF file reading
DOCX file reading and writing
File listing with extension filtering
Searching inside PDF and DOCX files
Conversation state using LangGraph checkpointing
Automatic tool selection by the LLM
Tech Stack
Python
LangChain
LangGraph
Ollama
Qwen3 1.7B
FastMCP
Model Context Protocol (MCP)
langchain-mcp-adaptersPyPDF
python-docx
Project Structure
MCP/
│
├── tests/
│ └── sample.docx
│
├── fs_mcp.py
├── main.py
├── requirements.txt
└── README.mdInstallation
1. Clone the repository
git clone https://github.com/jibixn/File-System-Tools-MCP
cd MCP2. Install Python dependencies
pip install -r requirements.txt3. Install Ollama
Install Ollama from the official website and make sure it is running locally.
Then pull the model:
ollama pull qwen3:1.7bYou can verify that the model is available with:
ollama listRunning the Project
The project uses two processes because the MCP server communicates with the client over HTTP.
Terminal 1 — Start the MCP server
Run this command from the project root:
python fs_mcp.pyThe server should be available at:
http://127.0.0.1:8000/mcpTerminal 2 — Start the agent
Open another terminal in the project root:
python main.pyYou can then enter requests such as:
Read the file in tests folder named sample.docx and provide me the summary.or:
List all PDF files in the tests folder.or:
Write "Hello, World!" to tests/output.docx.Example Agent Flow
For a request such as:
Read the file in tests folder named sample.docx and provide me the summary.the agent performs the following:
User request
│
▼
LLM analyzes request
│
▼
LLM selects read_file
│
▼
LangChain MCP Adapter
│
▼
MCP HTTP request
│
▼
FastMCP read_file()
│
▼
python-docx reads file
│
▼
Tool result returned to agent
│
▼
LLM summarizes content
│
▼
Final responseRequirements
Python 3.11+ is recommended.
Ollama must be installed and running locally.
The Qwen model must be available:
ollama pull qwen3:1.7bYou can also use a model through an inference provider.
Dependencies
The project's direct dependencies are:
fastmcp==3.4.7
langchain==1.3.14
langchain-mcp-adapters==0.3.2
langchain-ollama==1.1.0
langgraph-checkpoint==4.2.0
pypdf==6.14.2
python-docx==1.2.0Future Improvements
Add support for more file formats
Add file deletion and directory creation tools
Add stronger path validation and sandboxing
Add authentication for remote MCP servers
Add streaming responses
Add richer document parsing
Add persistent conversation storage
Add additional MCP servers for databases, GitHub, or web search
Improve tool-selection reliability with larger local models
Learning Goals
This project demonstrates the interaction between:
LLM
↓
LangChain Agent
↓
Tool Calling
↓
MCP Client
↓
MCP Protocol
↓
FastMCP Server
↓
Python FunctionsIt is intended as a practical example of building an agentic application with Model Context Protocol (MCP) and locally hosted LLMs.
This server cannot be installed
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 Servers
- Flicense-qualityDmaintenanceAutomates file system operations through natural language commands using a combination of LLM (Ollama), MCP tools, and a Python bridge agent.
- Alicense-qualityBmaintenanceA lightweight, stdio-based MCP server enabling AI assistants to perform local file system operations like reading, writing, searching, and executing commands.5,309MIT
- Alicense-qualityCmaintenanceA containerized MCP bridge that lets local or cloud LLMs access your filesystem and perform web searches via Ollama and FastMCP.MIT
- Alicense-qualityCmaintenanceExperimental MCP server for local LLM orchestration with filesystem tools (read, write, list, delete files) and a CLI agent that communicates via Ollama.9ISC
Related MCP Connectors
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
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/jibixn/File-System-Tools-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server