Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
MCP Server: Cursor prompts for optional params instead of calling the tool
I’m running a custom MCP server (@blindpay/mcp: https://www.npmjs.com/package/@blindpay/mcp) that makes instance_id optional when BLINDPAY_INSTANCE_ID is set, and auto-injects it at runtime.
Issue: In Cursor, the AI still asks me for instance_id instead of calling the tool without it.
Confirmed: Works as expected in MCP Inspector, so this looks Cursor-specific.
Expected (when BLINDPAY_INSTANCE_ID is set):
- User: “list the receivers for my blindpay instance”
- AI calls
GetV1InstancesReceiverswithoutinstance_id - Server injects the env value and the request succeeds
Actual in Cursor:
- AI asks for the instance ID rather than calling the tool
Actual in MCP Inspector (works):
- Schema shows
instance_idis not required - Tool call without it succeeds; server injects the ID and the request succeeds
Steps to Reproduce
-
Create an MCP server that dynamically removes a parameter from the
requiredarray in tool schemas when an environment variable is set -
Configure the MCP server in
~/.cursor/mcp.jsonwith the environment variable:
{
“mcpServers”: {
“test-server”: {
“command”: “node”,
“args”: [“./server.js”],
“env”: {
“DEFAULT_PARAM”: “value123”
}
}
}
}3. Restart Cursor completely -
Ask the AI to use a tool that has an optional parameter (made optional via env var)
Expected: AI calls the tool without the optional parameter
Actual: AI prompts user for the parameter instead of calling the tool
- Test the same MCP server with MCP Inspector:
DEFAULT_PARAM=“value123” mcp-inspector node ./server.jsResult: Works correctly - tool can be called without the parameter, and auto-injection fills it in
This proves the issue is specific to Cursor’s AI decision-making, not the MCP server implementation.
Screenshots / Screen Recordings
Operating System
MacOS
Current Cursor Version (Menu → About Cursor → Copy)
Version: 2.2.44
VSCode Version: 1.105.1
Commit: 20adc1003928b0f1b99305dbaf845656ff81f5d0
Date: 2025-12-24T21:41:47.598Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Darwin arm64 25.2.0
For AI issues: which model did you use?
composer-1 and sonnet 4.5
Does this stop you from using Cursor
No - Cursor works, but with this issue
