emacs_project_current
Get the current project root and name from Emacs to establish project context for further operations.
Instructions
Get the current project root and name
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Get the current project root and name from Emacs to establish project context for further operations.
Get the current project root and name
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It clearly signals a read-only operation via 'Get' and names the returned values (root, name). However, it does not disclose what happens when there is no current project or whether the tool errors or returns nulls, which is a meaningful edge-case gap for a zero-parameter tool.
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 a single, front-loaded sentence with no filler. It communicates the action and the returned data in eight words, making it optimally concise for agent consumption.
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 simple zero-parameter getter, the description is nearly complete: it names the target ('current project') and the output fields ('root and name'). The only missing context is behavior when no current project exists, and since there is no output schema, a brief note about that edge case would improve completeness.
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 zero parameters, so there are no parameter semantics to document. The schema coverage is effectively 100% and the baseline score for a no-parameter tool is 4; the description does not need to add parameter-level detail.
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 states a specific verb ('Get') and resource ('current project root and name'), so the agent knows exactly what the tool returns. It is also clearly distinguishable from sibling tools like emacs_project_list, emacs_project_files, and emacs_project_switch based on the 'current project' qualifier.
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 intended use is implied by 'current project' but not made explicit. There is no mention of when to prefer this over emacs_project_list or emacs_project_switch, nor any when-not-to-use guidance. An agent can infer it is for the active project, but the description does not actively guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mandoo180/emacs-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server