Token导航 LogoToken导航TokenDH.com
MCP Sessions Examples logo
AI代理stdio官方级别未说明来源级核验

MCP Sessions Examples

MCP Server

MCP会话管理工具提供创建、暂停、恢复和搜索会话的功能,适用于多日调试和持续性问题解决场景。

工具数

8

提示词数

0

GitHub Stars

1

资源数

0
会话管理调试工具PythonClaude上下文管理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

angrysharkstudio

提供方

angrysharkstudio

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

MCP会话代码示例

此目录包含博客文章“会话、状态和连续性:MCP的秘密酱汁”中的工作示例。

设置

# Create virtual environment (optional but recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

例子

1.会话概念演示(session_demo.py)

简单演示会话如何在没有服务器复杂性的情况下工作。

python session_demo.py

此示例显示:

  • 创建和暂停会话
  • 添加上下文和发现
  • 以保留状态恢复会话
  • 为期两天的调试场景

2.MCP会话服务器(mcp_session_server.py)

使用会话管理工具完成FastMCP服务器。

python mcp_session_server.py

可用工具:

  • create_session -创建新的持久会话
  • add_context -为会话添加上下文
  • add_message -跟踪对话历史记录
  • add_discovery -记录重要发现
  • suspend_session -保存状态并释放内存
  • resume_session -恢复以前的会话
  • list_sessions -浏览可用会话
  • search_sessions -按内容查找会话

与Claude Desktop一起使用

要将MCP会话服务器与Claude Desktop一起使用,请执行以下操作:

  1. 更新您的Claude桌面配置:

- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 窗户: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json

  1. 添加服务器配置:
   {
     "mcpServers": {
       "session_server": {
         "command": "python",
         "args": ["path/to/mcp_session_server.py"]
       }
     }
   }
  1. 重新启动克劳德桌面
  1. 会话工具现在将在您的对话中可用!

示例工作流:多日调试会话

以下是如何使用Claude Desktop中的会话服务器进行多日调试任务:

第1天-初步调查:

您:“为我们的电子商务API项目创建一个名为‘memory-leak-2025-09’的新调试会话。问题是内存以100MB/小时的速度增长。”

克劳德: *使用create_session工具* “我已经创建了调试会话。让我帮助您调查此内存泄漏。”

您:“服务器运行在AWS EC2上,具有8GB RAM和Python 3.11。你能补充一下这个背景吗?"

克劳德: *使用add_context工具* “已将服务器环境详细信息添加到我们的会话中。”

你:“我发现缓存中保存了对大型对象的引用,而且它们永远不会被释放。”

克劳德: *使用add_discovery工具* “我已经记录了这一重要发现。这肯定可以解释内存增长。在我们今天结束之前,我可以暂停会议吗?”

你:“是的,我们暂停吧。我明天继续。”

克劳德: *使用suspend_session工具* “会议暂停。我们所有的发现和背景都已保存。明天见!”

第2天-继续并继续:

你:“你能列出我的可用会话吗?我需要继续调试内存泄漏。”

克劳德: *使用list_sessions工具* “我发现你昨天的课程‘失忆-2025-09’。你想让我继续吗?”

你:“是的,请继续那个会议。”

克劳德: *使用resume_session工具* “会议继续!这是我们昨天发现的:

  • 在电子商务API中以100MB/小时的速度增长的内存
  • 在AWS EC2上运行(8GB RAM,Python 3.11)
  • 缓存正在保存对大型对象的引用

准备继续我们的调查!"

克劳德如何使用工具

当您要求Claude管理会话时,它会自动:

  • 创建会话 根据您的描述使用有意义的ID
  • 添加上下文 当您提供有关问题的信息时
  • 记录发现 当你发现重要线索时
  • 跟踪对话 维护完整的调试历史记录
  • 暂停会话 在保留状态的同时释放内存
  • 续会 所有上下文均保持不变

与Claude一起使用的常见命令

  • “为\[问题描述\]创建调试会话”
  • “添加有关\[环境/配置/症状\]的上下文”
  • “我发现\[发现\]”
  • “暂停此会话,我明天继续”
  • “继续我关于\[主题\]的会话”
  • “我有哪些可用的会话?”
  • “搜索关于\[关键字\]的会话”

故障排除

会话工具未出现在Claude中:

  • 验证配置文件路径是否适用于您的操作系统
  • 确保Python在您的系统PATH中
  • 检查mcp_ses_server.py的绝对路径是否正确
  • 尝试完全重新启动Claude Desktop

会话未持续:

  • 检查一下 ./sessions/ 目录存在并且可写
  • 验证存储后端是否已初始化(默认使用FileStorage)
  • 在Claude Desktop的开发人员控制台中查找错误消息

3.存储后端(storage_examples.py)

演示会话持久性的不同存储选项。

python storage_examples.py

包括:

  • 内存存储:快速但暂时(开发/测试)
  • 文件存储:基于压缩的简单文件
  • 数据库存储:基于SQLite,易于设置,无需服务器

4.多日调试(multi_day_debug.py)

显示会话持久性的真实3天调试场景。

python multi_day_debug.py

演示:

  • 第1天:初步调查和假设
  • 第2天:验证和根本原因分析
  • 第3天:实施和解决
  • 跨天完成上下文保存

文件结构

mcp-sessions/
├── README.md               # This file
├── requirements.txt        # Python dependencies
├── session_demo.py         # Simple session concept demo
├── mcp_session_server.py   # Complete MCP server with sessions
├── storage_examples.py     # Storage backend implementations
├── multi_day_debug.py      # 3-day debugging scenario
└── generate_dashboard.py   # Performance monitoring dashboard generator

关键概念

  1. 会话生命周期:初始化→ 活跃的→ 暂停→ 简历→ 终止
  2. 存储后端:内存(开发)、文件(简单)、数据库(生产)
  3. 上下文管理:智能积累和修剪
  4. 状态持久性:自动保存/恢复对话状态

没有Claude桌面的测试

如果你想在没有Claude Desktop的情况下测试服务器,你可以使用mcp-cli工具:

# Install mcp-cli
pip install mcp[cli]

# Run the server and interact with it
mcp run python mcp_session_server.py

# List available tools
mcp tools list

# Call a tool
mcp tools call create_session '{"session_id": "test-001", "project": "Test Project"}'

备注

  • 会话文件存储在 ./sessions/ 默认目录
  • 数据库示例使用SQLite(内置于Python中,无需设置)
  • 所有示例都使用Python 3.8+异步/等待语法
  • FastMCP包含在 mcp[cli] 包裹

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

目录标签

目录标签

会话管理调试工具PythonClaude上下文管理本地部署状态持久化

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP