habitat

habitat

这是一个协作组件的集合,它们共同作用,可以方便地在本地和网络上管理、开发、使用和迁移 MCP 服务器。

dawsonlp

研究与数据
访问服务器

README

habitat

这是一组协作组件,它们共同作用,可以轻松地在本地和网络上管理、开发、使用和迁移 MCP 服务器。

MCP Habitat:组件架构

概述

MCP Habitat 为管理本地和云环境中的模型上下文协议 (MCP) 服务器提供了一个全面的架构。本文档概述了关键组件及其交互。

核心组件

1. MCP 注册中心

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

  • 目的:服务发现、身份验证和编排
  • 实现:具有注册中心特定扩展的 MCP 服务器
  • 职责
    • 维护可用 MCP 服务器的注册表
    • 处理服务发现请求
    • 管理身份验证和授权
    • 将客户端请求路由到适当的 MCP 服务器

2. MCP 服务器架构(三层)

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

2.1 通用 MCP 核心

  • 目的:处理 MCP 协议和会话管理
  • 实现:所有 MCP 服务器使用的共享库
  • 职责
    • 上下文窗口管理
    • 会话状态跟踪
    • 消息处理和路由
    • 令牌计数和限制
    • MCP 协议实现

2.2 元数据服务

  • 目的:定义服务器功能和集成细节
  • 实现:MCP 服务器的配置层
  • 职责
    • 定义可用命令和语法
    • 提供服务模式
    • 管理版本信息
    • 处理注册中心注册
    • 记录功能

2.3 服务适配器

  • 目的:连接到底层服务(Jira、GitHub 等)
  • 实现:独立的微服务
  • 职责
    • 与外部 API 交互
    • 在 MCP 协议和服务特定 API 之间进行转换
    • 处理服务身份验证
    • 管理数据转换
    • 提供独立的 API 访问

3. Habitat CLI

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

  • 目的:统一的管理界面
  • 实现:带有 habitat、registry 和 server 子命令的 CLI 工具
  • 职责
    • 管理整个 habitat 生命周期
    • 配置和控制注册中心
    • 添加/删除/更新单个 MCP 服务器
    • 监控系统健康状况
    • 供应新服务

交互

注册流程

  1. MCP 服务器启动
  2. 元数据服务连接到注册中心
  3. 服务器进行身份验证并注册其功能
  4. 注册中心将服务器添加到可用服务
  5. 注册中心执行健康检查以确保可用性

发现流程

  1. 客户端使用 MCP 协议连接到注册中心
  2. 客户端请求特定类型的可用服务
  3. 注册中心验证客户端身份并检查权限
  4. 注册中心返回具有连接详细信息的匹配服务列表
  5. 客户端直接连接到相关的 MCP 服务器

服务交互流程

  1. 客户端与 MCP 服务器建立会话
  2. 客户端发送 MCP 格式的请求
  3. MCP 核心管理会话上下文
  4. 服务适配器将请求转换为特定于服务的 API 调用
  5. 服务适配器返回数据,MCP 核心将其格式化为响应

部署模型

本地开发

  • 注册中心和 MCP 服务器在本地 Docker 容器中运行
  • 服务通过 localhost 网络进行通信
  • 配置存储在本地文件系统中

混合部署

  • 注册中心在本地运行,一些服务在本地运行,另一些在云中运行
  • 本地注册中心维护与远程服务的连接
  • 无论服务位置如何,都保持一致的发现机制

云部署

  • 所有组件都部署到 Kubernetes 或类似平台
  • 注册中心水平扩展以实现高可用性
  • 服务适配器根据负载独立扩展
  • MCP 服务器根据需要在各个区域分布

安全模型

身份验证层

  1. 客户端到注册中心:使用 API 密钥或 OAuth 进行初始身份验证
  2. 注册中心到服务器:使用相互 TLS 或 API 密钥进行服务器验证
  3. 客户端到服务器:注册中心提供基于令牌的访问
  4. 服务器到服务:服务特定的身份验证由适配器处理

授权模型

  • 注册中心维护访问控制策略
  • 权限在服务级别进行管理
  • 客户端功能根据身份进行限制
  • 审计日志捕获所有身份验证和授权事件

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python