current_timeLABSCO SUMMARY
The small stuff, so you stop writing it each time.
None of these tools is hard to write; having them all already there is the point — hash a file, count words, pull the emails out of a blob, check whether a URL resolves, without a script per task. It reads the local filesystem, environment variables and process list, so run it somewhere you are comfortable with an agent seeing all three.
What it is
A Python server carrying a wide set of small tools, grouped into date and time, local file handling, system information, text processing, and web operations.
What you get
- Date and time: current time, timestamp formatting, age from a birth date, days between two dates, a month calendar
- Files: read a file, detailed file information, list a directory, MD5/SHA256 hashing, pattern search
- System: general system information, CPU, memory, disks, network interfaces, running processes, environment variables
- Text: word and line counts, regex search and replace, email and URL extraction, text analysis, encode/decode, hashing, chunking
- Web: HTTP requests, URL parsing and building, URL encode/decode, format and reachability validation, domain extraction
- Async stdio communication, configurable logging, and a CLI
Requirements
Python 3.10 or later and uv; installed from source. Everything except the web tools acts on the machine it runs on — the environment variables and process list tools read that machine's real environment and processes.
Setup effort
Build from source — git clone https://github.com/SergiFuster/mcp-custom-tools.git
USE CASES
Inspecting files without a shell
Read a file, get its details, list the directory around it, and hash it to compare against another copy.
Getting structure out of a wall of text
Count words and lines, run a regex replace, and pull out the emails and URLs it contains.
Checking what a machine is doing
Read CPU, memory, disk and network information, and the list of running processes.
Doing date arithmetic without getting it wrong
Days between two dates, an age from a birth date, a timestamp formatted readably, a month laid out as a calendar.
Poking at a URL
Make the HTTP request, parse the URL into parts, check that it validates and resolves, and pull the domain out.
Splitting text to fit somewhere else
Chunk a long string, then encode or hash it for whatever consumes it next.
31 tools
Listed in project docs. Your client may show a different list.
format_timestampcalculate_agedays_betweenmonth_calendarread_filefile_infolist_directorycalculate_hashsearch_filessystem_infocpu_infomemory_infodisk_infonetwork_infoprocess_listenvironment_varsword_countsearch_replaceextract_emailsextract_urlstext_analysisencode_decodegenerate_hashsplit_texthttp_requestparse_urlbuild_urlurl_encode_decodevalidate_urlextract_domainBEFORE YOU INSTALL
What to know first
Tools you get
31 tools named in the project's documentation.
Requires
- uv on PATH
- Python 3.10+
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone this one yourself.
Server setup
git clone https://github.com/SergiFuster/mcp-custom-tools.git
cd mcp-custom-tools
uv sync
uv run mcp-server --log-level INFOMCP Clients
Claude Desktop
{
"mcpServers": {
"mcp-custom-tools": {
"command": "uv",
"args": [
"--directory",
"<YOUR_PATH_TO_MCP_CUSTOM_TOOLS>",
"run",
"mcp-server",
"--log-level",
"INFO"
]
}
}
}