Skip to content

Dev#31

Merged
MWG-Logan merged 5 commits intomainfrom
dev
Nov 14, 2025
Merged

Dev#31
MWG-Logan merged 5 commits intomainfrom
dev

Conversation

@MWG-Logan
Copy link
Owner

No description provided.

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.
Copilot AI review requested due to automatic review settings November 13, 2025 04:59
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

@MWG-Logan MWG-Logan marked this pull request as draft November 13, 2025 05:31
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.
@MWG-Logan MWG-Logan marked this pull request as ready for review November 13, 2025 14:40
* 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.
@MWG-Logan MWG-Logan merged commit 496874d into main Nov 14, 2025
4 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants