JIMDRURY.
Jim Drury
Stamped intent plates greet.ts billing.intent sales.intent sliding into bolted /mcp crate on workshop desk
ai

xmcp: is this the framework for building MCPs?

SEP 18, 20265 MIN READ

What xmcp actually is

File routing, but for agent verbs

src/
src/
├── tools/
│   └── greet.ts
├── prompts/
├── resources/
├── middleware.ts   # optional
└── xmcp.config.ts  # optional
src/tools/greet.ts
import { z } from "zod";
import { type InferSchema } from "xmcp";

export const schema = {
  name: z.string().describe("The name of the user to greet"),
};

export const metadata = {
  name: "greet",
  description: "Greet the user",
  annotations: {
    title: "Greet the user",
    readOnlyHint: true,
    destructiveHint: false,
    idempotentHint: true,
  },
};

export default async function greet({ name }: InferSchema<typeof schema>) {
  return `Hello, ${name}!`;
}

Why not just mcp-handler?

Downloads are a terrible DX compass

And then there's Python FastMCP

The agents reading the docs (without the paste buffer)

Back to VMO2


Thoughts

Similar Articles