diff --git a/AGENT-PRIMER.md b/AGENT-PRIMER.md index fcd346a..de239f3 100644 --- a/AGENT-PRIMER.md +++ b/AGENT-PRIMER.md @@ -1,6 +1,6 @@ -# AGENT-PRIMER: OpenHarbor.MCP Automated Setup +# AGENT-PRIMER: Svrnty.MCP Automated Setup -**Purpose**: This document guides AI agents to automatically analyze a target system and configure OpenHarbor.MCP integration with minimal human intervention. +**Purpose**: This document guides AI agents to automatically analyze a target system and configure Svrnty.MCP integration with minimal human intervention. **Target Audience**: AI assistants (Claude, ChatGPT, etc.) helping developers integrate MCP server capabilities into .NET applications. @@ -8,7 +8,7 @@ ## Overview -OpenHarbor.MCP is a **standalone, reusable .NET library** that adds Model Context Protocol (MCP) server capabilities to any .NET application. This primer enables AI-automated configuration by walking through system analysis, configuration generation, and validation. +Svrnty.MCP is a **standalone, reusable .NET library** that adds Model Context Protocol (MCP) server capabilities to any .NET application. This primer enables AI-automated configuration by walking through system analysis, configuration generation, and validation. **What you'll automate:** 1. System analysis (detect .NET version, project type, dependencies) @@ -98,20 +98,20 @@ grep -r "DbContext\|AddDbContext" --include="*.cs" ```xml - + - + ``` **Installation command**: ```bash # Via project reference (development) -dotnet add reference /path/to/OpenHarbor.MCP/src/OpenHarbor.MCP.AspNetCore/OpenHarbor.MCP.AspNetCore.csproj +dotnet add reference /path/to/Svrnty.MCP/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj # Via NuGet (when published) -# dotnet add package OpenHarbor.MCP.AspNetCore +# dotnet add package Svrnty.MCP.AspNetCore ``` ### 2.2 appsettings.json Configuration @@ -186,7 +186,7 @@ dotnet add reference /path/to/OpenHarbor.MCP/src/OpenHarbor.MCP.AspNetCore/OpenH #### For ASP.NET Core Web API: ```csharp -using OpenHarbor.MCP.AspNetCore; +using Svrnty.MCP.AspNetCore; var builder = WebApplication.CreateBuilder(args); @@ -222,7 +222,7 @@ app.Run(); ```csharp using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; -using OpenHarbor.MCP.Infrastructure; +using Svrnty.MCP.Infrastructure; var host = Host.CreateDefaultBuilder(args) .ConfigureServices((context, services) => @@ -252,8 +252,8 @@ await host.RunAsync(); **Basic tool structure**: ```csharp -using OpenHarbor.MCP.Core.Abstractions; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Abstractions; +using Svrnty.MCP.Core.Models; namespace YourApp.Mcp.Tools; @@ -434,7 +434,7 @@ public class ListEndpointsTool : IMcpTool ## Step 4: Setup Development Environment -**Goal**: Configure IDE and development tools for OpenHarbor.MCP. +**Goal**: Configure IDE and development tools for Svrnty.MCP. ### 4.1 Launch Settings (launchSettings.json) @@ -463,11 +463,11 @@ public class ListEndpointsTool : IMcpTool } ``` -### 4.2 .editorconfig (Already provided in OpenHarbor.MCP root) +### 4.2 .editorconfig (Already provided in Svrnty.MCP root) **Copy to target project** if needed: ```bash -cp /path/to/OpenHarbor.MCP/.editorconfig /path/to/YourApp/.editorconfig +cp /path/to/Svrnty.MCP/.editorconfig /path/to/YourApp/.editorconfig ``` ### 4.3 .gitignore Updates @@ -603,10 +603,10 @@ find . -name "*.csproj" | head -5 ### Step 2: Generate Configuration -**Created** `samples/CodexMcpServer/` in OpenHarbor.MCP: +**Created** `samples/CodexMcpServer/` in Svrnty.MCP: ``` samples/CodexMcpServer/ -├── CodexMcpServer.csproj # References OpenHarbor.MCP.AspNetCore +├── CodexMcpServer.csproj # References Svrnty.MCP.AspNetCore ├── Program.cs # MCP server setup with CODEX API client ├── appsettings.json # CODEX-specific MCP config ├── Tools/ @@ -730,7 +730,7 @@ echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | dotnet run "mcpServers": { "codex": { "command": "dotnet", - "args": ["run", "--project", "/home/svrnty/codex/OpenHarbor.MCP/samples/CodexMcpServer/CodexMcpServer.csproj"], + "args": ["run", "--project", "/home/svrnty/codex/Svrnty.MCP/samples/CodexMcpServer/CodexMcpServer.csproj"], "transport": "http" } } @@ -743,7 +743,7 @@ echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | dotnet run ## AI Agent Checklist -Use this checklist when assisting a developer with OpenHarbor.MCP integration: +Use this checklist when assisting a developer with Svrnty.MCP integration: - [ ] **System Analysis Complete** - [ ] .NET 8.0 SDK detected @@ -812,7 +812,7 @@ Use this checklist when assisting a developer with OpenHarbor.MCP integration: After successful setup: -1. **Write Tests**: Create unit tests for custom tools (see OpenHarbor.MCP test examples) +1. **Write Tests**: Create unit tests for custom tools (see Svrnty.MCP test examples) 2. **Add Observability**: Integrate logging, metrics, and tracing 3. **Secure Production**: Review permission model, enable HTTPS for HTTP transport 4. **Optimize Performance**: Add caching, connection pooling, batch operations @@ -822,10 +822,10 @@ After successful setup: ## References -- **OpenHarbor.MCP Documentation**: `/docs/` folder in this repository +- **Svrnty.MCP Documentation**: `/docs/` folder in this repository - **MCP Specification**: https://spec.modelcontextprotocol.io - **CODEX Integration Example**: `samples/CodexMcpServer/` -- **Test Examples**: `tests/OpenHarbor.MCP.Integration.Tests/` +- **Test Examples**: `tests/Svrnty.MCP.Integration.Tests/` --- diff --git a/INTEGRATION-GUIDE.md b/INTEGRATION-GUIDE.md index 42f4fe5..a2f5934 100644 --- a/INTEGRATION-GUIDE.md +++ b/INTEGRATION-GUIDE.md @@ -6,14 +6,14 @@ This guide shows how to integrate the CODEX MCP Server with Claude Code CLI (in - .NET 8.0 SDK installed - Claude Code CLI installed and configured -- OpenHarbor.MCP.Server cloned/copied to your system +- Svrnty.MCP.Server cloned/copied to your system ## One-Time Setup ### 1. Build the CODEX MCP Server ```bash -cd /home/svrnty/codex/OpenHarbor.MCP.Server +cd /home/svrnty/codex/Svrnty.MCP.Server dotnet build samples/CodexMcpServer/CodexMcpServer.csproj ``` @@ -22,7 +22,7 @@ dotnet build samples/CodexMcpServer/CodexMcpServer.csproj ```bash # Add CODEX MCP server with HTTP transport claude mcp add --transport stdio --scope user codex \ - dotnet -- run --project /home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer + dotnet -- run --project /home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer ``` **Command Breakdown:** @@ -45,7 +45,7 @@ claude mcp get codex ``` codex: Command: dotnet - Args: [run, --project, /home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer] + Args: [run, --project, /home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer] Transport: stdio Scope: user ``` @@ -96,7 +96,7 @@ The CODEX MCP server exposes 6 tools: ```bash # Test the server manually echo '{"jsonrpc":"2.0","id":"1","method":"tools/list"}' | \ - dotnet run --project /home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer + dotnet run --project /home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer ``` **Expected:** JSON response listing all 6 tools @@ -131,7 +131,7 @@ claude mcp list Run the test script to verify everything works: ```bash -cd /home/svrnty/codex/OpenHarbor.MCP.Server +cd /home/svrnty/codex/Svrnty.MCP.Server python3 test_mcp_server.py ``` @@ -149,7 +149,7 @@ python3 test_mcp_server.py # Change scope claude mcp remove codex claude mcp add --transport stdio --scope project codex \ - dotnet -- run --project /home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer + dotnet -- run --project /home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer ``` ### Using Absolute Paths @@ -158,7 +158,7 @@ For reliability, use absolute paths: ```bash claude mcp add --transport stdio --scope user codex \ - /usr/bin/dotnet -- run --project /home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer + /usr/bin/dotnet -- run --project /home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer ``` ## Next Steps @@ -184,5 +184,5 @@ claude mcp add --transport stdio --scope user codex \ - [Claude Code CLI Documentation](https://docs.claude.com/en/docs/claude-code) - [Model Context Protocol Spec](https://modelcontextprotocol.io) -- [OpenHarbor.MCP README](README.md) +- [Svrnty.MCP README](README.md) - [CODEX Documentation](../CODEX/README.md) diff --git a/QUICK-START.md b/QUICK-START.md index 74021cf..becce47 100644 --- a/QUICK-START.md +++ b/QUICK-START.md @@ -11,7 +11,7 @@ dotnet run --project src/Codex.Api # Listens on http://localhost:5099 # 2. Start CODEX MCP Server (HTTP mode) -cd /home/svrnty/codex/OpenHarbor.MCP.Server +cd /home/svrnty/codex/Svrnty.MCP.Server dotnet run --project samples/CodexMcpServer # Listens on http://localhost:5050 @@ -130,17 +130,17 @@ cd /home/svrnty/codex/CODEX dotnet run --project src/Codex.Api # Terminal 2: Start CODEX MCP Server -cd /home/svrnty/codex/OpenHarbor.MCP.Server +cd /home/svrnty/codex/Svrnty.MCP.Server dotnet run --project samples/CodexMcpServer # Terminal 3: Start MCP Gateway -cd /home/svrnty/codex/OpenHarbor.MCP.Gateway +cd /home/svrnty/codex/Svrnty.MCP.Gateway dotnet run --project samples/CodexMcpGateway # Gateway listens on http://localhost:8080 # Routes requests to http://localhost:5050 ``` -See [OpenHarbor.MCP.Gateway](../OpenHarbor.MCP.Gateway/README.md) for gateway configuration. +See [Svrnty.MCP.Gateway](../Svrnty.MCP.Gateway/README.md) for gateway configuration. ## Troubleshooting @@ -215,7 +215,7 @@ Edit `samples/CodexMcpServer/appsettings.json`: 1. **Full integration guide:** See [INTEGRATION-GUIDE.md](INTEGRATION-GUIDE.md) 2. **Architecture details:** See [README.md](README.md) -3. **Gateway setup:** See [OpenHarbor.MCP.Gateway](../OpenHarbor.MCP.Gateway/README.md) +3. **Gateway setup:** See [Svrnty.MCP.Gateway](../Svrnty.MCP.Gateway/README.md) 4. **Development:** See [docs/module-design.md](docs/module-design.md) --- @@ -238,7 +238,7 @@ dotnet run --project samples/CodexMcpServer -- --stdio "args": [ "run", "--project", - "/home/svrnty/codex/OpenHarbor.MCP.Server/samples/CodexMcpServer/CodexMcpServer.csproj", + "/home/svrnty/codex/Svrnty.MCP.Server/samples/CodexMcpServer/CodexMcpServer.csproj", "--", "--stdio" ], @@ -263,6 +263,6 @@ dotnet run --project samples/CodexMcpServer -- --stdio ## Support -- Issues: [GitHub Issues](https://github.com/yourusername/OpenHarbor.MCP/issues) +- Issues: [GitHub Issues](https://github.com/yourusername/Svrnty.MCP/issues) - MCP Spec: [modelcontextprotocol.io](https://modelcontextprotocol.io) - HTTP Transport Guide: See `HTTP-TRANSPORT-STANDARDIZATION.md` diff --git a/README.md b/README.md index e123966..4dd3d35 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# OpenHarbor.MCP +# Svrnty.MCP **A modular, scalable, secure .NET library for building Model Context Protocol (MCP) servers** @@ -8,9 +8,9 @@ --- -## What is OpenHarbor.MCP? +## What is Svrnty.MCP? -OpenHarbor.MCP is a **standalone, reusable .NET library** that enables any .NET application to become an MCP server, allowing AI agents (like Claude, ChatGPT, or custom LLMs) to interact with your application through a standardized protocol. +Svrnty.MCP is a **standalone, reusable .NET library** that enables any .NET application to become an MCP server, allowing AI agents (like Claude, ChatGPT, or custom LLMs) to interact with your application through a standardized protocol. **Model Context Protocol (MCP)** is an industry-standard protocol backed by Anthropic that defines how AI agents communicate with external tools and data sources. Think of it as a universal adapter that lets AI assistants safely access your application's capabilities. @@ -26,11 +26,11 @@ OpenHarbor.MCP is a **standalone, reusable .NET library** that enables any .NET --- -## Why OpenHarbor.MCP? +## Why Svrnty.MCP? **Problem**: Your .NET application has valuable features (search, data access, document processing, APIs) that AI agents can't easily access. -**Solution**: OpenHarbor.MCP transforms your application into an MCP server, exposing tools that AI agents can discover and execute with proper permissions and rate limiting. +**Solution**: Svrnty.MCP transforms your application into an MCP server, exposing tools that AI agents can discover and execute with proper permissions and rate limiting. **Use Cases**: - Expose knowledge base search to Claude Code CLI (or Desktop) @@ -53,7 +53,7 @@ OpenHarbor.MCP is a **standalone, reusable .NET library** that enables any .NET If you have access to Claude or another AI assistant: 1. Copy this entire folder to your project directory -2. Open your AI assistant and say: "Read AGENT-PRIMER.md and set up OpenHarbor.MCP for my project" +2. Open your AI assistant and say: "Read AGENT-PRIMER.md and set up Svrnty.MCP for my project" 3. The AI will analyze your system, generate configuration, and create sample tools automatically ### Option 2: Manual Setup @@ -62,10 +62,10 @@ If you have access to Claude or another AI assistant: ```bash # Via project reference (development) -dotnet add reference /path/to/OpenHarbor.MCP/src/OpenHarbor.MCP.AspNetCore/OpenHarbor.MCP.AspNetCore.csproj +dotnet add reference /path/to/Svrnty.MCP/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj # OR via NuGet (when published) -# dotnet add package OpenHarbor.MCP.AspNetCore +# dotnet add package Svrnty.MCP.AspNetCore ``` #### Step 2: Configure appsettings.json @@ -99,7 +99,7 @@ Add MCP configuration: #### Step 3: Update Program.cs ```csharp -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using Microsoft.AspNetCore.Builder; var builder = WebApplication.CreateBuilder(args); @@ -132,8 +132,8 @@ await app.RunAsync(); #### Step 4: Create Your First Tool ```csharp -using OpenHarbor.MCP.Core.Abstractions; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Abstractions; +using Svrnty.MCP.Core.Models; public class MyCustomTool : IMcpTool { @@ -203,17 +203,17 @@ echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | dotnet run -- --stdio ## Architecture -OpenHarbor.MCP follows **Clean Architecture** principles: +Svrnty.MCP follows **Clean Architecture** principles: ``` ┌─────────────────────────────────────────────────┐ -│ OpenHarbor.MCP.Cli (Executable) │ +│ Svrnty.MCP.Cli (Executable) │ │ ┌───────────────────────────────────────────┐ │ -│ │ OpenHarbor.MCP.AspNetCore (HTTP/DI) │ │ +│ │ Svrnty.MCP.AspNetCore (HTTP/DI) │ │ │ │ ┌─────────────────────────────────────┐ │ │ -│ │ │ OpenHarbor.MCP.Infrastructure │ │ │ +│ │ │ Svrnty.MCP.Infrastructure │ │ │ │ │ │ ┌───────────────────────────────┐ │ │ │ -│ │ │ │ OpenHarbor.MCP.Core │ │ │ │ +│ │ │ │ Svrnty.MCP.Core │ │ │ │ │ │ │ │ - IMcpServer │ │ │ │ │ │ │ │ - IMcpTool │ │ │ │ │ │ │ │ - IPermissionProvider │ │ │ │ @@ -228,10 +228,10 @@ OpenHarbor.MCP follows **Clean Architecture** principles: | Project | Purpose | Dependencies | |---------|---------|--------------| -| **OpenHarbor.MCP.Core** | Abstractions, interfaces, models | None | -| **OpenHarbor.MCP.Infrastructure** | MCP server implementation, transports, security | Core, System.Text.Json | -| **OpenHarbor.MCP.AspNetCore** | ASP.NET Core integration, DI extensions | Core, Infrastructure, ASP.NET Core | -| **OpenHarbor.MCP.Cli** | Standalone CLI executable | All above | +| **Svrnty.MCP.Core** | Abstractions, interfaces, models | None | +| **Svrnty.MCP.Infrastructure** | MCP server implementation, transports, security | Core, System.Text.Json | +| **Svrnty.MCP.AspNetCore** | ASP.NET Core integration, DI extensions | Core, Infrastructure, ASP.NET Core | +| **Svrnty.MCP.Cli** | Standalone CLI executable | All above | See [Architecture Documentation](docs/architecture.md) for detailed design. @@ -257,12 +257,12 @@ samples/CodexMcpServer/ **Usage with MCP Gateway** (Recommended for Production): ```bash # Run CODEX MCP Server in HTTP mode (default) -cd /path/to/OpenHarbor.MCP.Server/samples/CodexMcpServer +cd /path/to/Svrnty.MCP.Server/samples/CodexMcpServer dotnet run # Server listens on http://localhost:5050 # Configure gateway to route to this server -# See OpenHarbor.MCP.Gateway documentation +# See Svrnty.MCP.Gateway documentation ``` **Alternative: Claude Desktop with Stdio** (Legacy, Local Development): @@ -339,7 +339,7 @@ public class ProcessDocumentTool : IMcpTool ## Security -OpenHarbor.MCP implements defense-in-depth security: +Svrnty.MCP implements defense-in-depth security: ### 1. Permission-Based Access Control @@ -397,7 +397,7 @@ All tool parameters are validated against schema before execution. ## Testing -OpenHarbor.MCP is built with **Test-Driven Development (TDD)**: +Svrnty.MCP is built with **Test-Driven Development (TDD)**: ```bash # Run all tests @@ -413,9 +413,9 @@ dotnet test --filter Category=Integration **Test Structure**: ``` tests/ -├── OpenHarbor.MCP.Core.Tests/ # Unit tests (abstractions, models) -├── OpenHarbor.MCP.Infrastructure.Tests/ # Unit tests (server, transports, security) -└── OpenHarbor.MCP.Integration.Tests/ # End-to-end integration tests +├── Svrnty.MCP.Core.Tests/ # Unit tests (abstractions, models) +├── Svrnty.MCP.Infrastructure.Tests/ # Unit tests (server, transports, security) +└── Svrnty.MCP.Integration.Tests/ # End-to-end integration tests ``` **Example Test** (TDD style): @@ -442,13 +442,13 @@ See [TDD Guide](docs/tdd-guide.md) for complete examples. ### Test Coverage -OpenHarbor.MCP.Server maintains **42.46% line coverage** and **50.00% branch coverage** with **141 tests** passing (100%). +Svrnty.MCP.Server maintains **42.46% line coverage** and **50.00% branch coverage** with **141 tests** passing (100%). **Coverage Breakdown:** - **Lines**: 344 of 810 covered (42.46%) - **Branches**: 72 of 144 covered (50.00%) - **Test Projects**: 2 - - OpenHarbor.MCP.Core.Tests: 82 tests + - Svrnty.MCP.Core.Tests: 82 tests - CodexMcpServer.Tests: 59 tests **Analysis:** @@ -558,7 +558,7 @@ Contributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.md) for gu **Development Setup**: ```bash # Clone repository -git clone https://github.com/yourusername/OpenHarbor.MCP.git +git clone https://github.com/yourusername/Svrnty.MCP.git # Restore dependencies dotnet restore @@ -596,7 +596,7 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file - **Documentation**: [docs/](docs/) - **Examples**: [samples/](samples/) -- **Issues**: [GitHub Issues](https://github.com/yourusername/OpenHarbor.MCP/issues) +- **Issues**: [GitHub Issues](https://github.com/yourusername/Svrnty.MCP/issues) --- diff --git a/Svrnty.MCP.sln b/Svrnty.MCP.sln index abf803e..f9d669d 100644 --- a/Svrnty.MCP.sln +++ b/Svrnty.MCP.sln @@ -5,11 +5,11 @@ VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{78F02CB6-4914-4B68-901E-B00546F7985E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenHarbor.MCP.Core", "src\OpenHarbor.MCP.Core\OpenHarbor.MCP.Core.csproj", "{94C0092B-E1B1-4960-89F5-72BC22BEE4D1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Svrnty.MCP.Core", "src\Svrnty.MCP.Core\Svrnty.MCP.Core.csproj", "{94C0092B-E1B1-4960-89F5-72BC22BEE4D1}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{B419E78A-FF41-452F-9450-59D7E559D175}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenHarbor.MCP.Core.Tests", "tests\OpenHarbor.MCP.Core.Tests\OpenHarbor.MCP.Core.Tests.csproj", "{E4E7F10A-6195-4E12-B0FD-E0EF7057286C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Svrnty.MCP.Core.Tests", "tests\Svrnty.MCP.Core.Tests\Svrnty.MCP.Core.Tests.csproj", "{E4E7F10A-6195-4E12-B0FD-E0EF7057286C}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{8430E1E0-6DC8-458D-A0AA-80D8F202264E}" EndProject @@ -17,7 +17,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodexMcpServer", "samples\C EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodexMcpServer.Tests", "tests\CodexMcpServer.Tests\CodexMcpServer.Tests.csproj", "{7287EB04-9B7D-450C-87FF-21FB1FD9949E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenHarbor.MCP.AspNetCore", "src\OpenHarbor.MCP.AspNetCore\OpenHarbor.MCP.AspNetCore.csproj", "{14914206-58A7-46FF-AF0F-A8A9108EE149}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Svrnty.MCP.AspNetCore", "src\Svrnty.MCP.AspNetCore\Svrnty.MCP.AspNetCore.csproj", "{14914206-58A7-46FF-AF0F-A8A9108EE149}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/docs/api/README.md b/docs/api/README.md index d38c5be..468299d 100644 --- a/docs/api/README.md +++ b/docs/api/README.md @@ -1,4 +1,4 @@ -# OpenHarbor.MCP.Server - API Reference +# Svrnty.MCP.Server - API Reference **Version:** 1.0.0 **Last Updated:** 2025-10-19 @@ -27,7 +27,7 @@ ### IMcpServer -**Namespace:** `OpenHarbor.MCP.Core.Abstractions` +**Namespace:** `Svrnty.MCP.Core.Abstractions` Interface defining the core MCP server contract. @@ -92,7 +92,7 @@ foreach (var tool in tools) ### IMcpTool -**Namespace:** `OpenHarbor.MCP.Core.Abstractions` +**Namespace:** `Svrnty.MCP.Core.Abstractions` Interface for implementing MCP tools. @@ -183,7 +183,7 @@ public class SearchTool : IMcpTool ### McpServer -**Namespace:** `OpenHarbor.MCP.Infrastructure` +**Namespace:** `Svrnty.MCP.Infrastructure` Default implementation of `IMcpServer`. @@ -227,7 +227,7 @@ Gracefully stops the server. ### HttpTransport -**Namespace:** `OpenHarbor.MCP.AspNetCore.Extensions` +**Namespace:** `Svrnty.MCP.AspNetCore.Extensions` HTTP transport implementation for MCP protocol. @@ -295,7 +295,7 @@ Health check endpoint. ### McpToolSchema -**Namespace:** `OpenHarbor.MCP.Core.Models` +**Namespace:** `Svrnty.MCP.Core.Models` JSON Schema representation for tool parameters. @@ -347,7 +347,7 @@ var schema = new McpToolSchema ### McpToolResult -**Namespace:** `OpenHarbor.MCP.Core.Models` +**Namespace:** `Svrnty.MCP.Core.Models` Represents the result of a tool execution. @@ -401,7 +401,7 @@ return McpToolResult.Error("Document not found", 404); ### Service Extensions -**Namespace:** `OpenHarbor.MCP.AspNetCore` +**Namespace:** `Svrnty.MCP.AspNetCore` #### AddMcpServer @@ -549,8 +549,8 @@ Executes a tool. ### Creating an MCP Server ```csharp -using OpenHarbor.MCP.Core; -using OpenHarbor.MCP.Core.Abstractions; +using Svrnty.MCP.Core; +using Svrnty.MCP.Core.Abstractions; using Microsoft.AspNetCore.Builder; // 1. Create tools diff --git a/docs/deployment/https-setup.md b/docs/deployment/https-setup.md index 658b380..8f37a2f 100644 --- a/docs/deployment/https-setup.md +++ b/docs/deployment/https-setup.md @@ -1,4 +1,4 @@ -# HTTPS/TLS Setup Guide - OpenHarbor.MCP.Server +# HTTPS/TLS Setup Guide - Svrnty.MCP.Server **Purpose**: Production-grade HTTPS/TLS configuration for secure MCP server deployment **Audience**: DevOps engineers, system administrators @@ -22,7 +22,7 @@ ## Overview -OpenHarbor.MCP.Server supports HTTPS/TLS through ASP.NET Core's Kestrel web server. This guide covers configuration for both development and production environments. +Svrnty.MCP.Server supports HTTPS/TLS through ASP.NET Core's Kestrel web server. This guide covers configuration for both development and production environments. **Security Benefits:** - Encrypted communication (prevents eavesdropping) @@ -101,7 +101,7 @@ Create or update `appsettings.Development.json` in the Server project: **Step 3: Run Server with HTTPS** ```bash -cd OpenHarbor.MCP.Server/samples/CodexMcpServer +cd Svrnty.MCP.Server/samples/CodexMcpServer dotnet run --environment Development # Server will listen on: @@ -134,7 +134,7 @@ curl -k -X POST https://localhost:5051/mcp/invoke \ ```bash # Create directory for certs -mkdir -p /home/svrnty/codex/OpenHarbor.MCP.Server/certs +mkdir -p /home/svrnty/codex/Svrnty.MCP.Server/certs # Generate private key openssl genrsa -out certs/localhost.key 2048 diff --git a/docs/implementation-plan.md b/docs/implementation-plan.md index 89ee7d1..3948df8 100644 --- a/docs/implementation-plan.md +++ b/docs/implementation-plan.md @@ -1,4 +1,4 @@ -# OpenHarbor.MCP - Detailed Implementation Plan +# Svrnty.MCP - Detailed Implementation Plan **Project:** Standalone, Reusable MCP Library for .NET **Status:** Planned (Not Yet Started) @@ -10,7 +10,7 @@ ## Executive Summary -OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context Protocol (MCP) server functionality. It is designed to be: +Svrnty.MCP is a **standalone .NET library** implementing the Model Context Protocol (MCP) server functionality. It is designed to be: - **Reusable** across any .NET project - **Modular** with clean separation of concerns @@ -43,7 +43,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P ``` ┌─────────────────────────────────────────────┐ -│ OpenHarbor.MCP.Core │ +│ Svrnty.MCP.Core │ │ (Pure Abstractions - Zero Dependencies) │ │ │ │ IMcpServer, IMcpTool, IMcpResource │ @@ -52,7 +52,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P └─────────────────┬───────────────────────────┘ │ Depends On ┌─────────────────┴───────────────────────────┐ -│ OpenHarbor.MCP.Infrastructure │ +│ Svrnty.MCP.Infrastructure │ │ (Implementation + Transport) │ │ │ │ McpServer, ToolRegistry, StdioTransport │ @@ -61,7 +61,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P └─────────────────┬───────────────────────────┘ │ Depends On ┌─────────────────┴───────────────────────────┐ -│ OpenHarbor.MCP.AspNetCore │ +│ Svrnty.MCP.AspNetCore │ │ (ASP.NET Core Integration) │ │ │ │ ServiceCollectionExtensions │ @@ -70,7 +70,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P └─────────────────────────────────────────────┘ ┌─────────────────────────────────────────────┐ -│ OpenHarbor.MCP.Cli │ +│ Svrnty.MCP.Cli │ │ (Standalone CLI Runner) │ │ │ │ Program.cs (Entry Point) │ @@ -114,8 +114,8 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P ## Project Structure ``` -/home/svrnty/codex/OpenHarbor.MCP/ -├── OpenHarbor.MCP.sln +/home/svrnty/codex/Svrnty.MCP/ +├── Svrnty.MCP.sln ├── README.md ├── AGENT-PRIMER.md # AI-assisted configuration ├── LICENSE # MIT @@ -123,7 +123,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P ├── .editorconfig │ ├── src/ -│ ├── OpenHarbor.MCP.Core/ +│ ├── Svrnty.MCP.Core/ │ │ ├── Abstractions/ │ │ │ ├── IMcpServer.cs │ │ │ ├── IMcpTool.cs @@ -142,9 +142,9 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P │ │ │ ├── PermissionDeniedException.cs │ │ │ ├── RateLimitExceededException.cs │ │ │ └── ToolNotFoundException.cs -│ │ └── OpenHarbor.MCP.Core.csproj +│ │ └── Svrnty.MCP.Core.csproj │ │ -│ ├── OpenHarbor.MCP.Infrastructure/ +│ ├── Svrnty.MCP.Infrastructure/ │ │ ├── Server/ │ │ │ ├── McpServer.cs │ │ │ ├── ToolRegistry.cs @@ -156,9 +156,9 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P │ │ ├── Transport/ │ │ │ ├── StdioTransport.cs │ │ │ └── HttpTransport.cs -│ │ └── OpenHarbor.MCP.Infrastructure.csproj +│ │ └── Svrnty.MCP.Infrastructure.csproj │ │ -│ ├── OpenHarbor.MCP.AspNetCore/ +│ ├── Svrnty.MCP.AspNetCore/ │ │ ├── Extensions/ │ │ │ └── ServiceCollectionExtensions.cs │ │ ├── Middleware/ @@ -166,22 +166,22 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P │ │ │ └── AuditMiddleware.cs │ │ ├── Configuration/ │ │ │ └── McpOptions.cs -│ │ └── OpenHarbor.MCP.AspNetCore.csproj +│ │ └── Svrnty.MCP.AspNetCore.csproj │ │ -│ └── OpenHarbor.MCP.Cli/ +│ └── Svrnty.MCP.Cli/ │ ├── Program.cs -│ └── OpenHarbor.MCP.Cli.csproj +│ └── Svrnty.MCP.Cli.csproj │ ├── tests/ -│ ├── OpenHarbor.MCP.Core.Tests/ +│ ├── Svrnty.MCP.Core.Tests/ │ │ ├── Abstractions/ │ │ ├── Models/ │ │ └── Exceptions/ -│ ├── OpenHarbor.MCP.Infrastructure.Tests/ +│ ├── Svrnty.MCP.Infrastructure.Tests/ │ │ ├── Server/ │ │ ├── Security/ │ │ └── Transport/ -│ └── OpenHarbor.MCP.Integration.Tests/ +│ └── Svrnty.MCP.Integration.Tests/ │ ├── EndToEnd/ │ └── Scenarios/ │ @@ -228,14 +228,14 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P **TDD:** Not applicable (infrastructure setup) **Tasks:** -- Create solution: `dotnet new sln -n OpenHarbor.MCP` -- Create Core project: `dotnet new classlib -n OpenHarbor.MCP.Core --framework net8.0` +- Create solution: `dotnet new sln -n Svrnty.MCP` +- Create Core project: `dotnet new classlib -n Svrnty.MCP.Core --framework net8.0` - Configure: Enable nullable, ImplicitUsings - Add to solution **Deliverables:** -- OpenHarbor.MCP.sln -- OpenHarbor.MCP.Core.csproj +- Svrnty.MCP.sln +- Svrnty.MCP.Core.csproj - .editorconfig (C# formatting) #### Step 1.2: Core Interfaces (2 hours) @@ -243,7 +243,7 @@ OpenHarbor.MCP is a **standalone .NET library** implementing the Model Context P **Tests FIRST:** ```csharp -// OpenHarbor.MCP.Core.Tests/Abstractions/IMcpServerTests.cs +// Svrnty.MCP.Core.Tests/Abstractions/IMcpServerTests.cs [Fact] public async Task RegisterTool_WithValidTool_AddsToRegistry() { @@ -261,7 +261,7 @@ public async Task RegisterTool_WithValidTool_AddsToRegistry() **Implementation:** ```csharp -// OpenHarbor.MCP.Core/Abstractions/IMcpServer.cs +// Svrnty.MCP.Core/Abstractions/IMcpServer.cs public interface IMcpServer { Task RegisterTool(IMcpTool tool); @@ -271,7 +271,7 @@ public interface IMcpServer Task Stop(); } -// OpenHarbor.MCP.Core/Abstractions/IMcpTool.cs +// Svrnty.MCP.Core/Abstractions/IMcpTool.cs public interface IMcpTool { string Name { get; } @@ -280,14 +280,14 @@ public interface IMcpTool Task Execute(McpRequest request); } -// OpenHarbor.MCP.Core/Abstractions/IPermissionProvider.cs +// Svrnty.MCP.Core/Abstractions/IPermissionProvider.cs public interface IPermissionProvider { Task HasPermission(string agentId, string action, string? resource = null); Task> GetPermissions(string agentId); } -// OpenHarbor.MCP.Core/Abstractions/IRateLimiter.cs +// Svrnty.MCP.Core/Abstractions/IRateLimiter.cs public interface IRateLimiter { Task TryAcquire(string agentId); @@ -322,7 +322,7 @@ public void McpRequest_WithValidData_Serializes() **Implementation:** ```csharp -// OpenHarbor.MCP.Core/Models/McpRequest.cs +// Svrnty.MCP.Core/Models/McpRequest.cs public record McpRequest { public string Method { get; init; } = string.Empty; @@ -330,7 +330,7 @@ public record McpRequest public string? Id { get; init; } } -// OpenHarbor.MCP.Core/Models/McpResponse.cs +// Svrnty.MCP.Core/Models/McpResponse.cs public record McpResponse { public object? Result { get; init; } @@ -338,7 +338,7 @@ public record McpResponse public string? Id { get; init; } } -// OpenHarbor.MCP.Core/Models/McpTool.cs +// Svrnty.MCP.Core/Models/McpTool.cs public record McpTool { public string Name { get; init; } = string.Empty; @@ -663,15 +663,15 @@ public static IServiceCollection AddMcpServer( ``` tests/ -├── OpenHarbor.MCP.Core.Tests/ +├── Svrnty.MCP.Core.Tests/ │ ├── Abstractions/ # Interface behavior tests │ ├── Models/ # Model validation tests │ └── Exceptions/ # Exception tests -├── OpenHarbor.MCP.Infrastructure.Tests/ +├── Svrnty.MCP.Infrastructure.Tests/ │ ├── Server/ # Server logic tests │ ├── Security/ # Permission & rate limit tests │ └── Transport/ # Transport tests -└── OpenHarbor.MCP.Integration.Tests/ +└── Svrnty.MCP.Integration.Tests/ └── EndToEnd/ # Full MCP server scenarios ``` @@ -694,7 +694,7 @@ tests/ ### Purpose -Enable AI agents to automatically configure OpenHarbor.MCP for any target system by: +Enable AI agents to automatically configure Svrnty.MCP for any target system by: 1. Analyzing the system 2. Generating configuration 3. Creating sample tools @@ -703,9 +703,9 @@ Enable AI agents to automatically configure OpenHarbor.MCP for any target system ### Structure ```markdown -# OpenHarbor.MCP Agent Primer +# Svrnty.MCP Agent Primer -**For AI Agents:** This file guides automated setup of OpenHarbor.MCP. +**For AI Agents:** This file guides automated setup of Svrnty.MCP. ## Step 1: System Analysis @@ -825,12 +825,12 @@ The AGENT-PRIMER.md will include: **Option 1: NuGet Package (Production)** ```bash -dotnet add package OpenHarbor.MCP.AspNetCore +dotnet add package Svrnty.MCP.AspNetCore ``` **Option 2: Project Reference (Development)** ```bash -dotnet add reference ../OpenHarbor.MCP/src/OpenHarbor.MCP.AspNetCore/OpenHarbor.MCP.AspNetCore.csproj +dotnet add reference ../Svrnty.MCP/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj ``` ### CODEX MCP Server Structure @@ -854,7 +854,7 @@ src/Codex.Mcp/ ### Sample Tool Implementation ```csharp -using OpenHarbor.MCP.Core.Abstractions; +using Svrnty.MCP.Core.Abstractions; public class SearchCodexTool : IMcpTool { @@ -958,7 +958,7 @@ All new dependencies must be: **Documentation:** - [x] Updated future-mcp-integration-plan.md - [x] Completion notes in registry.json -- [x] CODEX_INDEX.md references OpenHarbor.MCP +- [x] CODEX_INDEX.md references Svrnty.MCP --- @@ -988,7 +988,7 @@ All new dependencies must be: ## Next Steps 1. **Get approval for this plan** -2. **Create folder structure:** `/home/svrnty/codex/OpenHarbor.MCP/` +2. **Create folder structure:** `/home/svrnty/codex/Svrnty.MCP/` 3. **Write AGENT-PRIMER.md** 4. **Begin Phase 1:** Core abstractions with TDD 5. **Track progress:** Use TodoWrite for each phase diff --git a/docs/module-design.md b/docs/module-design.md index cf31714..c3a668d 100644 --- a/docs/module-design.md +++ b/docs/module-design.md @@ -1,4 +1,4 @@ -# OpenHarbor.MCP - Reusable Module Design +# Svrnty.MCP - Reusable Module Design **Document Type:** Architecture and Design Specification **Created:** 2025-10-19 @@ -9,7 +9,7 @@ ## Overview -OpenHarbor.MCP is a **standalone, modular, scalable MCP library** that can be extracted and reused across multiple projects. While CODEX will be the first implementation, the module is designed for general-purpose use. +Svrnty.MCP is a **standalone, modular, scalable MCP library** that can be extracted and reused across multiple projects. While CODEX will be the first implementation, the module is designed for general-purpose use. **Key Design Principles:** - Zero CODEX dependencies - Pure .NET library @@ -24,11 +24,11 @@ OpenHarbor.MCP is a **standalone, modular, scalable MCP library** that can be ex **Standalone folder (NOT in CODEX codebase):** ``` -/home/svrnty/codex/OpenHarbor.MCP/ # Separate from CODEX +/home/svrnty/codex/Svrnty.MCP/ # Separate from CODEX ├── README.md # Usage documentation ├── AGENT-PRIMER.md # AI-automated configuration ├── LICENSE # MIT license -├── OpenHarbor.MCP.sln # Solution file +├── Svrnty.MCP.sln # Solution file ├── src/ # Source code ├── tests/ # Unit + integration tests ├── samples/CodexMcpServer/ # CODEX example @@ -47,26 +47,26 @@ OpenHarbor.MCP is a **standalone, modular, scalable MCP library** that can be ex **Clean Architecture Layers:** -### 1. OpenHarbor.MCP.Core - Pure Abstractions +### 1. Svrnty.MCP.Core - Pure Abstractions - `IMcpServer` - Server interface - `IMcpTool` - Tool interface - `IPermissionProvider` - Permission abstraction - `IRateLimiter` - Rate limiting abstraction - Zero dependencies -### 2. OpenHarbor.MCP.Infrastructure - Implementation +### 2. Svrnty.MCP.Infrastructure - Implementation - `McpServer` - Server implementation - `ToolRegistry` - Dynamic tool registration - `StdioTransport` - Process communication - `PermissionProvider` - Access control - `TokenBucketRateLimiter` - Rate limiting -### 3. OpenHarbor.MCP.AspNetCore - Integration +### 3. Svrnty.MCP.AspNetCore - Integration - ServiceCollectionExtensions - DI - McpMiddleware - HTTP transport - McpOptions - Configuration -### 4. OpenHarbor.MCP.Cli - CLI Runner +### 4. Svrnty.MCP.Cli - CLI Runner - HTTP transport runner - Configuration loading @@ -83,7 +83,7 @@ OpenHarbor.MCP is a **standalone, modular, scalable MCP library** that can be ex **AI Agent Workflow:** ``` -User: "Copy OpenHarbor.MCP to my project" +User: "Copy Svrnty.MCP to my project" ↓ AI reads AGENT-PRIMER.md ↓ @@ -108,17 +108,17 @@ User validates and runs **Option 1: NuGet Package (Production)** ```xml - + ``` **Option 2: Local Project Reference (Development)** ```xml - + ``` **CODEX MCP Server Location:** ``` -src/Codex.Mcp/ # Uses OpenHarbor.MCP library +src/Codex.Mcp/ # Uses Svrnty.MCP library ├── Program.cs # CLI entry point ├── CodexMcpServer.cs # Server configuration ├── Tools/ @@ -135,7 +135,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library ## Implementation Phases ### Phase 1: Core Module Development (Week 1-2, 6-8 hours) -- Location: `/home/svrnty/codex/OpenHarbor.MCP/src/` +- Location: `/home/svrnty/codex/Svrnty.MCP/src/` - Deliverables: - Core abstractions (Core project) - Server implementation (Infrastructure project) @@ -146,7 +146,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library - Testing: TDD approach (tests first, all phases) ### Phase 2: CODEX Integration Example (Week 2-3, 4-6 hours) -- Location: `/home/svrnty/codex/OpenHarbor.MCP/samples/CodexMcpServer/` +- Location: `/home/svrnty/codex/Svrnty.MCP/samples/CodexMcpServer/` - Deliverables: - Sample implementation with 6 CODEX tools - Permission configuration @@ -154,7 +154,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library - Integration tests with CODEX API ### Phase 3: Documentation & Reusability (Week 3, 4-6 hours) -- Location: `/home/svrnty/codex/OpenHarbor.MCP/docs/` +- Location: `/home/svrnty/codex/Svrnty.MCP/docs/` - Deliverables: - Complete README.md - Architecture documentation @@ -163,7 +163,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library - Migration guide (copy to new projects) ### Phase 4: CODEX Production Integration (Week 3-4, 2-4 hours) -- Location: CODEX references OpenHarbor.MCP +- Location: CODEX references Svrnty.MCP - Deliverables: - Update CODEX to use library - Production deployment configuration @@ -192,7 +192,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library ## Reusability Features ### 1. Folder Portability -- Copy `/home/svrnty/codex/OpenHarbor.MCP/` to any project +- Copy `/home/svrnty/codex/Svrnty.MCP/` to any project - Self-contained with all documentation - No external CODEX dependencies @@ -248,7 +248,7 @@ src/Codex.Mcp/ # Uses OpenHarbor.MCP library ## Related Documentation -**OpenHarbor.MCP Documentation:** +**Svrnty.MCP Documentation:** - [README.md](../README.md) - Project overview and quick start - [AGENT-PRIMER.md](../AGENT-PRIMER.md) - AI-automated configuration guide - [Implementation Plan](implementation-plan.md) - Detailed TDD implementation strategy diff --git a/samples/CodexMcpServer/CodexMcpServer.csproj b/samples/CodexMcpServer/CodexMcpServer.csproj index d5b5e6f..aa23618 100644 --- a/samples/CodexMcpServer/CodexMcpServer.csproj +++ b/samples/CodexMcpServer/CodexMcpServer.csproj @@ -1,8 +1,8 @@  - - + + diff --git a/samples/CodexMcpServer/Program.cs b/samples/CodexMcpServer/Program.cs index 64922ee..485e19c 100644 --- a/samples/CodexMcpServer/Program.cs +++ b/samples/CodexMcpServer/Program.cs @@ -5,8 +5,8 @@ using CodexMcpServer.Tools; using Microsoft.AspNetCore.Builder; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; -using OpenHarbor.MCP.AspNetCore.Extensions; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.AspNetCore.Extensions; +using Svrnty.MCP.Core; namespace CodexMcpServer; diff --git a/samples/CodexMcpServer/Tools/GetDocumentSectionsTool.cs b/samples/CodexMcpServer/Tools/GetDocumentSectionsTool.cs index 17f1705..c685cc9 100644 --- a/samples/CodexMcpServer/Tools/GetDocumentSectionsTool.cs +++ b/samples/CodexMcpServer/Tools/GetDocumentSectionsTool.cs @@ -2,7 +2,7 @@ using System; using System.Net.Http; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/samples/CodexMcpServer/Tools/GetDocumentTool.cs b/samples/CodexMcpServer/Tools/GetDocumentTool.cs index b88899f..a1ed1ac 100644 --- a/samples/CodexMcpServer/Tools/GetDocumentTool.cs +++ b/samples/CodexMcpServer/Tools/GetDocumentTool.cs @@ -2,7 +2,7 @@ using System; using System.Net.Http; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/samples/CodexMcpServer/Tools/ListDocumentsTool.cs b/samples/CodexMcpServer/Tools/ListDocumentsTool.cs index 85d0881..de7bb74 100644 --- a/samples/CodexMcpServer/Tools/ListDocumentsTool.cs +++ b/samples/CodexMcpServer/Tools/ListDocumentsTool.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Net.Http; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/samples/CodexMcpServer/Tools/ListTagsTool.cs b/samples/CodexMcpServer/Tools/ListTagsTool.cs index 55e0384..931fbeb 100644 --- a/samples/CodexMcpServer/Tools/ListTagsTool.cs +++ b/samples/CodexMcpServer/Tools/ListTagsTool.cs @@ -2,7 +2,7 @@ using System; using System.Net.Http; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/samples/CodexMcpServer/Tools/SearchByTagTool.cs b/samples/CodexMcpServer/Tools/SearchByTagTool.cs index c89ef72..c0827a0 100644 --- a/samples/CodexMcpServer/Tools/SearchByTagTool.cs +++ b/samples/CodexMcpServer/Tools/SearchByTagTool.cs @@ -2,7 +2,7 @@ using System; using System.Net.Http; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/samples/CodexMcpServer/Tools/SearchCodexTool.cs b/samples/CodexMcpServer/Tools/SearchCodexTool.cs index d6ed96a..4619997 100644 --- a/samples/CodexMcpServer/Tools/SearchCodexTool.cs +++ b/samples/CodexMcpServer/Tools/SearchCodexTool.cs @@ -3,7 +3,7 @@ using System.Net.Http; using System.Text; using System.Text.Json; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; namespace CodexMcpServer.Tools; diff --git a/src/Svrnty.MCP.AspNetCore/Extensions/HttpTransport.cs b/src/Svrnty.MCP.AspNetCore/Extensions/HttpTransport.cs index ea23b54..4c78bc0 100644 --- a/src/Svrnty.MCP.AspNetCore/Extensions/HttpTransport.cs +++ b/src/Svrnty.MCP.AspNetCore/Extensions/HttpTransport.cs @@ -5,9 +5,9 @@ using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Routing; using Microsoft.Extensions.DependencyInjection; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; -namespace OpenHarbor.MCP.AspNetCore.Extensions; +namespace Svrnty.MCP.AspNetCore.Extensions; /// /// Implements JSON-RPC 2.0 transport over HTTP. diff --git a/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj b/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj index 664f2f5..4c37b13 100644 --- a/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj +++ b/src/Svrnty.MCP.AspNetCore/Svrnty.MCP.AspNetCore.csproj @@ -11,7 +11,7 @@ - + diff --git a/src/Svrnty.MCP.Core/IMcpTool.cs b/src/Svrnty.MCP.Core/IMcpTool.cs index f31c352..833677e 100644 --- a/src/Svrnty.MCP.Core/IMcpTool.cs +++ b/src/Svrnty.MCP.Core/IMcpTool.cs @@ -1,7 +1,7 @@ using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Core abstraction for an MCP (Model Context Protocol) tool. diff --git a/src/Svrnty.MCP.Core/McpServer.cs b/src/Svrnty.MCP.Core/McpServer.cs index 099c6ee..c179624 100644 --- a/src/Svrnty.MCP.Core/McpServer.cs +++ b/src/Svrnty.MCP.Core/McpServer.cs @@ -3,7 +3,7 @@ using System.Linq; using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// MCP Server that orchestrates tool execution and handles JSON-RPC 2.0 protocol methods. diff --git a/src/Svrnty.MCP.Core/Models/McpError.cs b/src/Svrnty.MCP.Core/Models/McpError.cs index e677bf1..6807bd3 100644 --- a/src/Svrnty.MCP.Core/Models/McpError.cs +++ b/src/Svrnty.MCP.Core/Models/McpError.cs @@ -1,7 +1,7 @@ using System.Text.Json; using System.Text.Json.Serialization; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Represents a JSON-RPC 2.0 error object. diff --git a/src/Svrnty.MCP.Core/Models/McpRequest.cs b/src/Svrnty.MCP.Core/Models/McpRequest.cs index 39c3d40..3a5e8b2 100644 --- a/src/Svrnty.MCP.Core/Models/McpRequest.cs +++ b/src/Svrnty.MCP.Core/Models/McpRequest.cs @@ -1,7 +1,7 @@ using System.Text.Json; using System.Text.Json.Serialization; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Represents a JSON-RPC 2.0 request from Claude Desktop to MCP Server. diff --git a/src/Svrnty.MCP.Core/Models/McpResponse.cs b/src/Svrnty.MCP.Core/Models/McpResponse.cs index 9f7459c..bdb9f62 100644 --- a/src/Svrnty.MCP.Core/Models/McpResponse.cs +++ b/src/Svrnty.MCP.Core/Models/McpResponse.cs @@ -1,7 +1,7 @@ using System.Text.Json; using System.Text.Json.Serialization; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Represents a JSON-RPC 2.0 response from MCP Server to Claude Desktop. diff --git a/src/Svrnty.MCP.Core/Models/RoutingContext.cs b/src/Svrnty.MCP.Core/Models/RoutingContext.cs index d36786e..f6c531c 100644 --- a/src/Svrnty.MCP.Core/Models/RoutingContext.cs +++ b/src/Svrnty.MCP.Core/Models/RoutingContext.cs @@ -1,4 +1,4 @@ -namespace OpenHarbor.MCP.Core.Models; +namespace Svrnty.MCP.Core.Models; /// /// Context information for routing decisions. diff --git a/src/Svrnty.MCP.Core/Models/ServerConfig.cs b/src/Svrnty.MCP.Core/Models/ServerConfig.cs index 58eb858..f32327e 100644 --- a/src/Svrnty.MCP.Core/Models/ServerConfig.cs +++ b/src/Svrnty.MCP.Core/Models/ServerConfig.cs @@ -1,4 +1,4 @@ -namespace OpenHarbor.MCP.Core.Models; +namespace Svrnty.MCP.Core.Models; /// /// Configuration for an MCP server registration. diff --git a/src/Svrnty.MCP.Core/Models/ServerHealthStatus.cs b/src/Svrnty.MCP.Core/Models/ServerHealthStatus.cs index 3a37410..b0636ac 100644 --- a/src/Svrnty.MCP.Core/Models/ServerHealthStatus.cs +++ b/src/Svrnty.MCP.Core/Models/ServerHealthStatus.cs @@ -1,4 +1,4 @@ -namespace OpenHarbor.MCP.Core.Models; +namespace Svrnty.MCP.Core.Models; /// /// Represents the health status of an MCP server. diff --git a/src/Svrnty.MCP.Core/Models/ServerInfo.cs b/src/Svrnty.MCP.Core/Models/ServerInfo.cs index ea6b6d1..39b3dab 100644 --- a/src/Svrnty.MCP.Core/Models/ServerInfo.cs +++ b/src/Svrnty.MCP.Core/Models/ServerInfo.cs @@ -1,4 +1,4 @@ -namespace OpenHarbor.MCP.Core.Models; +namespace Svrnty.MCP.Core.Models; /// /// Represents metadata about a registered MCP server. diff --git a/src/Svrnty.MCP.Core/StdioTransport.cs b/src/Svrnty.MCP.Core/StdioTransport.cs index a55239e..7e977e6 100644 --- a/src/Svrnty.MCP.Core/StdioTransport.cs +++ b/src/Svrnty.MCP.Core/StdioTransport.cs @@ -4,7 +4,7 @@ using System.Text; using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Implements JSON-RPC 2.0 transport over stdin/stdout. diff --git a/src/Svrnty.MCP.Core/ToolRegistry.cs b/src/Svrnty.MCP.Core/ToolRegistry.cs index 093f943..1fd6f48 100644 --- a/src/Svrnty.MCP.Core/ToolRegistry.cs +++ b/src/Svrnty.MCP.Core/ToolRegistry.cs @@ -2,7 +2,7 @@ using System; using System.Collections.Generic; using System.Linq; -namespace OpenHarbor.MCP.Core; +namespace Svrnty.MCP.Core; /// /// Registry for managing MCP tools. diff --git a/tests/CodexMcpServer.Tests/CodexMcpServer.Tests.csproj b/tests/CodexMcpServer.Tests/CodexMcpServer.Tests.csproj index a637e3a..952d133 100644 --- a/tests/CodexMcpServer.Tests/CodexMcpServer.Tests.csproj +++ b/tests/CodexMcpServer.Tests/CodexMcpServer.Tests.csproj @@ -23,7 +23,7 @@ - + diff --git a/tests/CodexMcpServer.Tests/GetDocumentSectionsToolTests.cs b/tests/CodexMcpServer.Tests/GetDocumentSectionsToolTests.cs index 2aafd59..f602ab9 100644 --- a/tests/CodexMcpServer.Tests/GetDocumentSectionsToolTests.cs +++ b/tests/CodexMcpServer.Tests/GetDocumentSectionsToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/CodexMcpServer.Tests/GetDocumentToolTests.cs b/tests/CodexMcpServer.Tests/GetDocumentToolTests.cs index 4755986..aa778fd 100644 --- a/tests/CodexMcpServer.Tests/GetDocumentToolTests.cs +++ b/tests/CodexMcpServer.Tests/GetDocumentToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/CodexMcpServer.Tests/ListDocumentsToolTests.cs b/tests/CodexMcpServer.Tests/ListDocumentsToolTests.cs index 6242411..1c50171 100644 --- a/tests/CodexMcpServer.Tests/ListDocumentsToolTests.cs +++ b/tests/CodexMcpServer.Tests/ListDocumentsToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/CodexMcpServer.Tests/ListTagsToolTests.cs b/tests/CodexMcpServer.Tests/ListTagsToolTests.cs index 8f56dba..8e2c9ce 100644 --- a/tests/CodexMcpServer.Tests/ListTagsToolTests.cs +++ b/tests/CodexMcpServer.Tests/ListTagsToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/CodexMcpServer.Tests/SearchByTagToolTests.cs b/tests/CodexMcpServer.Tests/SearchByTagToolTests.cs index d22b2c8..dd4caf0 100644 --- a/tests/CodexMcpServer.Tests/SearchByTagToolTests.cs +++ b/tests/CodexMcpServer.Tests/SearchByTagToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/CodexMcpServer.Tests/SearchCodexToolTests.cs b/tests/CodexMcpServer.Tests/SearchCodexToolTests.cs index 3be5acc..4884110 100644 --- a/tests/CodexMcpServer.Tests/SearchCodexToolTests.cs +++ b/tests/CodexMcpServer.Tests/SearchCodexToolTests.cs @@ -6,7 +6,7 @@ using System.Net.Http; using System.Text.Json; using System.Threading; using System.Threading.Tasks; -using OpenHarbor.MCP.Core; +using Svrnty.MCP.Core; using CodexMcpServer.Tools; namespace CodexMcpServer.Tests; diff --git a/tests/Svrnty.MCP.Core.Tests/HttpTransportTests.cs b/tests/Svrnty.MCP.Core.Tests/HttpTransportTests.cs index 508be29..b5d5306 100644 --- a/tests/Svrnty.MCP.Core.Tests/HttpTransportTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/HttpTransportTests.cs @@ -4,7 +4,7 @@ using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.TestHost; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; -using OpenHarbor.MCP.AspNetCore.Extensions; +using Svrnty.MCP.AspNetCore.Extensions; using System; using System.Net; using System.Net.Http; @@ -12,7 +12,7 @@ using System.Text; using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for HttpTransport following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/IMcpToolTests.cs b/tests/Svrnty.MCP.Core.Tests/IMcpToolTests.cs index 2ee589e..a223251 100644 --- a/tests/Svrnty.MCP.Core.Tests/IMcpToolTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/IMcpToolTests.cs @@ -3,7 +3,7 @@ using Moq; using System.Threading.Tasks; using System.Text.Json; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for IMcpTool interface following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/McpModelsTests.cs b/tests/Svrnty.MCP.Core.Tests/McpModelsTests.cs index 2e1ab1a..c9f49d4 100644 --- a/tests/Svrnty.MCP.Core.Tests/McpModelsTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/McpModelsTests.cs @@ -1,7 +1,7 @@ using Xunit; using System.Text.Json; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for MCP request/response models following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/McpServerTests.cs b/tests/Svrnty.MCP.Core.Tests/McpServerTests.cs index 9e3170d..d329851 100644 --- a/tests/Svrnty.MCP.Core.Tests/McpServerTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/McpServerTests.cs @@ -3,7 +3,7 @@ using Moq; using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for McpServer following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/Models/RoutingContextTests.cs b/tests/Svrnty.MCP.Core.Tests/Models/RoutingContextTests.cs index 27600e4..21cc382 100644 --- a/tests/Svrnty.MCP.Core.Tests/Models/RoutingContextTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/Models/RoutingContextTests.cs @@ -1,7 +1,7 @@ using Xunit; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Models; -namespace OpenHarbor.MCP.Core.Tests.Models; +namespace Svrnty.MCP.Core.Tests.Models; /// /// Unit tests for RoutingContext model following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/Models/ServerConfigTests.cs b/tests/Svrnty.MCP.Core.Tests/Models/ServerConfigTests.cs index 84348b4..0c984d5 100644 --- a/tests/Svrnty.MCP.Core.Tests/Models/ServerConfigTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/Models/ServerConfigTests.cs @@ -1,7 +1,7 @@ using Xunit; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Models; -namespace OpenHarbor.MCP.Core.Tests.Models; +namespace Svrnty.MCP.Core.Tests.Models; /// /// Unit tests for ServerConfig model following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/Models/ServerHealthStatusTests.cs b/tests/Svrnty.MCP.Core.Tests/Models/ServerHealthStatusTests.cs index 92f20a7..bbe193e 100644 --- a/tests/Svrnty.MCP.Core.Tests/Models/ServerHealthStatusTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/Models/ServerHealthStatusTests.cs @@ -1,7 +1,7 @@ using Xunit; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Models; -namespace OpenHarbor.MCP.Core.Tests.Models; +namespace Svrnty.MCP.Core.Tests.Models; /// /// Unit tests for ServerHealthStatus model following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/Models/ServerInfoTests.cs b/tests/Svrnty.MCP.Core.Tests/Models/ServerInfoTests.cs index d27d3e9..9fda0b5 100644 --- a/tests/Svrnty.MCP.Core.Tests/Models/ServerInfoTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/Models/ServerInfoTests.cs @@ -1,7 +1,7 @@ using Xunit; -using OpenHarbor.MCP.Core.Models; +using Svrnty.MCP.Core.Models; -namespace OpenHarbor.MCP.Core.Tests.Models; +namespace Svrnty.MCP.Core.Tests.Models; /// /// Unit tests for ServerInfo model following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/StdioTransportTests.cs b/tests/Svrnty.MCP.Core.Tests/StdioTransportTests.cs index 5621dcb..a030048 100644 --- a/tests/Svrnty.MCP.Core.Tests/StdioTransportTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/StdioTransportTests.cs @@ -6,7 +6,7 @@ using System.Text; using System.Text.Json; using System.Threading.Tasks; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for StdioTransport following TDD approach. diff --git a/tests/Svrnty.MCP.Core.Tests/Svrnty.MCP.Core.Tests.csproj b/tests/Svrnty.MCP.Core.Tests/Svrnty.MCP.Core.Tests.csproj index f123496..fee65b0 100644 --- a/tests/Svrnty.MCP.Core.Tests/Svrnty.MCP.Core.Tests.csproj +++ b/tests/Svrnty.MCP.Core.Tests/Svrnty.MCP.Core.Tests.csproj @@ -23,8 +23,8 @@ - - + + diff --git a/tests/Svrnty.MCP.Core.Tests/ToolRegistryTests.cs b/tests/Svrnty.MCP.Core.Tests/ToolRegistryTests.cs index 245e3c7..52be365 100644 --- a/tests/Svrnty.MCP.Core.Tests/ToolRegistryTests.cs +++ b/tests/Svrnty.MCP.Core.Tests/ToolRegistryTests.cs @@ -4,7 +4,7 @@ using System.Text.Json; using System.Threading.Tasks; using System.Linq; -namespace OpenHarbor.MCP.Core.Tests; +namespace Svrnty.MCP.Core.Tests; /// /// Unit tests for ToolRegistry following TDD approach.