fix: accept api-key header for Perplexity MCP connector
Some checks are pending
Check Python Version Consistency / Check Python Version (push) Waiting to run

This commit is contained in:
Chris Christiansen 2026-06-28 23:40:23 +00:00
parent 34c7b77a9f
commit 9d0f45cdd6

View File

@ -75,9 +75,10 @@ class ToolRequest(BaseModel):
@app.post("/tools/call") @app.post("/tools/call")
async def call_tool( async def call_tool(
req: ToolRequest, req: ToolRequest,
x_mcp_secret: Optional[str] = Header(default=None) x_mcp_secret: Optional[str] = Header(default=None, alias="X-MCP-Secret"),
api_key: Optional[str] = Header(default=None, alias="api-key")
): ):
_auth_check(x_mcp_secret) _auth_check(x_mcp_secret or api_key)
handler = TOOLS.get(req.tool) handler = TOOLS.get(req.tool)
if not handler: if not handler:
raise HTTPException(status_code=404, detail=f"Unknown tool: {req.tool}") raise HTTPException(status_code=404, detail=f"Unknown tool: {req.tool}")
@ -86,8 +87,11 @@ async def call_tool(
@app.get("/tools") @app.get("/tools")
async def list_tools(x_mcp_secret: Optional[str] = Header(default=None)): async def list_tools(
_auth_check(x_mcp_secret) x_mcp_secret: Optional[str] = Header(default=None, alias="X-MCP-Secret"),
api_key: Optional[str] = Header(default=None, alias="api-key")
):
_auth_check(x_mcp_secret or api_key)
return {"tools": list(TOOLS.keys())} return {"tools": list(TOOLS.keys())}