Conversation
Replaced the Node.js/TypeScript implementation with a .NET-based Azure Functions Worker application. The new implementation introduces a structured architecture for managing a knowledge graph, leveraging Azure Table Storage for persistence. Key changes: - Added .NET project files, including `CentralMemoryMcp.Functions.csproj`. - Implemented services for entities, relations, and storage. - Introduced health and readiness endpoints. - Removed all TypeScript files, configurations, and dependencies. - Updated `.gitignore` and `.funcignore` for .NET development.
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR represents a complete rewrite of the Central Memory MCP Server, migrating from TypeScript/Node.js to C#/.NET. The migration removes the entire TypeScript codebase and replaces it with a new C# implementation using modern Azure Functions Worker model.
Key changes:
- Complete migration from TypeScript to C#/.NET stack
- Simplified MCP tools from 16 operations to 4 core functions
- New entity/relation model using GUIDs instead of string-based keys
- Updated configuration files for .NET environment
Reviewed Changes
Copilot reviewed 32 out of 40 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| CentralMemoryMcp.Functions/CentralMemoryMcp.Functions.csproj | New C# project file defining .NET target and dependencies |
| CentralMemoryMcp.Functions/Program.cs | Modern builder-based bootstrap with DI configuration |
| CentralMemoryMcp.Functions/Functions/GraphFunctions.cs | Core MCP functions for entity and relation operations |
| CentralMemoryMcp.Functions/Services/KnowledgeGraphService.cs | Entity management service implementation |
| CentralMemoryMcp.Functions/Services/RelationService.cs | Relation management service implementation |
| CentralMemoryMcp.Functions/Storage/TableStorageService.cs | Azure Table Storage abstraction layer |
| CentralMemoryMcp.Functions/Models/GraphModels.cs | Domain models for entities, relations, and workspaces |
| CentralMemoryMcp.Functions/host.json | MCP configuration for C# functions |
| .vscode/mcp.json | Updated VS Code MCP integration (memory-debug endpoint commented out) |
| .gitignore | Updated for Visual Studio and .NET artifacts |
| tsconfig.json | Removed (TypeScript no longer used) |
| package.json | Removed (Node.js no longer used) |
| src/**/*.ts | All TypeScript source files removed |
| docs/*.md | New documentation files added for storage, deployment, architecture, and API |
Updated all documentation to reflect the migration from a TypeScript-based Azure Functions implementation to a .NET 10 Azure Functions (isolated worker) implementation. - README.md: Added core concepts, tech stack, quick start, and directory layout. Updated workflows and endpoint descriptions. - API.md: Revised for .NET, updated parameter names, clarified entity/relation structures, and introduced LLM-friendly conventions. - ARCHITECTURE.md: Overhauled to describe .NET design, including functions layer, storage abstraction, and workspace isolation. - DEPLOYMENT.md: Rewrote for .NET deployment, added Azure CLI steps, GitHub Actions, and production recommendations. - STORAGE.md: Updated for Azure Table Storage, added batching, error handling, and managed identity details. - TODO.md: Refined roadmap with semantic search, real-time updates, and integration ideas. - Added readme.md as an index for the documentation set. These changes improve clarity, usability, and alignment with modern .NET development practices while maintaining MCP compatibility.
* Migrate docs to .NET 10 Azure Functions implementation Updated all documentation to reflect the migration from a TypeScript-based Azure Functions implementation to a .NET 10 Azure Functions (isolated worker) implementation. - README.md: Added core concepts, tech stack, quick start, and directory layout. Updated workflows and endpoint descriptions. - API.md: Revised for .NET, updated parameter names, clarified entity/relation structures, and introduced LLM-friendly conventions. - ARCHITECTURE.md: Overhauled to describe .NET design, including functions layer, storage abstraction, and workspace isolation. - DEPLOYMENT.md: Rewrote for .NET deployment, added Azure CLI steps, GitHub Actions, and production recommendations. - STORAGE.md: Updated for Azure Table Storage, added batching, error handling, and managed identity details. - TODO.md: Refined roadmap with semantic search, real-time updates, and integration ideas. - Added readme.md as an index for the documentation set. These changes improve clarity, usability, and alignment with modern .NET development practices while maintaining MCP compatibility. * Update documentation for MCP server alpha implementation Revised `README.md` to reflect the current alpha state, replacing core concepts with implemented MCP tools and updating the roadmap. Simplified the quick start and directory layout sections, and linked the MIT license. Updated `API.md` to document the four implemented MCP tools with examples, clarified error handling, and added a roadmap for unimplemented features. Refactored `ARCHITECTURE.md` with a mermaid diagram, updated data models to use `record` types, and added a sequence diagram for entity upserts. Revised logging, security, and roadmap sections. Simplified `DEPLOYMENT.md` by removing managed identity and GitHub Actions setup. Clarified configuration, scaling, and health endpoints. Added a roadmap for CI pipelines and slot-based deployments. Revised `STORAGE.md` to describe the alpha implementation, updated table schemas to use GUIDs, and added sections on upsert strategy and observations format. Simplified workspace isolation and query patterns. Aligned local storage configuration in `README.md` with the current MCP tool workflow. * Update docs/readme.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs/DEPLOYMENT.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update README.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Update docs/STORAGE.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Migrate MCP Server to .NET and add CI workflows Updated `copilot-instructions.md` to reflect the transition to .NET 10, C# 14, and Azure Functions isolated worker model. Added detailed sections on the technology stack, storage schema, Azure Functions endpoints, validation workflow, and troubleshooting. Introduced `dev-publish-function.yml` and `prod-publish-function.yml` GitHub Actions workflows for automated deployment to Azure Function Apps in development and production environments. Configured workflows to build the .NET project and deploy using OIDC authentication. Replaced Node.js/npm setup instructions with .NET-specific commands and documented the new project structure, including dependency injection setup and critical file locations. * Update Azure Function App deployment configurations Added `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, and `AZURE_SUBSCRIPTION_ID` secrets to configuration comments in `dev-publish-function.yml` and `prod-publish-function.yml` for improved authentication setup. Updated `AZURE_FUNCTIONAPP_PACKAGE_PATH` to `CentralMemoryMcp.Functions` to specify the correct project path for the function app. Improved readability of environment variable definitions by reformatting `AZURE_FUNCTIONAPP_NAME` and `DOTNET_VERSION`. * Improve Markdown formatting in documentation Updated `README.md` and `ARCHITECTURE.md` to use consistent bullet point styles (`-` instead of `–`) for better readability and alignment with Markdown conventions. These changes enhance the visual presentation without altering the content or functionality described in the documents.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.