Skip to content

MCP Server - All POST/UPDATE operations broken on current main (worked on a6d25a0cb) #2922

@jledoze

Description

@jledoze

Environment:

OS: macOS
Package manager: uv
MCP Client: Claude Desktop
Repository: CISO-Assistant MCP Server (cli directory)

Issue Summary:
The MCP server's POST and UPDATE operations are completely broken on current main branch. All write operations return GET responses instead of performing create/update actions. The CISO Assistant API itself works correctly - this is purely an MCP server implementation bug.
Last Working MCP Server Version:

✅ Commit: a6d25a0
All POST and UPDATE operations functioned correctly

Current Broken Version:

❌ Branch: main (current HEAD)
All POST and UPDATE operations broken in MCP server

Affected MCP Tools:

create_risk_scenario - returns list of scenarios instead of creating
create_task_template - broken
update_task_template - broken
ALL other POST/UPDATE MCP tools - broken

Steps to Reproduce:

Clone CISO-Assistant MCP repository
Checkout current main branch
Install with uv --directory /path/to/cli
Configure Claude Desktop:

json {
"mcpServers": {
"CISO-Assistant-MCP": {
"command": "uv",
"args": ["--directory", "/path/to/cli", "run", "ca_mcp.py"]
}
}
}

Attempt any create or update operation via MCP

Expected Behavior:
MCP server sends POST request to CISO Assistant API, resource is created/updated, returns success.
Actual Behavior:

MCP server sends wrong request (GET instead of POST)
Returns HTTP 200 with GET response (list of existing resources)
Example: create_risk_scenario returns all existing scenarios instead of creating new one
The CISO Assistant API is working correctly - this is a bug in the MCP server request construction

Impact:
Complete loss of write functionality through MCP interface - only read operations work.
Root Cause (suspected):
A regression in the MCP server code between a6d25a0 and current main broke how POST/UPDATE requests are constructed. Likely:

Wrong HTTP method being used
Wrong endpoint being called
Incorrect request payload formatting

Workaround:
bashcd /path/to/ciso-assistant-community/cli
git checkout a6d25a0
Files to investigate:

ca_mcp.py and related MCP server implementation files
Request construction functions (make_post_request, make_put_request, etc.)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions