Skip to main content
Glama
lroolle

OpenAI Agents MCP Server

by lroolle

OpenAI Agents MCP 服务器

铁匠徽章

通过 MCP 协议公开 OpenAI 代理的模型上下文协议 (MCP) 服务器。

特征

该服务器使用 OpenAI Agents SDK 公开单个代理和多代理协调器:

个人专业代理

  • Web 搜索代理:用于在网络上搜索实时信息的专门代理

  • 文件搜索代理:用于在 OpenAI 向量存储中搜索和分析文件的专用代理

  • 计算机操作代理:用于安全地在您的计算机上执行操作的专门代理

多代理协调器

  • Orchestrator Agent :一个强大的代理,可以在专门的代理之间进行协调,为每个任务选择合适的代理

每个代理都可以通过 MCP 协议访问,从而使任何 MCP 客户端(包括 Claude 桌面应用程序)都可以使用它们。

Related MCP server: MCP Simple OpenAI Assistant

安装

先决条件

  • Python 3.11 或更高版本

  • uv包管理器(推荐)

  • OpenAI API 密钥

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 openai-agents-mcp-server:

npx -y @smithery/cli install @lroolle/openai-agents-mcp-server --client claude

克劳德桌面

"mcpServers": {
  "openai-agents-mcp-server": {
    "command": "uvx",
    "args": ["openai-agents-mcp-server"],
    "env": {
        "OPENAI_API_KEY": "your-api-key-here"
    }
  }
}

实现细节

工具要求

  • WebSearchTool :不需要参数,但可以接受可选的位置上下文

  • FileSearchTool :需要vector_store_ids(来自OpenAI向量存储的ID)

  • ComputerTool :需要 AsyncComputer 实现(当前模拟)

定制

您可以通过以下方式自定义此服务器:

  1. 实现完整的 AsyncComputer 接口以实现真实的计算机交互

  2. 为其他 OpenAI 工具添加额外的专用代理

  3. 增强协调器代理以处理更复杂的工作流程

配置

您可以使用环境变量配置服务器:

  • OPENAI_API_KEY :您的 OpenAI API 密钥(必需)

  • MCP_TRANSPORT :使用的传输协议(默认值:“stdio”,可以是“sse”)

发展

设置开发环境

# Clone the repository
git clone https://github.com/lroolle/openai-agents-mcp-server.git
cd openai-agents-mcp-server

# Create a virtual environment
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
uv sync --dev

使用 MCP Inspector 进行测试

您可以使用 MCP 检查器测试服务器:

# In one terminal, run the server with SSE transport
export OPENAI_API_KEY=your-api-key
export MCP_TRANSPORT=sse

uv run mcp dev src/agents_mcp_server/server.py

然后打开 Web 浏览器并导航至http://localhost:5173 。

执照

麻省理工学院

Available Tools

4 tools
computer_action_agentC

Use an AI agent specialized in performing computer actions safely and effectively.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesThe action or task you want to perform on the computer.

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'safely and effectively,' which hints at safety considerations but doesn't specify what makes it safe (e.g., permissions, side effects, rate limits) or describe the agent's behavior (e.g., how it performs actions, what it returns). This is inadequate for a tool that likely involves system-level operations, leaving critical behavioral traits undocumented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that is front-loaded with the core purpose. It avoids redundancy and waste, making it appropriately concise. However, it could be more structured by explicitly separating purpose from guidelines or behavioral details, but it earns high marks for brevity and clarity within its limited scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a tool that performs computer actions (likely involving system interactions), the description is incomplete. With no annotations, no output schema, and minimal behavioral transparency, it fails to provide enough context for safe and effective use. The agent lacks information on what the tool returns, error handling, or operational limits, making this inadequate for such a potentially impactful tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'action' parameter documented as 'The action or task you want to perform on the computer.' The description adds no additional meaning beyond this, such as examples, constraints, or format details. Given the high schema coverage, a baseline score of 3 is appropriate, as the schema does the heavy lifting without extra value from the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool uses an AI agent for computer actions, which gives a vague purpose but lacks specificity about what 'computer actions' entails. It mentions 'safely and effectively' but doesn't clarify what types of actions (e.g., file operations, system commands, GUI interactions) or distinguish it from sibling tools like file_search_agent or multi_tool_agent. This is a minimal viable description that doesn't fully differentiate the tool's scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions for usage, nor does it reference sibling tools like file_search_agent or multi_tool_agent to help the agent choose appropriately. This leaves the agent with no explicit or implied usage rules.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

file_search_agentC

Use an AI agent specialized in searching through files and documents to find relevant information.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNoThe maximum number of document results to return.
queryYesThe search query or question to find in the documents.
vector_store_idsYesThe IDs of the vector stores to search in. This is required for file search to work.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool uses an 'AI agent specialized in searching' but doesn't describe how it works (e.g., semantic search vs keyword, ranking approach), what types of files it supports, whether it requires specific permissions, or what the output format looks like. The description is too vague about the actual behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that gets straight to the point without any wasted words. It's appropriately sized for a tool with good schema documentation and no complex behavioral nuances to explain.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a search tool with 3 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what constitutes a 'relevant' result, how results are ranked, what file formats are supported, or what the return structure looks like. The agent needs more context to understand what this tool actually delivers.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds no parameter-specific information beyond what's in the schema. It mentions 'search query or question' and 'vector stores' indirectly but provides no additional context about parameter usage or relationships.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'searching through files and documents to find relevant information' using an 'AI agent specialized' for this task. It specifies the verb (search) and resource (files/documents), but doesn't distinguish it from sibling tools like 'web_search_agent' which might search different content types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'web_search_agent' or 'multi_tool_agent'. It mentions the tool is 'specialized in searching through files and documents' but doesn't clarify when file/document search is appropriate versus web search or other approaches.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

multi_tool_agentC

Use an AI agent that can orchestrate between web search, file search, and computer actions based on your query.

ParametersJSON Schema
NameRequiredDescriptionDefault
enable_computer_actionsNoWhether to enable computer action capabilities.
enable_file_searchNoWhether to enable file search capabilities.
enable_web_searchNoWhether to enable web search capabilities.
queryYesThe query or task you want help with.
vector_store_idsNoRequired if enable_file_search is True. The IDs of the vector stores to search in.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool orchestrates between capabilities but doesn't describe how the orchestration works, what the agent does (e.g., sequential vs. parallel execution), error handling, or output format. This leaves significant gaps in understanding the tool's behavior beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose. It avoids unnecessary words and gets straight to the point, though it could be slightly more informative without sacrificing brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (orchestrating multiple capabilities) and lack of annotations and output schema, the description is insufficient. It doesn't explain the orchestration logic, result aggregation, or any behavioral nuances, leaving the agent with incomplete context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 5 parameters. The description doesn't add any parameter-specific information beyond what's in the schema (e.g., it doesn't explain how 'query' interacts with enabled capabilities or provide examples). Baseline score of 3 is appropriate as the schema handles parameter semantics adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Use an AI agent that can orchestrate between web search, file search, and computer actions based on your query.' It specifies the verb ('orchestrate') and resources (web search, file search, computer actions), but doesn't explicitly differentiate from sibling tools like computer_action_agent, file_search_agent, and web_search_agent, which are mentioned as siblings but not contrasted in the description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its sibling tools (computer_action_agent, file_search_agent, web_search_agent). It mentions the tool can orchestrate between capabilities but doesn't specify scenarios, prerequisites, or exclusions for choosing this multi-tool agent over individual specialized agents.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

web_search_agentB

Use an AI agent specialized in web searching to find accurate, up-to-date information from the internet.

ParametersJSON Schema
NameRequiredDescriptionDefault
locationNoOptional location context for location-specific searches (e.g., 'New York').
queryYesThe search query or question you want to find information about online.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the agent is 'specialized in web searching' and aims for 'accurate, up-to-date information,' which adds some context about quality and timeliness. However, it doesn't disclose critical behavioral traits such as rate limits, authentication needs, potential costs, or how results are returned (e.g., format, pagination). For a tool with no annotations, this leaves significant gaps in understanding its operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose: using an AI agent for web searching. Every word earns its place by specifying specialization ('specialized in web searching'), quality goals ('accurate, up-to-date'), and source ('from the internet'). There's no redundancy or unnecessary elaboration, making it appropriately sized for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema, no annotations), the description is partially complete. It covers the basic purpose and context but lacks details on behavioral aspects (e.g., how searches are performed, result handling) and doesn't compensate for the absence of an output schema. It's adequate as a starting point but leaves the agent with insufficient information for optimal tool invocation without further exploration.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters ('query' and 'location') well-documented in the input schema. The description doesn't add any parameter-specific information beyond what the schema provides (e.g., it doesn't explain query formatting or location usage details). According to the rules, with high schema coverage (>80%), the baseline score is 3 even without param info in the description, which applies here.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Use an AI agent specialized in web searching to find accurate, up-to-date information from the internet.' It specifies the verb ('find') and resource ('information from the internet'), distinguishing it from sibling tools like 'file_search_agent' (local files) and 'computer_action_agent' (system actions). However, it doesn't explicitly differentiate from 'multi_tool_agent' in terms of web search specialization.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context by mentioning 'accurate, up-to-date information from the internet,' suggesting this tool is for online research. It doesn't provide explicit when-to-use vs. when-not-to-use guidance or name alternatives among siblings (e.g., use this for web searches vs. 'file_search_agent' for local files). The context is clear but lacks specific exclusions or comparative advice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv1.0.0
    • First observedcomputer_action_agent
    • First observedfile_search_agent
    • First observedmulti_tool_agent
    • First observedweb_search_agent

TDQS

B3.2/5.0

Scored across 4 tools

Disambiguation4/5

The tools have mostly distinct purposes with clear specialization: computer actions, file search, web search, and a multi-tool orchestrator. However, the multi_tool_agent overlaps with the specialized agents by potentially performing their functions, which could cause some confusion about when to use it versus the specific agents.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with a clear '_agent' suffix (e.g., computer_action_agent, file_search_agent). The naming is predictable and uniform across all four tools, making them easy to identify and categorize.

Tool Count4/5

With 4 tools, the count is reasonable for an agent orchestration server, covering core areas like computer actions, file search, web search, and multi-tool coordination. It is slightly thin but well-scoped, as each tool serves a distinct role without unnecessary bloat.

Completeness3/5

The tool set covers key agent functionalities (computer actions, file search, web search, and orchestration), but there are notable gaps. For example, there is no dedicated tool for database operations, API interactions, or other common agent tasks, which might limit coverage for broader use cases in the agent domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers