OpenSEO exposes an MCP server so AI agents (Claude Code, OpenClaw, Hermes, etc.) can consume SEO data directly; Agent Skills are reusable, markdown-defined workflows that guide agents through SEO tasks via the MCP.[1]
src/server/mcp/server.ts defines createOpenSeoMcpServer, which instantiates an McpServer and registers the full set of OpenSEO MCP tools (keyword research, SERP, backlinks, rank tracking, GSC, GA4, local SEO, site audit, project management, and more).[2] The OpenSEO MCP server instructs agents to proceed normally with focused research, but to ask the user for confirmation before planned batches over 2,000 credits.[2]
registerOpenSeoTool in src/server/mcp/server.ts wraps every tool handler with instrumentMcpToolHandler before registering it with the underlying McpServer, normalizing both inputSchema and outputSchema via objectSchema.[2] MCP tool inputSchema can be declared as either a raw Zod shape (z.ZodRawShape) or a full z.ZodType; objectSchema in src/server/mcp/server.ts normalizes both forms before tool registration.[2] All MCP tools declare annotations of readOnlyHint: false, openWorldHint: false, and destructiveHint: false, signaling to MCP clients that these tools consume credits but do not mutate or call external open-world APIs in a write sense.[3]
Sources