网络上下文服务器
🔍通过深度理解 .NET 代码库,增强你的 AI 编码助手
NetContextServer 使 VS Code 等 AI 编码助手能够通过模型上下文协议 (MCP)深入了解您的 .NET 代码库。这意味着更准确的代码建议、更好的问题答案以及更高效的编码体验。
✨ 主要特点
- 🧠语义代码搜索:通过用自然语言描述您要查找的内容来查找代码
- 🔍智能导航:帮助 AI 工具了解您的项目结构和依赖关系
- 🛡️内置安全性:安全文件访问,自动保护敏感数据
- 🚀 VS Code 集成:与 VS Code 无缝设置,增强编码辅助
- 📦软件包分析:了解您的依赖关系并获取更新建议
- 🔍深度依赖关系可视化:通过交互式彩色编码图表查看传递依赖关系
- 🧩智能分组:以可视化方式对相关包进行分组,以便于导航
- 📊更新建议:识别过时的软件包和安全问题
- 📊测试覆盖率分析:深入了解您的测试覆盖率
- 🎯多格式支持:解析来自 Coverlet、LCOV 和 Cobertura XML 的覆盖率数据
- 📈详细报告:文件级覆盖率百分比和未覆盖的线路跟踪
- 🔄分支覆盖率:跟踪方法级分支覆盖率(如果可用)
- 💡智能建议:获取提高测试覆盖率的建议
- ⚡快速高效:大型代码库的快速索引和响应时间
🚀 快速入门
- 克隆和构建:
- 设置(可选,用于语义搜索):
- 开始使用:
👉**阅读我们的入门指南,**了解详细的设置说明和最佳实践。
🔌 与 VS Code 集成
- 打开 Visual Studio Code
- 按
Ctrl + Shift + P
(或在 macOS 上Cmd + Shift + P
) - 输入“配置 MCP 服务器”
- 进入:
现在 VS Code 可以理解你的代码库了!试着问它这样的问题:
- “列出此项目目录中的所有 .NET 源文件”
- “在代码文件中搜索精确的文本匹配”
- “分析所有项目中的 NuGet 包”
- “获取当前忽略模式列表”
- “添加这些忽略模式: .generated.cs,bin/ ”
- “列出此目录中的所有.csproj 文件”
- “显示这个文件的内容”
- “文件操作的当前基目录是什么?”
- “帮我思考一下身份验证系统的设计”
- “记录我对这个架构决策的推理”
- “分析 MyService.cs 的测试覆盖率”
- “显示身份验证模块中未覆盖的行”
- “总体测试覆盖率是多少?”
- “哪些文件的测试覆盖率最低?”
📚 文档
特征
- 📁项目和文件列表:列出解决方案中的所有项目和源文件
- 🔍代码搜索:在代码库中搜索特定模式或文本
- 🧠语义搜索:根据含义查找代码,而不仅仅是精确的文本匹配
- 📖文件内容访问:读取具有安全检查和大小限制的源文件
- 🛡️安全性:内置敏感文件和目录访问保护措施
- 🎯模式管理:用于控制文件访问的灵活忽略模式
- 📊覆盖率分析:解析和分析测试覆盖率数据
- 📈覆盖率报告:支持 Coverlet JSON、LCOV 和 Cobertura XML 格式
- 🎯行覆盖率:跟踪测试覆盖了哪些行
- 🌳分支覆盖率:监控方法级分支覆盖率
- 💡建议:获取可行的建议以提高覆盖率
- 💭结构化思维:记录并验证复杂操作的推理
- 🧩 AI 优化推理:基于Anthropic 对改进 LLM 问题解决能力的研究
- 📋任务规划:将复杂问题分解为可管理的步骤
- ✅政策合规性:根据项目指南验证解决方案
- 🔄工具输出分析:在采取下一步行动之前处理其他工具的结果
- 📝决策文档:维护架构选择的审计跟踪
从源代码构建
- 克隆存储库:
- 构建解决方案:
- 运行测试(可选):
运行命令
使用客户端与您的代码库进行交互:
环境设置
对于语义搜索功能,您需要设置以下环境变量:
AZURE_OPENAI_ENDPOINT
:您的 Azure OpenAI 端点 URLAZURE_OPENAI_API_KEY
:您的 Azure OpenAI API 密钥
用法
基本命令
- 设置基本目录:
- 获取基目录:
- 获取版本信息:
- 列出项目:
- 列出源文件:
- 分析包:
示例输出:
- 分析测试覆盖率:
覆盖率分析输出示例:
搜索命令
- 文本搜索:
- 语义搜索:
语义搜索功能:
- 使用嵌入来根据含义查找代码
- 返回按相关性排序的代码片段
- 显示行号和相似度分数
- 首次搜索时自动索引您的代码
模式管理
- 添加忽略模式:
- 查看当前模式:
- 删除特定模式:
- 清除用户模式:
- 查看状态文件位置:
默认忽略模式
为保护敏感信息,默认情况下会忽略以下模式:
*.env
环境文件appsettings.*.json
- 应用程序设置*.pfx
- 证书文件*.key
密钥文件*.pem
——PEM 文件*password*
- 名称中包含“密码”的文件*secret*
- 名称中包含“secret”的文件
安全功能
- 路径安全:只能在指定的基目录内访问文件
- 模式验证:忽略模式验证语法是否正确
- 大小限制:大文件内容将被截断,以防止出现内存问题
- 敏感文件保护:内置模式保护常见的敏感文件
示例工作流程
- 设置项目的基本目录:
- 检查服务器版本和配置:
- 设置自定义忽略模式:
- 列出所有项目:
- 分析项目的包依赖关系:
- 搜索认证相关代码:
与AI编码工具集成
NetContextServer 实现了模型上下文协议 (MCP) ,允许与支持该协议的 AI 编码助手无缝集成,例如:
- VS Code :为您的 AI 助手提供代码库的完整上下文,以便更准确地生成代码和提供帮助
- 其他与 MCP 兼容的工具:任何实现模型上下文协议的工具都可以连接到 NetContextServer
与 VS Code 一起使用:
- 配置 VS Code 以使用 NetContextServer 作为其 MCP 提供程序
- 通过完整的代码库上下文享受增强的代码帮助
要测试和调试 MCP 交互,您可以使用模型上下文协议检查器。这是一款可视化测试工具,可帮助您检查和验证 MCP 客户端与服务器之间的通信。访问检查器文档,了解更多其特性和功能。
NetContextServer 使 AI 协作者能够请求有关您的代码库的特定信息,从而使 AI 的建议与您的特定项目结构和编码模式更加相关和准确。
错误处理
服务器针对常见场景提供了清晰的错误消息:
- 未找到目录
- 访问被拒绝(在基目录之外)
- 无效模式
- 超出文件大小限制
- 受限文件类型
- 缺少语义搜索的环境变量
贡献
- 分叉存储库
- 创建功能分支
- 提交你的更改
- 推送到分支
- 创建拉取请求
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
NetContextServer 使 Cursor AI 等 AI 编码助手能够通过模型上下文协议 (MCP) 深入了解您的 .NET 代码库。这意味着更准确的代码建议、更完善的问题解答以及更高效的编码体验。
Related MCP Servers
- -securityFlicense-qualityAn MCP server that provides detailed information about your development environment to the Cursor code editor, enabling more context-aware assistance.Last updated -1Python
- -securityAlicense-qualityAn MCP server implementation that standardizes how AI applications access tools and context, providing a central hub that manages tool discovery, execution, and context management with a simplified configuration system.Last updated -9PythonMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that wraps the dbt CLI tool, enabling AI coding agents to interact with dbt projects through standardized MCP tools. Developed by Mammoth Growth.Last updated -8PythonMIT License
- -securityAlicense-qualityAn MCP server that analyzes codebases and generates contextual prompts, making it easier for AI assistants to understand and work with code repositories.Last updated -10PythonMIT License