Create a Stdio-transport based server implementation
Fix the clunky API for declaring tools, prompts and resources
and clean up the code.
Add an integration test for end-to-end testing the server
See integration.client
from lsp4clj
for inspiration
Checks and Balances in the mcp-cljc-sdk code
Make sure that handle-* functions are implement proper checks
Read through the python decorator code to double-check if we are doing the right thing here.
Implement best practices for prompts
Implement best practices for tools
Implement best practices for resources
Ensure that error handling is correctly done for transports
Implement best practices for transports
Implement the entire roots section of the protocol
Implement the entire sampling section of the protocol
Implement a Stdio-transport based Client
Implement the SSE Transport
Implement the SSE-transport based server
Implement the SSE-transport based client
Create a CLI tool for how tools, prompts, resources should be defined
Easily create new projects, in deps-new
style
Organize them properly, making it possible to build servers fast.
Make it language-agnostic, allowing the tool to create Clojure, Python, TS projects.
Explore babashka as the runner in Claude Desktop / Inspector
The current code is wildly incompatible with bb, so this is a long-shot. But bb compatibility will mean speed and ease of use.