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

MCP Agent Base

MCP Server

一个基于FastAPI的轻量级服务,提供与OpenAI兼容的聊天补全端点,支持Anthropic Claude模型和MCP工具调用。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
API代理FastAPIClaudeAI代理Claude

安装说明

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

作者 / 组织

gisetia

提供方

gisetia

最后核验

2026/5/17 20:19

快速接入

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

详细介绍

MCP代理库

最小的FastAPI服务,公开了与OpenAI兼容的 /chat/completions 端点由Anthropic Claude支持,具有MCP工具调用和SSE流。

如何运行

  • 要求:Python 3.10+。安装deps: pip install -e . (或 pip install -e .[dev] 用于测试)。
  • 本地服务器: uvicorn base_agent.api:app --reload --port 5000
  • Docker: docker compose up --build (约束 5000:5000,安装 ./prompts 只读)。
  • 系统提示始终从以下位置读取 prompts/system_prompt.txt;编辑该文件以更改行为。

环境变量

  • ANTHROPIC_API_KEY:必需,除非 SIMULATE=true.
  • MCP_SERVER_URL:用于工具发现/调用的MCP服务器根。
  • DEFAULT_MODEL:人体模型名称(例如。, claude-3-haiku-20240307).
  • DEFAULT_TEMPERATURE, DEFAULT_MAX_OUTPUT_TOKENS:生成默认值转发给Anthropic。
  • THINKING_ENABLED, THINKING_BUDGET_TOKENS:克劳德“思考”模式的切换和预算。
  • INCLUDE_TOOL_LOGS:如果为真,工具输入/输出将与答案相呼应。
  • SIMULATE:如果为真,跳过Anthropic/MCP并返回预设响应。
  • CLIENT_NAME:发送到MCP服务器的标识符(默认为 mcp-agent-base).
  • MOCK_EMPTY_MCP:如果为true,则在不联系服务器的情况下宣传零MCP工具。

API使用

  • 端点: POST /chat/completions
  • 接受的参数:

- messages:列表 {role, content} (必填)。 - stream:bool,默认值 true (控制SSE与一次性JSON)。 - simulate:可选bool来覆盖 SIMULATE env-var用于单个请求。

  • include_model_info:bool,默认值 false (将模型设置+使用统计数据附加到响应中)。
  • 忽略的参数:模型、温度、max_tokens、top_p、presence_penalty、frequency_panalty、停止、工具、工具选择和其他OpenAI字段。

非流媒体示例:

curl -X POST http://localhost:5000/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"messages":[{"role":"user","content":"hello"}],"stream":false}'

流媒体(SSE)示例:

curl -N -X POST http://localhost:5000/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"messages":[{"role":"user","content":"hello"}],"stream":true}'

流媒体产生OpenAI形状 chat.completion.chunk 助手文本、工具调用和工具结果的事件,后面是 data: [DONE].何时 include_model_info=true,最后一个块包括 model_info 对象和结构化增量(例如 tool_callsfinish_reason)通过SSE有效载荷。

模拟模式

  • SIMULATE=true 完全绕过Anthropic和MCP并返回罐装字符串 Simulated response. (流媒体仍然会发出OpenAI风格的块)。适用于没有秘密或MCP服务器访问的本地测试。

运行测试

  • 安装dev-deps: pip install -e .[dev]
  • 运行: pytest

项目布局

  • src/base_agent/agent.py --Claude+MCP代理循环(流媒体/工具使用、模拟)。
  • src/base_agent/api.py --FastAPI接线 /chat/completions.
  • src/base_agent/openai_adapter.py --用于格式化SSE和JSON响应的助手,如OpenAI。
  • src/base_agent/mcp_client.py --用于工具发现和调用的瘦MCP客户端。
  • src/base_agent/settings.py --environment/config默认值和系统提示加载器。
  • prompts/system_prompt.txt --系统提示(仅使用源代码)。
  • tests/ --用于Anthropic/MCP的带假货的pytest套件。
  • docker-compose.yml, Dockerfile, .env.example --部署助手。

备注

  • 在请求时发现MCP工具;确保 MCP_SERVER_URL 是可达的。
  • THINKING_ENABLED=true,代理人向克劳德转发了一份思考预算。
  • 该服务在返回错误之前,通过回退重试暂时的MCP/LLM连接失败。

连接到LibreChat

通过将以下内容添加到您的LibreChat中,将代理作为OpenAI兼容的自定义端点连接到LibreChat librechat.yaml:

endpoints:
  custom:
    - name: ""
      apiKey: "none"
      baseURL: "http://:
"
      models:
        default: [""]
      titleConvo: true
      titleModel: ""
      modelDisplayLabel: ""

baseURLhttp://: 使用此代理运行的同一主机和端口。这 `` 是任意的,将定义端点在LibreChat中的显示方式。

目录标签

目录标签

API代理FastAPIClaudeAI代理Python本地部署聊天补全Claude模型MCP工具调用

支持客户端

Claude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP