Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Turn any OpenAPI/Swagger spec into an MCP server - every API operation becomes an agent tool.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
AGENTIFY_BEARER_TOKEN, AGENTIFY_API_KEY, AGENTIFY_API_KEY_HEADER, AGENTIFY_API_KEY_QUERY, AGENTIFY_BASIC_USER, AGENTIFY_BASIC_PASS「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"agentify": {
"command": "npx",
"args": [
"-y",
"agentify-openapi"
],
"env": {
"AGENTIFY_BEARER_TOKEN": "your-value",
"AGENTIFY_API_KEY": "your-value",
"AGENTIFY_API_KEY_HEADER": "your-value",
"AGENTIFY_API_KEY_QUERY": "your-value",
"AGENTIFY_BASIC_USER": "your-value",
"AGENTIFY_BASIC_PASS": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add agentify --env AGENTIFY_BEARER_TOKEN=your-value --env AGENTIFY_API_KEY=your-value --env AGENTIFY_API_KEY_HEADER=your-value --env AGENTIFY_API_KEY_QUERY=your-value --env AGENTIFY_BASIC_USER=your-value --env AGENTIFY_BASIC_PASS=your-value -- npx -y agentify-openapi動かす前に、空欄の値を入力してください。
このサーバーは起動コマンドに値を入れる必要があるので、設定をコピーして入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"agentify": {
"command": "npx",
"args": [
"-y",
"agentify-openapi"
],
"env": {
"AGENTIFY_BEARER_TOKEN": "your-value",
"AGENTIFY_API_KEY": "your-value",
"AGENTIFY_API_KEY_HEADER": "your-value",
"AGENTIFY_API_KEY_QUERY": "your-value",
"AGENTIFY_BASIC_USER": "your-value",
"AGENTIFY_BASIC_PASS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
このサーバーは起動コマンドに値を入れる必要があるので、設定をコピーして入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"agentify": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"agentify-openapi"
],
"env": {
"AGENTIFY_BEARER_TOKEN": "your-value",
"AGENTIFY_API_KEY": "your-value",
"AGENTIFY_API_KEY_HEADER": "your-value",
"AGENTIFY_API_KEY_QUERY": "your-value",
"AGENTIFY_BASIC_USER": "your-value",
"AGENTIFY_BASIC_PASS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
AGENTIFY_API_KEY_HEADER envAGENTIFY_API_KEY_QUERY envAGENTIFY_BASIC_USER envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント sani-savaliya で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:AGENTIFY_BEARER_TOKEN, AGENTIFY_API_KEY, AGENTIFY_BASIC_PASS
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.1)がレジストリに届いたのは5 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Starreel
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Turn a script into a finished, downloadable short-drama episode — via MCP or REST.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Turn any OpenAPI / Swagger spec into an agent-ready MCP server.
Listed on the official MCP Registry (io.github.sani-savaliya/agentify) and Smithery.
Point it at a spec — a URL, a file, OpenAPI 3.x or Swagger 2.0 — and every operation becomes a tool an AI agent can call. No code generation, no per-API boilerplate, no hosting. One command.
npx agentify-openapi https://petstore3.swagger.io/api/v3/openapi.json --list
Swagger Petstore - OpenAPI 3.0 v1.0.27
Base URL: https://petstore3.swagger.io/api/v3 Tools: 19
getPetById Find pet by ID. findPetsByStatus Finds Pets by status. ...
*"Today, agents have to operate software designed for humans. The interfaces of
the future will be built for agents — APIs, MCPs, CLIs — with agents as
first-class citizens."* — YC RFS: Software for Agents
There are tens of thousands of APIs that already describe themselves with an OpenAPI document. agentify makes every one of them agent-native, instantly, without anyone hand-writing an integration.
Add it to your client's MCP config. The same command/args shape works in Claude Desktop, Claude Code (claude mcp add), Cursor (.cursor/mcp.json), Windsurf, Cline, and anything else that speaks MCP:
{
"mcpServers": { "petstore": { "command": "npx", "args": ["-y", "agentify-openapi", "https://petstore3.swagger.io/api/v3/openapi.json"] } } }
The agent now has one tool per API operation. Calling a tool builds the HTTP request (path params, query string, headers, JSON body) and returns the live response.
Pointing at GitHub (1000+ operations) or Stripe (400+) would flood your agent with hundreds of tools and wreck its tool-selection accuracy. Filter down to what matters — by tag, HTTP method, or name glob — and cap the total:
# GitHub, read-only, just the repo endpoints
npx agentify-openapi https://api.github.com/openapi.json --tag repos --read-only
npx agentify-openapi ./stripe.json --include "*Customer*" --max-tools 25
{
"mcpServers": { "github-repos": { "command": "npx", "args": ["-y", "agentify-openapi", "https://api.github.com/openapi.json", "--tag", "repos", "--read-only", "--max-tools", "30"], "env": { "AGENTIFY_BEARER_TOKEN": "ghp_your_token" } } } }
--read-only (GET/HEAD/OPTIONS) is also a simple safety rail — expose a giant API to an agent without exposing anything that can mutate state.
Provide credentials via environment variables — agentify reads the spec's declared security scheme to find the right header name when it can:
| Variable | Effect |
|---|---|
AGENTIFY_BEARER_TOKEN | Authorization: Bearer |
AGENTIFY_BASIC_USER / AGENTIFY_BASIC_PASS | HTTP basic auth |
AGENTIFY_API_KEY | API key (sent as a header by default) |
AGENTIFY_API_KEY_HEADER | Override the api-key header name |
AGENTIFY_API_KEY_QUERY | Send the api key as a query param instead |
You can also inject raw headers from the CLI: --header "X-Org-Id: 42" (repeatable).
agentify <spec-url-or-file> [options]
--base-url Override the API base URL from the spec --header "K: V" Add a raw header to every request (repeatable) --name Override the MCP server name --list Print the discovered tools and exit (no server) -h, --help Show help
Tool selection (keep big APIs from flooding the agent's context): --tag Keep only operations with this tag (repeatable) --exclude-tag Drop operations with this tag (repeatable) --method Keep only this HTTP method, e.g. GET (repeatable) --read-only Shorthand: keep only GET/HEAD/OPTIONS operations --include Keep only tools matching this glob (repeatable) --exclude Drop tools matching this glob (repeatable) --max-tools Hard cap on tool count (warns when it truncates)
A small, pure pipeline — each stage is independently unit-tested:
spec ──▶ operations ──▶ tool defs ──▶ http request ──▶ response
│ │ │ │ │ load & one tool JSON Schema path/query/ fetch + surface deref per op for inputs header/body status & body $refs + auth
Only the HTTP execution and MCP transport touch the outside world; everything else is deterministic and tested.
import { loadSpec, extractOperations, resolveBaseUrl, createServer } from "agentify-openapi";
const spec = await loadSpec("./openapi.yaml"); const tools = extractOperations(spec); const baseUrl = resolveBaseUrl(spec); // ...build your own MCP server, or just inspect the generated tool defs
multipart/form bodies are passed through best-effort.cookie parameters and OAuth2 flows are not yet handled (use --header for now).npm install
npm test # vitest, 80%+ coverage enforced npm run build # tsc -> dist/ node scripts/smoke.mjs # end-to-end MCP client smoke test (network)
MIT