服务目录查询工具

该服务是一个服务目录查询工具,允许AI代理通过自然语言查询大型软件平台的结构,包括系统架构、模块所有权、接口依赖和数据库使用等信息。

  • by MarcGrol
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 MarcGrol/service-catalog-mcp-server

使用说明

服务目录MCP服务器

引言

此mcp服务器公开了一个“服务目录”。它允许AI代理(如Claude Desktop、Gemini CLI)通过自然文本查询非常大的软件平台的结构。 我可以回答有关系统架构、模块所有权、接口依赖关系和数据库使用的问题。

特性

  • 服务发现:轻松查找和了解可用服务。
  • 模块管理:组织和跟踪软件模块。
  • 接口编目:记录和管理API接口。
  • 依赖关系映射:可视化服务、模块和接口之间的关系。
  • 复杂性分析:识别和分析接口和模块的复杂性。
  • 基于团队的视图:按所属团队筛选服务和模块。
  • 搜索功能:高效地在目录中搜索特定实体。
  • SLO发现:高效地搜索所有应用程序的SLO。

安装

要开始使用服务目录MCP服务器,请执行以下步骤:

  1. 克隆存储库:

    cd
    mkdir -p src
    cd src
    git clone https://github.com/your-org/service-catalog-mcp-server.git
    cd service-catalog-mcp-server
    
    # Make sure the sqlite databases (distributed separately) are in place:
    ./data/service-catalog.sqlite
    ./data/slos.sqlite
    
  2. 构建项目:

    # tests, builds and installs the "service-catalog-mcp-server"-executable in ~/go/bin/
    
    make
    

用法

构建后,您可以运行服务器:

# show help
~/go/bin/service-catalog-mcp-server -h

# start with default settings: stdio
~/go/bin/service-catalog-mcp-server

快速验证

默认情况下,服务器在 stdio 模式。您可以通过将JSON-RPC 2.0请求直接粘贴到终端来测试它。例如,要搜索与“合作伙伴”相关的候选人,请粘贴以下JSON并按Enter键:

{"method":"tools/call","params":{"name":"suggest_candidates","arguments":{"keyword":"partner"}},"jsonrpc":"2.0","id":9}

服务器将JSON-RPC响应打印到标准输出。有关更多示例,请参见 examples.md.

与gemini cli或Claude desktop等LLM代理集成

为了整合 service-catalog-mcp-server 使用gemini cli或Claude桌面 stdio 运输时,请按照以下步骤操作:

  1. 构建项目: 确保您已构建 service-catalog-mcp-server 可执行,如“安装”部分所述。

  2. 调整 ~/.gemini/settings.json 或 claude_desktop_config.json 以反映以下示例: 找到您的 claude_desktop_config.json 文件(其位置因操作系统而异,但通常在Claude桌面的用户配置目录中)。添加以下条目:

    {
      "mcpServers": {
        "service-catalog": {
          "command": "/path/to/your/mcp-server",
          "args": [],
          "env": {}
        }
      }
    }
    

    重要:替换 /path/to/your/service-catalog-mcp-server 与您的实际绝对路径 service-catalog-mcp-server 可执行。

  3. 重新启动gemini cli或Claude桌面: 重新启动Claude桌面后,更改生效。这 service-catalog MCP服务器现在应该可以使用了。

项目结构

  • main.go:应用程序的入口点。
  • internal/core/:使用不同传输配置和启动mcp服务的框架
  • internal/plugin/servicecatalog:核心服务目录逻辑,包括处理程序、存储库和搜索。

贡献

欢迎投稿!请查看 CONTRIBUTING.md 了解如何为这个项目做出贡献的详细信息。

许可证

此项目根据MIT许可证获得许可-请参阅 LICENSE 文件以获取详细信息。