Feature request: make MCP tools discoverable with aliases and @ completion
Feature request: make MCP tools discoverable with aliases and @ completion
Problem
Using MCP tools in Codex is powerful, but the current interaction model asks users to remember long or internal tool names. That slows down common workflows, especially for users who only need a few frequently used tools such as GitHub, Browser, Node REPL, database MCPs, or project-specific integrations.
Natural language routing helps, but it does not fully solve discoverability or user intent. When users want to explicitly choose a tool, the naming surface should be short, searchable, and easy to learn.
Proposal
Add a lightweight tool invocation UX around MCP servers, plugins, and skills:
- Support user-defined aliases
[mcp.aliases]
gh = "github"
br = "browser"
node = "node_repl"
docs = "openai-docs"
Then users can write:
@gh check PR #123
@br open localhost:3000 and take a screenshot
@node run this JavaScript snippet
- Make
@open a fuzzy-search picker
Typing @ should show available MCP servers, plugins, and skills. The picker should support fuzzy matching and show both the short name and what the tool does:
@browser open, inspect, click, and screenshot web pages
@github inspect PRs, issues, CI, and review comments
@node run JavaScript in a Node REPL
- Add
/mcpor/tools
Provide a quick command that lists active tools, aliases, and recommended invocation names:
/mcp
/tools
Example output:
browser aliases: @br
github aliases: @gh
node_repl aliases: @node
- Prioritize recent tools
The @ picker should show recently used tools first. Most users repeatedly use only a small set of tools, so recency will make the feature feel much faster.
- Teach aliases after automatic routing
When Codex automatically selects a tool from natural language, it can occasionally provide a short hint:
Used @browser. Next time you can also write: @br open localhost:3000
This should be limited so it does not become noisy.
- Support project-level aliases
Allow teams to define shared aliases in project config or AGENTS.md, for example:
## Codex aliases
@gh = github
@br = browser
@db = postgres-mcp
This makes tool names consistent across a repo.
- Suggest corrections for unknown names
If the user types an unknown handle such as @githb, Codex should suggest likely matches:
Unknown tool @githb. Did you mean @github or @gh?
Expected behavior
@namemeans "prefer this tool/capability for the next request".- Plain natural language continues to let Codex choose automatically.
- Users no longer need to memorize long MCP names.
- Teams can create stable short names for their own MCP integrations.
Why this matters
MCP adoption depends on low-friction daily use. If users need to remember exact server or tool names, they will fall back to natural language and lose explicit control. Aliases plus @ discovery give users both speed and intent without adding much syntax.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗