Virgil
91e41615d1
feat(mcp): implement HTTP resource reads
...
Add support for plans://, sessions://, and content:// resources via the MCP API controller instead of returning 501 for every request.\n\nCo-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 12:30:07 +00:00
Virgil
20caaebc21
Add describe_table MCP tool
2026-04-01 09:55:50 +00:00
Snider
907d62a545
fix(mcp): resolve 17 code review findings + php route('login') fix
...
CI / test (push) Failing after 2s
Go (17 findings from Codex sweep):
- CRITICAL: bare type assertion panic in tools_metrics.go
- CRITICAL: webviewInstance data race — added webviewMu mutex
- CRITICAL: swallowed Glob error in agentic/ingest.go
- HIGH: 9 nil-pointer dereferences on resp.StatusCode across agentic/
- HIGH: swallowed os.Open/os.Create errors in dispatch, queue, resume
- HIGH: hardcoded ~/Code/host-uk/core paths replaced with s.workspaceRoot()
- HIGH: wsServer/wsAddr data race — added wsMu to Service struct
- MEDIUM: ChannelSend stdout guard for non-stdio transports
- MEDIUM: readPlan discarded underlying error
- MEDIUM: TCP session IDs now unique per connection (RemoteAddr)
- LOW: SPDX typo in brain/provider.go
PHP (route('login') fix):
- Replace route('login') with url('/login') in 4 MCP files
- route('login') fails on mcp.* subdomains where no login route exists
- url('/login') resolves correctly on any domain
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-21 23:13:03 +00:00
Snider
5191bd0cda
fix(mcp): use AgentApiKey for auth, graceful fallback when ApiKey model missing
...
The old Core\Mod\Api\Models\ApiKey was removed when core/php-api was renamed.
Now tries AgentApiKeyService first, falls back to workspace apiKeys,
catches Throwable if either model is unavailable.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-16 10:00:29 +00:00
Snider
9e2d77ed2a
feat: initial core/mcp — Go MCP server + PHP Laravel MCP package
...
Moved from go-ai/mcp/ and php-mcp. Produces core-mcp binary.
49 MCP tools including brain, RAG, ML, IDE bridge.
2026-03-09 18:34:17 +00:00