filesystem-mcp-server
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., "@filesystem-mcp-serverList all files in the resumes directory"
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.
Milestone 2 — MCP-Based Resume Matching System
Architecture Overview
┌─────────────────────────┐ JSON-RPC 2.0 (TCP) ┌─────────────────────────────┐
│ matching_agent.py │ ◄──────────────────────── │ filesystem_mcp_server.py │
│ (LangGraph + GPT-4) │ ──────────────────────── ►│ (MCP Server, port 8765) │
│ │ │ │
│ Nodes: │ tools/call → result │ Tools exposed: │
│ 1. load_job_desc │ │ • read_file │
│ 2. load_resumes │ │ • write_file │
│ 3. watch_new_resumes │ │ • list_directory │
│ 4. match_candidates────┼──► GPT-4o (OpenAI API) │ • search_files │
│ 5. save_report │ │ • get_file_info │
└─────────────────────────┘ │ • delete_file │
│ • watch_directory ★ │
│ • batch_process ★ │
└─────────────────────────────┘Setup
pip install -r requirements.txt
export OPENAI_API_KEY="sk-..."Running
Step 1 — Start the MCP server (TCP mode)
python filesystem_mcp_server.py --transport tcp --port 8765Step 2 — Run the agent (separate terminal)
python matching_agent.py --jd job_descriptions/senior_engineer.txt --resumes resumes/Step 3 — Run tests
python -m pytest tests/ -vDemo (all-in-one)
python demo_runner.pyFiles
File | Purpose |
| MCP server — JSON-RPC 2.0, 8 tools, stdio + TCP transport |
| Async MCP client used by the agent |
| LangGraph agent with 5 nodes, all I/O via MCP |
| 29 unit tests (JSON-RPC, tools, batch, watch) |
| End-to-end demo script |
| Sample resume files (alice_chen.txt, bob_martinez.txt, priya_nair.txt) |
| Sample JD (senior_engineer.txt) |
| Server logs + generated match reports |
MCP Protocol Details
The server implements MCP 2024-11-05 over JSON-RPC 2.0.
Lifecycle
Client → initialize (protocolVersion, capabilities)
Server → {protocolVersion, capabilities, serverInfo}
Client → initialized (notification, no response)Tool call
→ {"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"batch_process","arguments":{...}}}
← {"jsonrpc":"2.0","id":3,"result":{"content":[{"type":"text","text":"{...}"}],"isError":false}}Error codes
Code | Meaning |
-32700 | Parse error (invalid JSON) |
-32601 | Method not found |
-32602 | Invalid params (missing required field) |
-32001 | File not found |
-32002 | Permission denied / path traversal |
watch_directory
Polls a directory every N seconds for new *.txt files. Returns file_created events:
{"event": "file_created", "path": "resumes/new_candidate.txt", "timestamp": "...", "size_bytes": 1234}batch_process
Processes multiple files in one RPC call. Operations:
read_all— return full content of each fileword_count— words, lines, chars per fileextract_emails— regex-extracted emails per filesummarize_stats— compact metadata for matching pipeline
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.
Latest Blog Posts
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/paonebharti/MCP-integration'
If you have feedback or need assistance with the MCP directory API, please join our Discord server