Unix Manual 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., "@Unix Manual Servershow me the man page for grep"
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.
Unix Manual Server (MCP)
An MCP server that provides Unix command documentation directly within Claude conversations.
Features
Get command documentation: Retrieve help pages, man pages, and usage information for Unix commands
List common commands: Discover available commands on your system, categorized by function
Check command existence: Verify if a specific command is available and get its version information
Related MCP server: DevDocs MCP Server
Installation
Prerequisites
Python 3.13+
Claude Desktop or any MCP-compatible client
Setup
Clone this repository
Install the package:
pip install -e .
# or
uv install -e .Install the server in Claude Desktop:
mcp install unix_manual_server.py
# uv
uv run mcp install unix_manual_server.pyUsage
Once installed, you can use the server's tools directly in Claude:
Get command documentation
I need help with the grep command. Can you show me the documentation?List common commands
What Unix commands are available on my system?Check if a command exists
Is the awk command available on my system?Development
To test the server locally without installing it in Claude:
mcp dev unix_manual_server.pySecurity
The server takes precautions to prevent command injection by:
Validating command names against a regex pattern
Executing commands directly without using shell
Setting timeouts on all command executions
Only checking for documentation, never executing arbitrary commands
Logging
Logs are saved to unix-manual-server.log in the same directory as the script, useful for debugging.
use
@modelcontextprotocol/inspectorwithnpxunder the hood.
uv run mcp dev unix_manual_server.pynpx @modelcontextprotocol/inspector uv run unix_manual_server.pyLicense
MIT
Created with the MCP Python SDK. For more information about MCP, visit modelcontextprotocol.io.
Available Tools
3 toolscheck_command_existsC
Check if a command exists on the system.
Args: command: The command to check
Returns: Information about whether the command exists
| Name | Required | Description | Default |
|---|---|---|---|
| command | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool checks for command existence but doesn't explain how it performs this check (e.g., system path search, specific OS behavior), what 'exists' means (e.g., executable in PATH), or any limitations (e.g., platform dependencies). This is inadequate for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured with clear sections for Args and Returns. However, the 'Returns' section is vague ('Information about whether the command exists'), which slightly reduces efficiency. Overall, it's appropriately sized with minimal fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and low schema coverage, the description is incomplete. It lacks details on behavior, parameter usage, and return format, making it inadequate for an agent to reliably invoke this tool. More context is needed to compensate for the missing structured data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds minimal value: it names the parameter ('command') and states it's 'The command to check,' but doesn't clarify format (e.g., string without arguments, case sensitivity) or examples. This is insufficient given the low schema coverage and single parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Check if a command exists on the system.' This is a specific verb ('Check') and resource ('command'), making it understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_command_documentation' or 'list_common_commands', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or specify scenarios where checking command existence is appropriate versus retrieving documentation or listing commands. This leaves the agent without contextual usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_command_documentationC
Get documentation for a command in Unix-like system.
Args: command: The command to get documentation for (no arguments) prefer_economic: Whether to prefer the economic approach (--help/-h/help) [default: True] man_section: Specific manual section to look in (1-9) [optional]
Returns: The command documentation as a string
| Name | Required | Description | Default |
|---|---|---|---|
| command | Yes | ||
| prefer_economic | No | ||
| man_section | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the tool returns documentation as a string, which is helpful, but doesn't cover important behavioral aspects like error handling (what happens if the command doesn't exist), performance characteristics, or system dependencies. The description is functional but lacks operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns) and gets straight to the point. The opening sentence states the purpose clearly, followed by parameter details. While efficient, the 'prefer_economic' explanation could be more concise or clearer about what 'economic approach' means in practice.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters, 0% schema coverage, no annotations, and no output schema, the description does an adequate job. It explains the basic functionality and parameters, but lacks important context about error conditions, performance, and system requirements. The return type is mentioned but not the format or potential variations in output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides parameter documentation in the Args section, explaining what each parameter does. With 0% schema description coverage, this adds significant value beyond the bare schema. However, some explanations could be clearer - 'prefer_economic' is described but the meaning of 'economic approach' isn't fully explained, and 'man_section' range (1-9) is mentioned but not what different sections represent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get documentation for a command in Unix-like system.' It specifies the verb ('get documentation') and resource ('a command'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'check_command_exists' or 'list_common_commands' beyond the obvious functional difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus its siblings. While the purpose is clear, there's no mention of alternatives like using 'check_command_exists' first or when 'list_common_commands' might be more appropriate. The description only explains what the tool does, not when to choose it over other options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_common_commandsB
List common Unix commands available on the system.
Returns: A list of common Unix commands
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns a list but doesn't specify details like format, size, or whether it's static or dynamic. For a tool with no annotations, this is insufficient to inform the agent about key behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured, with two sentences that directly state the purpose and return value. It's front-loaded with the main action and avoids unnecessary details, though the 'Returns:' section could be integrated more smoothly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks depth in behavioral context and usage guidelines, which are needed for full agent understanding in this server context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter details in the description. The baseline for this scenario is 4, as the description appropriately avoids redundant information and focuses on the tool's purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'List common Unix commands available on the system.' It specifies the verb ('List') and resource ('common Unix commands'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'check_command_exists' or 'get_command_documentation', which prevents a score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or contexts where this tool is preferred, such as for general exploration versus specific checks. This lack of comparative usage information limits its helpfulness for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
- First observed
check_command_exists - First observed
get_command_documentation - First observed
list_common_commands
TDQS
Each tool has a clearly distinct purpose: checking command existence, retrieving documentation, and listing common commands. There is no overlap in functionality, making it easy for an agent to select the appropriate tool without confusion.
The tools follow a consistent verb_noun pattern (check_command_exists, get_command_documentation, list_common_commands), with minor deviations in verb choice ('check', 'get', 'list'). The naming is predictable and readable, though not perfectly uniform in verb style.
With only 3 tools, the server feels thin for a Unix manual domain, which might include operations like searching commands, filtering by category, or managing documentation. While the core functions are covered, the toolset could benefit from additional utilities to enhance completeness.
The tools cover the essential operations for a Unix manual server: verifying command availability, fetching documentation, and listing commands. Minor gaps exist, such as the inability to search or filter commands, but agents can work around these limitations with the provided tools.
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 Connectors
Source-checked CLI guides and model-aware planning for Claude Code, Codex, and Grok Build.
- platform7nOAuthtech.p7n
Connect Claude to your Platform7n workspaces — chat, links, and tasks. One-click OAuth.
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides comprehensive access to documentation for 600+ Kali Linux penetration testing and security tools through Claude Desktop, enabling users to search, explore, and get detailed information about security tools by category or functionality.1-
- FlicenseAqualityDmaintenanceProvides access to 600+ documentation libraries from DevDocs.io including Python, JavaScript, React, Django, and more. Enables searching, browsing, and retrieving documentation content directly through Claude Desktop.55-
- FlicenseNot gradedqualityDmaintenanceProvides real-time retrieval of official documentation for LangChain, LlamaIndex, and OpenAI. It enables context-aware coding by fetching the latest API references and guides directly into Claude via the Model Context Protocol.-
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with access to Linux man pages for searching, retrieving, and exploring system documentation.14MIT
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/tizee/mcp-unix-manual'
If you have feedback or need assistance with the MCP directory API, please join our Discord server