Adrià Arrufat
a91afab038
mcp: improve event loop and response handling
...
- Use an allocating writer in `sendResponse` to handle large payloads.
- Update the main loop to tick the HTTP client and cap poll timeouts.
- Update protocol version and minify tool input schemas.
2026-03-02 11:12:00 +09:00
Adrià Arrufat
d4747b5386
mcp: own the browser
...
Co-authored-by: Karl Seguin <karlseguin@users.noreply.github.com >
2026-03-02 10:10:08 +09:00
Adrià Arrufat
41b81c8b05
mcp: use io poll for stdin and integrate message loop
...
Replaces blocking stdin reads with `std.io.poll` to allow macrotasks to
run. Removes the stdout mutex as I/O is now serialized.
2026-03-02 10:04:23 +09:00
Adrià Arrufat
42b5e32473
mcp: modernize I/O processing and reuse message buffer
2026-03-01 22:35:28 +09:00
Adrià Arrufat
e9c36fd6f8
mcp: use declarative static definitions for tools and resources
2026-03-01 21:56:48 +09:00
Adrià Arrufat
952dfbef36
mcp: use acquire/release ordering for server running flag
2026-03-01 21:39:38 +09:00
Adrià Arrufat
254984b600
mcp: use dynamic allocation for error messages in tools
2026-03-01 21:36:21 +09:00
Adrià Arrufat
8cbc58d257
mcp: unify error reporting and use named error codes
2026-03-01 21:29:59 +09:00
Adrià Arrufat
e6cc3e8c34
mcp: refactor tools handling
2026-03-01 21:18:28 +09:00
Adrià Arrufat
01798ed7f8
mcp: use sentinel-terminated strings for tool params
2026-03-01 20:58:00 +09:00
Adrià Arrufat
fcad67a854
mcp: pre-initialize tools and resources on server startup
2026-03-01 20:44:11 +09:00
Adrià Arrufat
e359ffead0
mcp: propagate errors in tool schema parsing
2026-03-01 20:39:40 +09:00
Adrià Arrufat
eb09041859
mcp: resolve absolute URLs for links tool
2026-03-01 20:35:13 +09:00
Adrià Arrufat
b3d52c966d
mcp: handle errors during resource and tool streaming
2026-03-01 20:23:23 +09:00
Adrià Arrufat
947e672d18
mcp: stream resource and tool content to JSON output
2026-02-28 23:04:22 +09:00
Adrià Arrufat
96942960a9
mcp: reuse arena allocator for message processing
2026-02-28 22:38:16 +09:00
Adrià Arrufat
8b0118e2c8
mcp: update logging scope to use mcp instead of app
2026-02-28 22:30:02 +09:00
Adrià Arrufat
5f9a7a5381
mcp: ignore unknown json fields and improve error reporting
2026-02-28 22:18:37 +09:00
Adrià Arrufat
6897d72c3e
mcp: simplify request processing to single-threaded
2026-02-28 21:26:51 +09:00
Adrià Arrufat
aae9a505e0
mcp: promot Server.zig to file struct
2026-02-28 21:02:49 +09:00
Adrià Arrufat
5ec4305a9f
mcp: add optional url parameter to tools
2026-02-27 22:17:15 +09:00
Adrià Arrufat
8c8a05b8c1
mcp: consolidate tests and cleanup imports
2026-02-26 00:02:49 +09:00
Adrià Arrufat
34d2fc1503
mcp: support notifications and improve error handling
...
Make Request id optional for JSON-RPC notifications and handle the
initialized event. Improve thread safety, logging, and error paths.
2026-02-25 23:14:06 +09:00
Adrià Arrufat
9b3fa809bf
mcp: add search, markdown, links, and over tools
2026-02-25 20:27:49 +09:00
Adrià Arrufat
5fea4cf760
mcp: add protocol and router unit tests
2026-02-22 23:15:45 +09:00
Adrià Arrufat
a27339b954
mcp: add Model Context Protocol server support
...
Adds a new `mcp` run mode to start an MCP server over stdio.
Implements tools for navigation and JS evaluation, along with
resources for HTML and Markdown page content.
2026-02-22 22:32:14 +09:00