📦
Nim
No description available
0 installs
Trust: 30 — Low
Other
Ask AI about Nim
Powered by Claude · Grounded in docs
I know everything about Nim. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
Nim Model Context Protocol (MCP) SDK
Nim implementation of the Model Context Protocol (MCP) for building AI agent capabilities.
Installation
- Install Nim compiler
- Clone repository:
git clone https://github.com/yourusername/mcp-nim.git
cd mcp-nim
Configuration
Claude Integration
-
Locate MCP config file:
- Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json(macOS) - Claude Desktop:
C:\Users\xxx\AppData\Roaming\Claude\claude_desktop_config.json(Windows) - Cursor:
%APPDATA%\Cursor\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json(Windows)
- Claude Desktop:
-
Add server configuration:
{
"mcpServers": {
"filesystem-server": {
"command": "nim",
"args": ["c","-r", "examples/filesystem_server.nim"],
"cwd": "/path/to/sdk/root",
"disabled": false
}
}
}
Development
Creating MCP Servers
import std/[asyncdispatch, json, options]
import ../src/mcp/[client, types]
import ../src/mcp/shared/[protocol, stdio, transport]
proc main() {.async.} =
let transport = newStdioTransport()
let protocol = newProtocol(some(ProtocolOptions()))
protocol.setRequestHandler(Request, proc(
request: Request,
extra: RequestHandlerExtra
): Future[McpResult] {.async.} =
if request.`method` == "your-method":
result = McpResult()
else:
raise newMcpError(ErrorCode.MethodNotFound)
)
await protocol.connect(transport)
await sleepAsync(1000)
await protocol.close()
when isMainModule:
waitFor main()
Examples
Filesystem Server
protocol.setRequestHandler("tools/list", proc(request: base_types.JsonRpcRequest, extra: protocol.RequestHandlerExtra): Future[JsonNode] {.async.} =
result = %*{
"tools": [
{
"name": "read_file",
"description": "Read file contents",
"inputSchema": {
"type": "object",
"properties": {
"path": {"type": "string"}
},
"required": ["path"],
"additionalProperties": false
}
}
]
}
)
Features
- Type-safe RPC communication
- JSON serialization/deserialization
- Async I/O with progress notifications
- Capability-based security model
- Thread-safe implementations
Building
nimble build
nimble test
nimble docs
License
MIT License
