Awesome Well Structure MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Awesome Well Structure MCPGenerate well structure for vertical well depth 2500m"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Awesome Well Structure MCP 服务
这是一个基于 MCP (Model Context Protocol)协议 的井身结构图生成工具,可以根据井数据自动生成井身结构图。由西南石油大学钻井所,何世明——汤明实验室团体提供技术支持。
This service, powered by the Model Context Protocol (MCP), automatically generates borehole structure diagrams from well data. It is technically supported by the He Shiming and Tang Ming research group at the Drilling Research Institute of Southwest Petroleum University.
问题反馈:1873475824@qq.com(陈春钱)
示例图片
井身结构示意图绘制:

井身结构数据解析:

Related MCP server: Mermaid MCP Server
功能特性
支持四种基本井型:直井、水平井、定向井、直改平井,支持侧钻井转换
自动生成井身结构图(PNG格式)和井身结构信息图
生成相关数据文件(CSV格式)
返回简化的图片路径(大幅减少token消耗,仅支持path格式)
自动文件归档管理(时间戳文件夹)
完整的错误处理和验证
支持图例配置和导眼井辅助线显示
安装和配置
方法一:通过 PyPI 包安装(推荐)
这是最简单快捷的安装方式,适合大多数用户。
1. 安装 Python 和 uv
安装 Python:
访问 Python官网 下载并安装 Python 3.10 或更高版本
安装时确保勾选 "Add Python to PATH" 选项
安装 uv:
# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh2. 配置 AI 客户端
在 AI 客户端中添加 MCP 服务器配置。
Trae 配置方式
在 Trae 的设置中添加以下配置(Ctrl + , 打开设置,搜索 MCP):
{
"mcp.servers": {
"awesome_well_mcp": {
"type": "stdio",
"command": "uvx",
"args": ["awesome_well_mcp"],
"disabled": false
}
}
}配置后重启 Trae 即可使用。
Cherry Studio 配置方式
在 Cherry Studio 中添加以下配置:
{
"mcpServers": {
"awesome_well_mcp": {
"command": "uvx",
"args": ["awesome_well_mcp"]
}
}
}其他 MCP 客户端
对于支持 MCP 协议的其他客户端,使用以下通用配置:
{
"command": "uvx",
"args": ["awesome_well_mcp"]
}方法二:从 GitHub 下载源码安装
适合需要自定义修改或离线使用的用户。
1. 下载源码
从以下仓库下载源码(推荐第一个):
主要仓库:https://github.com/elf004-star/elf004GH_vault_MCP001.git
备用仓库:https://github.com/elf004-star/elf004GH_vault_awesome_well_structure.git
主要文件包括:
WellStructure.exe- 井身结构生成器main.py- MCP 服务主程序pyproject.toml- 项目配置文件
2. 安装 Python 和 uv
安装 Python:
访问 Python官网 下载并安装 Python 3.10 或更高版本
安装时确保勾选 "Add Python to PATH" 选项
安装 uv:
# Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh3. 设置虚拟环境
# 进入项目目录
cd /path/to/your/project
# 使用 uv 创建虚拟环境并安装依赖
uv sync4. 配置 AI 客户端
在 AI 客户端中添加 MCP 服务器配置。
Trae 配置方式:
在 Trae 的设置中添加以下配置(Ctrl + , 打开设置,搜索 MCP):
{
"mcp.servers": {
"awesome_well_mcp_local": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP",
"run",
"main.py"
],
"disabled": false
}
}
}注意: 请将 C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP 替换为你的实际项目路径。
配置后重启 Trae 即可使用。
Cherry Studio 配置方式:
通过界面配置:
打开 Cherry Studio
进入设置 → MCP 服务器
添加新的 MCP 服务器
配置如下:
类型:标准输入输出
命令:uv
参数:
--directory C:\Files\test_MCP\awesome_well(填写你的文件夹地址) run main.py
通过配置文件编辑:
{
"mcpServers": {
"awesome_well_mcp_local": {
"name": "awesome_well_mcp_local",
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"C:\\_Git_Files\\test",
"run",
"main.py"
]
}
}
}注意: 请将 C:\\_Git_Files\\test 替换为你的实际项目路径。
MCP工具调用
工具名称:generate_well_structure
参数:
well_data: (Dict[str, Any]): 井数据字典,必需。
返回:
成功时返回简化的图片路径(<1200 token,仅支持path格式)及生成报告字典。
失败时返回错误信息字典。
返回格式:
井身结构示意图为:

井身结构信息图为:
返回数据结构:
{
"success": true,
"report_content": "详细的井身结构报告内容(Markdown格式)",
"response": "井身结构示意图为:\n\n\n井身结构信息图为:\n",
"notice": "注意,先整理<report_content>,必须将上面这项<response>包含在整理后的<report_content>中",
"well_info": {
"well_name": "井名",
"well_type": "井型",
"total_depth": 深度
},
"archive_folder": "2025-10-03_11-37-29",
"structure_image_path": "井身结构图绝对路径",
"info_image_path": "井身结构信息图绝对路径"
}支持的井型
基本井型定义
直井 (
straight well)deviationAngle_deg: 0kickoffPoint_m: nulltargetPointA_m: nulltargetPointB_m: nullDistanceAB_m: null
定向井 (
deviated well)deviationAngle_deg: 0 < 角度 < 90kickoffPoint_m: 有值(造斜点深度(可根据作图情况调整))targetPointA_m: 有值(目标点A井深)targetPointA_verticalDepth_m: 有值(目标点A的垂深),targetPointB_m: 有值(目标点B井深)DistanceAB_m: 有值(AB点间距离)REAL_kickoffPoint_m: 有值(实际造斜点)
水平井 (
horizontal well)deviationAngle_deg: 90kickoffPoint_m: 有值(造斜点深度(可根据作图情况调整))targetPointA_m: 有值(目标点A井深)targetPointA_verticalDepth_m: 有值(目标点A的垂深),targetPointB_m: 有值(目标点B井深)DistanceAB_m: 有值(AB点间距离)REAL_kickoffPoint_m: 有值(实际造斜点)
直改平井
deviationAngle_deg: 90kickoffPoint_m: 有值(造斜点深度(可根据作图情况调整))targetPointA_m: 有值(目标点A井深)targetPointA_verticalDepth_m: 有值(目标点A的垂深),targetPointB_m: 有值(目标点B井深)DistanceAB_m: 有值(AB点间距离)REAL_kickoffPoint_m: 有值(实际造斜点)需要配置
pilotHoleGuideLine并设置"side_tracking": true
井型转换规则
当 wellType 为 horizontal well 或 deviated well 时,如果配置了 pilotHoleGuideLine 并设置 "side_tracking": true,则可以表示:
直改平井:从直井段开始,在指定深度开始造斜
侧钻井:从现有井眼侧向钻出新的井眼
pilotHoleGuideLine 配置示例
"pilotHoleGuideLine": {
"topDepth_m": 4530, // 导眼井段起始深度
"bottomDepth_m": 5150, // 导眼井段结束深度
"diameter_mm": 215.9, // 导眼井段直径
"display": true, // 是否显示导眼井段
"highlight": true, // 是否高亮显示
"side_tracking": true // 是否为侧钻井
}legendConfig 图例配置示例
"legendConfig": {
"casingLegend": true, // 是否显示套管图例
"holeLegend": false, // 是否显示井眼图例
"kickoffLegend": true, // 是否显示造斜点图例
"targetPointsLegend": true // 是否显示目标点图例
}生成的文件
每次请求完成后,所有生成的文件会自动移动到以时间戳命名的文件夹中:
well_structure_plot.png: 井身结构图well_info.png: 井身结构信息图well_structure_report.md: 井身结构报告stratigraphy.csv: 地层数据casing_sections.csv: 套管数据hole_sections.csv: 井眼数据drilling_fluid_pressure.csv: 钻井液压力数据deviationData.csv: 偏移数据location.csv: 位置数据对应的
*_raw.csv原始数据文件
文件归档:
文件夹命名格式:
YYYY-MM-DD_HH-MM-SS示例:
2025-10-03_11-37-29每次请求都会创建新的归档文件夹
技术实现
使用 FastMCP 框架
支持异步处理
完整的错误处理机制
自动文件备份和清理
3秒延迟确保程序完全结束
Token优化,减少API调用成本
模板文件
项目提供了四种井型的设计模板,位于 templates/ 目录:
well_data(导眼井).json- 直井设计模板well_data(导向井) .json- 定向井设计模板well_data(水平井).json- 水平井设计模板well_data(直改平).json- 直改平井设计模板
这些模板文件展示了不同井型的标准数据结构和参数配置,可以作为设计新井的参考。每个模板都包含了完整的井身结构数据、地层信息、钻井液压力数据和图例配置。
数据结构设计要求
stratigraphy(地层数据)
地层数据定义了井眼穿过的各个地质层位信息:
"stratigraphy": [
{
"name": "遂宁组", // 地层名称
"topDepth_m": 0, // 地层顶深(米)
"bottomDepth_m": 45 // 地层底深(米)
},
{
"name": "沙溪庙组",
"topDepth_m": 45,
"bottomDepth_m": 1195
}
// ... 更多地层
]设计要求:
地层必须按深度顺序排列,从浅到深
相邻地层的深度必须连续(上一个地层的底深 = 下一个地层的顶深)
最后一个地层的底深应等于或接近
totalDepth_m地层名称使用标准地质术语
drillingFluidAndPressure(钻井液压力数据)
钻井液压力数据定义了不同深度段的压力参数:
"drillingFluidAndPressure": [
{
"topDepth_m": 0, // 压力段顶深(米)
"bottomDepth_m": 50, // 压力段底深(米)
"porePressure_gcm3": 1.00, // 孔隙压力(g/cm³)
"pressureWindow_gcm3": { // 压力窗口
"min": 1.05, // 最小压力(g/cm³)
"max": 1.10 // 最大压力(g/cm³)
}
}
// ... 更多压力段
]设计要求:
压力段必须按深度顺序排列,从浅到深
相邻压力段的深度必须连续
孔隙压力值应在地质上合理
压力窗口的最小值应大于孔隙压力
压力段数量通常少于地层数量,可以合并相似压力特征的地层
wellboreStructure(井身结构)
井身结构定义了井眼和套管的几何参数:
"wellboreStructure": {
"holeSections": [ // 井眼段
{
"topDepth_m": 0, // 井眼段顶深(米)
"bottomDepth_m": 50, // 井眼段底深(米)
"diameter_mm": 660.4, // 井眼直径(毫米)
"note_in": "26\"" // 备注(英寸)
}
// ... 更多井眼段
],
"casingSections": [ // 套管段
{
"topDepth_m": 0, // 套管顶深(米)
"bottomDepth_m": 50, // 套管底深(米)
"od_mm": 508, // 套管外径(毫米)
"note_in": "20\"" // 备注(英寸)
}
// ... 更多套管段
],
"pilotHoleGuideLine": { // 导眼井段(可选)
"topDepth_m": 4530, // 导眼井段顶深(米)
"bottomDepth_m": 5150, // 导眼井段底深(米)
"diameter_mm": 215.9, // 导眼井段直径(毫米)
"display": true, // 是否显示
"highlight": true, // 是否高亮
"side_tracking": true // 是否为侧钻井
}
}设计要求:
holeSections(井眼段)
井眼段必须按深度顺序排列,从浅到深
相邻井眼段的深度必须连续
井眼直径通常从上到下递减
最后一个井眼段的底深应等于
totalDepth_m
casingSections(套管段)
套管段必须按深度顺序排列,从浅到深
套管顶深通常为0(从井口开始)
当套管顶深不为0,会给顶深增加一个悬挂器(程序强制添加)
套管底部会增加一个套管头(程序强制添加)
套管外径通常从上到下递减
每层套管尺寸(外径)通常应当小于对应层段井筒尺寸(直径或内径)
套管底深应小于等于对应井眼段的底深
pilotHoleGuideLine(导眼井段)
仅在直改平井或侧钻井中使用
topDepth_m和bottomDepth_m定义导眼井段范围diameter_mm应与对应井眼段直径一致side_tracking: true表示侧钻井特征
Notice
当前只发布了windows版,后续可能增加对Linux,OS系统的支持。
Trae MCP 配置说明
通过 PyPI 包安装(推荐)
这是最简单快捷的安装方式,适合大多数用户。
配置步骤:
打开 Trae 设置(
Ctrl + ,)搜索 "MCP" 或 "模型上下文协议"
找到 MCP 服务器配置区域
添加以下配置:
{
"mcp.servers": {
"awesome_well_mcp": {
"type": "stdio",
"command": "uvx",
"args": ["awesome_well_mcp"],
"disabled": false
}
}
}保存设置并重启 Trae
通过本地源码安装
如果需要使用本地开发版本:
配置步骤:
打开 Trae 设置(
Ctrl + ,)搜索 "MCP"
添加以下配置(替换路径为你的实际项目路径):
{
"mcp.servers": {
"awesome_well_mcp_local": {
"type": "stdio",
"command": "uv",
"args": [
"--directory",
"C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP",
"run",
"main.py"
],
"disabled": false
}
}
}注意: 请将 C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP 替换为你的实际项目路径。
配置完成后重启 Trae 即可使用。
Claude Code MCP 配置说明
Claude Code 支持 MCP 协议,可以通过配置文件添加 MCP 服务器。
通过 PyPI 包安装(推荐)
配置步骤:
打开或创建 Claude Code 配置文件:
Windows:
%USERPROFILE%\.claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"awesome_well_mcp": {
"command": "uvx",
"args": ["awesome_well_mcp"]
}
}
}保存配置文件并重启 Claude Code
通过本地源码安装
配置步骤:
打开或创建 Claude Code 配置文件(同上)
添加以下配置(替换路径为你的实际项目路径):
{
"mcpServers": {
"awesome_well_mcp_local": {
"command": "uv",
"args": [
"--directory",
"C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP",
"run",
"main.py"
]
}
}
}保存配置文件并重启 Claude Code
注意: 请将 C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP 替换为你的实际项目路径。
配置完成后重启 Claude Code 即可使用。
其他 MCP 客户端配置
对于其他支持 MCP 协议的客户端,使用以下通用配置:
PyPI 包安装方式
{
"command": "uvx",
"args": ["awesome_well_mcp"]
}本地源码安装方式
{
"command": "uv",
"args": [
"--directory",
"C:\\_Git_Files\\GitHub_Prepare\\07_elf004_awesome_well_MCP",
"run",
"main.py"
]
}请根据你的客户端类型选择对应的配置方式。
Available Tools
1 toolgenerate_well_structureA
生成井身结构示意图及相关报告。
基于提供的井数据(JSON格式),调用井身结构生成器生成井身结构示意图(PNG)、 井身结构信息图(PNG)和详细的Markdown格式报告。支持直井、定向井、水平井等 多种井型,可配置地层、钻井液压力、井身结构等详细参数。
功能描述: 1. 接收并验证井数据的完整性和合法性 2. 调用外部生成器程序生成井身结构可视化图表 3. 创建带时间戳的归档文件夹保存所有生成文件 4. 返回图片路径和详细报告内容
Args: well_data (Dict[str, Any]): 井数据字典,必需。包含以下字段:
必填字段:
wellName (str): 井名
totalDepth_m (float): 井深,单位:米,必须大于0。若用户未明确指出,则采用最大钻头深度(wellboreStructure下的 bottomDepth_m)减去1米。
wellType (str): 井型,可选值:
- "straight well": 直井
- "deviated well": 定向井
- "horizontal well": 水平井
deviationData (Dict): 井眼轨迹参数(直井时,至少包含 "kickoffPoint_m",或deviationAngle_deg 字段)
- kickoffPoint_m (float): 绘图造斜点,单位:米 (默认null)
- REAL_kickoffPoint_m (float): 显示造斜点,单位:米 (默认null)
- targetPointA_m (float): A靶点井深,单位:米 (默认null)
- targetPointA_verticalDepth_m (float): A靶点垂深,单位:米 (默认null)
- targetPointB_m (float): B靶点井深,单位:米 (默认null)
- deviationAngle_deg (float): 井斜角,单位:度,(默认为null,直井为0)
- DistanceAB_m (float): A、B靶点距离,单位:米 (默认null)
stratigraphy (List[Dict]): 地层分层信息数组
- name (str): 地层名称
- topDepth_m (float): 顶深,单位:米
- bottomDepth_m (float): 底深,单位:米
注意:相邻地层的bottomDepth_m必须等于下一地层的topDepth_m
drillingFluidAndPressure (List[Dict]): 钻井液密度和压力剖面数组
- topDepth_m (float): 区间顶深,单位:米
- bottomDepth_m (float): 区间底深,单位:米
- porePressure_gcm3 (float): 孔隙压力当量密度,单位:g/cm³
- pressureWindow_gcm3 (Dict): 安全密度窗口
- min (float): 最小安全密度,单位:g/cm³
- max (float): 最大安全密度,单位:g/cm³
wellboreStructure (Dict): 井身物理结构
- holeSections (List[Dict]): 裸眼井段数组
- topDepth_m (float): 井段顶深,单位:米
- bottomDepth_m (float): 井段底深,单位:米
- diameter_mm (float): 钻头直径,单位:毫米
- note_in (str, 可选): 备注说明
- casingSections (List[Dict]): 套管程序数组
- topDepth_m (float): 套管悬挂点深度,单位:米
- bottomDepth_m (float): 套管鞋深度,单位:米
- od_mm (float): 套管外径,单位:毫米
- note_in (str, 可选): 备注说明
可选字段:
legendConfig (Dict): 图例和样式配置
- casingLegend (bool): 是否显示套管图例
- holeLegend (bool): 是否显示井筒图例
- kickoffLegend (bool): 是否显示造斜点图例
- targetPointsLegend (bool): 是否显示靶点图例
- fill (bool): 是否填充套管-井筒环空
- simpleinfo (bool): 是否使用简化信息图
pilotHoleGuideLine (Dict): 导眼井辅助线配置,放置在wellboreStructure内。
- display (bool): 是否显示辅助线
- highlight (bool): 是否高亮显示
- side_tracking (bool): 是否标记为侧钻点Returns: Dict[str, Any]: 生成结果字典,包含以下字段:
成功时 (success=True):
success (bool): True,表示生成成功
report_content (str): Markdown格式的详细报告内容
response (str): 包含图片路径的格式化响应文本
notice (str): 使用提示信息
well_info (Dict): 井基本信息
- well_name (str): 井名
- well_type (str): 井型
- total_depth (float): 井深
archive_folder (str): 归档文件夹相对路径
structure_image_path (str): 井身结构图绝对路径
info_image_path (str): 井身信息图绝对路径
失败时 (success=False):
success (bool): False,表示生成失败
error (str): 错误描述信息
error_code (str): 错误代码,可能的值:
- "VALIDATION_ERROR": 数据验证失败
- "FILE_UPDATE_ERROR": 文件更新失败
- "GENERATOR_ERROR": 生成器启动或运行失败
- "FOLDER_CREATION_ERROR": 文件夹创建失败
- "FILE_ARCHIVE_ERROR": 文件归档失败
- "FOLDER_PATH_ERROR": 路径获取失败
- "UNKNOWN_ERROR": 未知错误
details (str): 详细错误信息Raises: 本函数不会主动抛出异常,所有错误均通过返回字典中的success字段和error信息表示。
Notes: - 服务端具有较强容错性,部分数据缺失时会自动生成默认值 - 所有生成的文件会自动归档到以时间戳命名的文件夹中 - 不要向用户复述或展示原始JSON数据,直接使用工具生成结果 - 进行任何数据修改操作前必须提醒用户
Examples: >>> well_data = { ... "wellName": "Well_Z101", ... "totalDepth_m": 6900, ... "wellType": "deviated well", ... "deviationData": { ... "kickoffPoint_m": 3060, ... "deviationAngle_deg": 30, ... "targetPointA_m": 5090, ... "targetPointA_verticalDepth_m": 4825, ... "targetPointB_m": 6890, ... "DistanceAB_m": 1800, ... "REAL_kickoffPoint_m": 3060 ... }, ... "stratigraphy": [ ... {"name": "遂宁组", "topDepth_m": 0, "bottomDepth_m": 150}, ... {"name": "沙溪庙组", "topDepth_m": 150, "bottomDepth_m": 1112}, ... ...... ... ], ... "drillingFluidAndPressure": [ ... {"topDepth_m": 0, "bottomDepth_m": 150, ... "porePressure_gcm3": 1.085, ... "pressureWindow_gcm3": {"min": 1.05, "max": 1.10}}, ... ...... ... ], ... "wellboreStructure": { ... "holeSections": [ ... {"topDepth_m": 0, "bottomDepth_m": 152, ... "diameter_mm": 660.4, "note_in": "26""}, ... ...... ... ], ... "casingSections": [ ... {"topDepth_m": 0, "bottomDepth_m": 150.62, ... "od_mm": 508, "note_in": "20"导管"}, ... ...... ... ], ... "pilotHoleGuideLine": { ... "topDepth_m": 3060, ... "bottomDepth_m": 6900, ... "diameter_mm": 215.9, ... "display": true, ... "highlight": true, ... "side_tracking": true ... } ... }, ... "legendConfig": { ... "casingLegend": false, ... "holeLegend": false, ... "kickoffLegend": true, ... "targetPointsLegend": true, ... "fill": false, ... "simpleinfo": true ... } ... } >>> result = generate_well_structure(well_data) >>> if result["success"]: ... print(f"生成成功!图片路径:{result['structure_image_path']}") ... else: ... print(f"生成失败:{result['error']}")
| Name | Required | Description | Default |
|---|---|---|---|
| well_data | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description fully discloses behavior: no exceptions thrown, errors returned via dict, server fault tolerance, timestamped folder creation, and external generator invocation. This is comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy but well-structured with headings (功能描述, Args, Returns, Raises, Notes, Examples). It is front-loaded with a summary. Some redundancy exists, but complexity justifies the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the high complexity (nested objects, many fields), the description is complete: covers all parameters, return values (success and failure), error codes, notes, and provides a full example. Output schema is detailed in the Returns section.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage with a generic object. The description compensates by providing a full breakdown of required and optional fields, types, units, defaults, and nested structures, adding immense value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb '生成' (generate) and the resource '井身结构示意图及相关报告' (well structure diagram and related reports). It is specific and distinguishes the tool from any potential siblings, though none are listed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes functional steps, notes on usage (e.g., not to show raw JSON, to remind users before modification), and a detailed example. However, it does not explicitly state when to use this tool over alternatives, but that is mitigated by the lack of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
With only one tool, there is no possibility of confusion or overlap. The tool's purpose is clearly defined.
Single tool named 'generate_well_structure' follows a clear verb_noun pattern, consistent with its function.
A single tool for generating well structure diagrams is borderline. It fits a very narrow scope, but most servers offer a broader range of operations.
The tool only handles generation; there are no companion tools for listing, updating, or managing well data, leaving obvious gaps.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.
Generate, edit, and export data-architecture diagrams from your AI. Column lineage, PNG in chat.
AI agent draws editable hand-drawn diagrams (flowchart, ER, architecture) via MCP, not static images
Generate dynamic Mermaid diagrams and charts with AI assistance. Customize styles and export diagr…
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceEnables generation of 25+ types of charts and data visualizations using AntV, including bar charts, line charts, maps, mind maps, and specialized diagrams like fishbone and sankey charts. Supports both statistical charts and geographic visualizations for comprehensive data analysis and presentation.200
- AlicenseCqualityDmaintenanceEnables agents to analyze codebases (local or GitHub) and automatically generate Mermaid diagrams rendered as PNG images via Kroki, providing visual understanding of project structure and flow through file discovery, reading, and diagram generation.315MIT
- AlicenseNot gradedqualityBmaintenanceTransforms CSV data into beautiful visualizations including line charts, bar graphs, pie charts, and world maps. Returns base64-encoded PNG images optimized for AI chat interfaces and assistants.10Apache 2.0
- AlicenseAqualityDmaintenanceProvides machine learning researchers with tools for creating publication-quality scientific visualizations, statistical plots, and 2D data representations. It streamlines the research workflow by enabling AI assistants to generate complex figures from CSV, JSON, or direct data inputs.9MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/elf004-star/elf004GH_vault_awesome_well_structure'
If you have feedback or need assistance with the MCP directory API, please join our Discord server