callspec
OfficialMost teams duct-tape the same API across REST routes, OpenAPI specs, DIY clients, docs, types, validators and MCP. That's a ton of repetitive work and brittle code that drifts.
Instead, define each route once in TypeScript — inputs, outputs, and errors — and Callspec ships the server, SDK, docs, OpenAPI, and MCP from that contract. One source of truth, unit-testable, no drift.
On the frontend you call api.searchPosts({…}) and get a Result back — success value or a typed error code you can switch on. Same methods, same types, same errors as the server and as agents on MCP. Unit-test the real handler with .handler(input, ctx) — no HTTP, no req/res.
Quick start
npm i callspec runtyp expressGetting started walks through a route, spec(), mountSpec(), and the generated client. For a minimal one-file spike, see Single-file server example.
Coding agents
Optional — for Cursor, Claude Code, and similar tools: skills/callspec/SKILL.md (rules) and copy-paste prompts. The guides below are the source of truth for the API.
Contents
Same guides as callspec.logfox.ai. Links are repo-relative — they work in a checkout and on GitHub’s file browser.
Introduction
API reference
Working with Coding Agents
Server
Client
Docs UI
MCP Server
OpenAPI
Project
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/logfoxai/callspec'
If you have feedback or need assistance with the MCP directory API, please join our Discord server