Feature request for product/service
Cursor IDE
Describe the request
I have started setting up cursor hooks in my repository to set up usage metrics for the different MCP servers we have set up. To do this, I need a way of identifying which MCP server call triggered the hook. For servers defined with a url this is not too bad since each server has its url. However, when configuring with command, several of the servers I have set up use docker as the command which on its own is not enough to identify the server. Looking deeper, I was surprised to find that for beforeMCPExecution the inputs look like this but notably do not include the actual MCP server name.
{
"conversation_id": "string",
"generation_id": "string",
"hook_event_name": "string",
"workspace_roots": ["<path>"],
"tool_name": "<tool name>",
"tool_input": "<json params>"
}
// Plus either:
{ "url": "<server url>" }
// Or:
{ "command": "<command string>" }
Considering the hooks.json file already is set up as below, it makes the most sense that <mcp-server-name-1> and <mcp-server-name-2> also be passed down as part of the input to the hook.
{
"mcpServers": {
<mcp-server-name-1>: {
"command": <command>,
"args": [...],
"env": {
<env-var>: <value>
}
},
<mcp-server-name-2>: {
"url": <url>
}
}
}
Alternatively, passing in args instead of just command could be enough for me to identify which server it is but it makes the most sense to just include the mcp_server_name in the payload.