mcpField
B
Business Request Server

Business Request Server

本地服务
github.com/dto-btn开发工具07 周前更新

关于 Business Request Server

Business Request Server 是供其他 PoC 使用的演示型 MCP 服务,面向开发和概念验证场景。它连接 SQL Server 数据库,并提供业务请求查询与结果筛选功能。

主要功能

  1. 01连接 SQL Server 数据库
  2. 02按条件搜索业务请求
  3. 03选择查询字段
  4. 04筛选查询结果
  5. 05支持 Docker 运行

适用场景

  1. 01在 PoC 中查询业务请求
  2. 02按标题等字段过滤记录
  3. 03筛选并查看数据库查询结果

MCP 相关

该 MCP 服务面向 MCP 客户端提供业务请求搜索、字段选择和结果筛选能力。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Business Request Server

供其他 PoC 使用的 MCP 服务演示概念验证

开发者

配置

运行服务或客户端之前,请根据示例创建 .env 文件:

cp .env.example .env

编辑 .env,填写数据库凭据和 Azure OpenAI 设置。

变量描述必需默认值
BITS_DB_SERVERSQL Server 数据库的主机名或 IP 地址。是missing.domain
BITS_DB_USERNAME数据库身份验证的用户名。是missing.username
BITS_DB_PWD数据库身份验证的密码。是missing.password
BITS_DB_DATABASE要连接的特定数据库名称。是missing.dbname
HOSTMCP 服务绑定的主机地址。否0.0.0.0
PORTMCP 服务监听的端口。否8000
MCP_SERVER_URLMCP 服务可访问的 URL(供客户端使用)。否http://127.0.0.1:8000/mcp
CORS_ALLOW_ORIGINS允许连接到 MCP 服务的来源列表,以逗号分隔。否http://localhost,http://127.0.0.1
CORS_ALLOW_CREDENTIALS是否允许在 CORS 请求中使用凭据(Cookie、身份验证标头)。否false
AZURE_OPENAI_ENDPOINTAzure OpenAI 资源的终结点 URI(供客户端使用)。是(客户端)-
AZURE_OPENAI_VERSIONAzure OpenAI 的 API 版本。否2024-05-01-preview
CLIENT_ID用于身份验证的 OAuth2 客户端 ID(实验性)。否-
CLIENT_SECRET用于身份验证的 OAuth2 客户端密钥(实验性)。否-
REDIRECT_URI用于身份验证的 OAuth2 重定向 URI(实验性)。否-
安装
uv venv
uv pip install -e .
# then run it locally
mcp dev server.py
# or alternatively
python server.py

访问显示的 URL,以测试服务。

然后,你可以测试 Templates 等功能,以及 search_business_requests:

将以下内容作为 query 传入:

{
  "query_filters": [
    {
      "name": "BR_SHORT_TITLE",
      "value": "Server",
      "operator": "="
    }
  ]
}

将以下内容作为 select_fields 传入:

{
  "fields": [
    "BR_SHORT_TITLE"
  ]
}

然后,你可以通过 filter_results 筛选结果:

[
  {
    "column": "RPT_GC_ORG_NAME_EN",
    "operator": "contains",
    "value": "Correctional"
  }
]

通过 Docker 运行

docker build -t mcp-bits:local .
docker run -p 8080:8080 --env-file ./.env --name mcp-bits-container mcp-bits:local

pymssql 问题

Mac OSX 上的 pymssql

pymssql 依赖 FreeTDS,因此请确保提前安装:brew install freetds。

之后,如果运行代码时遇到问题,请执行以下操作:

uv pip uninstall pymssql
uv pip install --pre --no-binary :all: pymssql --no-cache --no-build-isolation

你也可以将以下内容添加到 uv 的 pyproject.toml 中:

[tool.uv]
no-binary-package = ["pymssql"]

完成后,应该就可以正常运行了。

注意:已知 cython==3.1.0 存在问题,详见此处

目前可以通过以下方式绕过此问题(问题修复后请移除此内容):

uv pip uninstall pymssql
export CFLAGS="-I$(brew --prefix freetds)/include"
export LDFLAGS="-L$(brew --prefix freetds)/lib"
uv pip install "packaging>=24" "setuptools>=54.0" "setuptools_scm[toml]>=8.0" "wheel>=0.36.2" "Cython==3.0.10" "tomli"
uv pip install --pre --no-binary :all: pymssql --no-cache --no-build-isolation

部署

CI/CD

待办

手动部署

以下说明如何通过 CLI 在 Azure 中手动部署。

az webapp deployment source config-local-git \
  --name <WebAppName> \
  --resource-group <ResourceGroupName>
git remote add azure <GitURLFromPreviousStep>
git push azure main

文档

评论

支持 Markdown

第一次接触 MCP?

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

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