mcpField
H
habitat

habitat

本地服务
github.com/dawsonlp开发工具083 周前更新

关于 habitat

habitat 是一组用于管理本地和网络端 MCP 服务的协作组件,包含注册表、服务架构和命令行工具。它支持服务发现、认证、路由及服务生命周期管理,面向开发和运营 MCP 服务的团队。

主要功能

  1. 01注册与发现 MCP 服务
  2. 02认证、授权与请求路由
  3. 03分层服务适配架构
  4. 04命令行管理服务生命周期
  5. 05监控健康状态与配置服务

适用场景

  1. 01登记并发现可用 MCP 服务
  2. 02管理本地与云端服务
  3. 03通过命令行添加或更新服务
  4. 04检查服务健康状态

MCP 相关

包含作为 MCP 服务运行的注册表,用于发现、认证和协调 MCP 服务,并将客户端请求路由至相应服务。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

habitat

这是一组协同工作的组件,可轻松管理、开发、使用和迁移本地及网络上的 MCP 服务。

MCP Habitat:组件架构

概述

MCP Habitat 提供了一套全面的架构,用于管理本地和云环境中的 Model Context Protocol(MCP)服务。本文档概述了关键组件及其交互方式。

核心组件

1. MCP Registry

作为 MCP 服务本身实现的中央发现服务。

  • 用途:服务发现、身份验证和编排
  • 实现方式:带有注册表专用扩展的 MCP 服务
  • 职责:
    • 维护可用 MCP 服务的注册表
    • 处理服务发现请求
    • 管理身份验证和授权
    • 将客户端请求路由到适当的 MCP 服务
2. MCP 服务架构(三层)

每个 MCP 服务由三个不同的层组成:

2.1 通用 MCP 核心
  • 用途:处理 MCP 协议和对话管理
  • 实现方式:所有 MCP 服务共用的库
  • 职责:
    • 管理上下文窗口
    • 跟踪对话状态
    • 处理和路由消息
    • 统计 Token 数量并设置限制
    • 实现 MCP 协议
2.2 元数据服务
  • 用途:定义服务能力和集成详情
  • 实现方式:MCP 服务的配置层
  • 职责:
    • 定义可用命令及其语法
    • 提供服务架构
    • 管理版本信息
    • 处理注册表注册
    • 记录服务能力
2.3 服务适配器
  • 用途:连接底层服务(Jira、GitHub 等)
  • 实现方式:独立微服务
  • 职责:
    • 与外部 API 交互
    • 在 MCP 协议与特定服务的 API 之间进行转换
    • 处理服务身份验证
    • 管理数据转换
    • 提供独立的 API 访问
3. Habitat CLI

用于管理整个生态系统的命令行界面。

  • 用途:统一管理界面
  • 实现方式:包含 habitat、registry 和 server 子命令的 CLI 工具
  • 职责:
    • 管理整个 Habitat 生命周期
    • 配置和控制注册表
    • 添加、移除或更新单个 MCP 服务
    • 监控系统运行状况
    • 配置新服务

交互流程

注册流程
  1. MCP 服务启动
  2. 元数据服务连接到 Registry
  3. 服务进行身份验证并注册其能力
  4. Registry 将服务添加到可用服务中
  5. Registry 执行运行状况检查以确保服务可用
发现流程
  1. 客户端使用 MCP 协议连接到 Registry
  2. 客户端请求特定类型的可用服务
  3. Registry 对客户端进行身份验证并检查权限
  4. Registry 返回匹配服务的列表及连接详情
  5. 客户端直接连接到相关的 MCP 服务
服务交互流程
  1. 客户端与 MCP 服务建立对话
  2. 客户端发送符合 MCP 格式的请求
  3. MCP Core 管理对话上下文
  4. 服务适配器将请求转换为特定服务的 API 调用
  5. 服务适配器返回数据,由 MCP Core 将其格式化为响应

部署模式

本地开发
  • Registry 和 MCP 服务在本地 Docker 容器中运行
  • 服务通过 localhost 网络通信
  • 配置存储在本地文件系统中
混合部署
  • Registry 在本地运行,部分服务在本地运行,其他服务在云端运行
  • 本地 Registry 与远程服务保持连接
  • 无论服务位于何处,都使用一致的发现机制
云端部署
  • 所有组件都部署到 Kubernetes 或类似平台
  • Registry 进行水平扩展,以实现高可用性
  • 服务适配器根据负载独立扩展
  • MCP 服务根据需要分布在不同区域

安全模型

身份验证层
  1. 客户端到 Registry:使用 API 密钥或 OAuth 进行初始身份验证
  2. Registry 到服务端:使用双向 TLS 或 API 密钥验证服务端
  3. 客户端到服务端:使用 Registry 提供的基于令牌的访问
  4. 服务端到服务:由 Adapter 处理特定于服务的身份验证
授权模型
  • Registry 维护访问控制策略
  • 在服务级别管理权限
  • 根据身份限制客户端功能
  • 审计日志记录所有身份验证和授权事件

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。