Açık kaynaklı bir linter ve CLI kullanarak MCP server araçlarının yapay zeka ajanları için ne kadar iyi tanımlandığını puanlar.
Ayrıca bilinen adı forecall/forecall-cli, forecall
- Yıldızlar
- 0
- Araçlar
- —
- İndirmeler, 30 gün
- —
- En son sürüm
- —
- Son commit
- 18 Eki 2026
- Lisans
- Apache-2.0
forecall-cli MCP nedir?
forecall-cli bir MCP sunucusudur. Açık kaynaklı bir linter ve CLI kullanarak MCP server araçlarının yapay zeka ajanları için ne kadar iyi tanımlandığını puanlar.
Özet, projenin README dosyasından oluşturuldu
forecall-cli MCP sunucusu hakkında
forecall-cli'nın temel işlevi, yapay zeka ajanlarının MCP server araçlarınızı ne kadar iyi anladığını değerlendirmektir. Bu açık kaynaklı araç; kullanım amacı, kullanım bağlamı, argüman açıklamaları ve dönüş değerleri dahil olmak üzere altı özel kritere dayanarak araç açıklamalarını puanlamak için bir linter kullanır. Geliştiricilerin, ajan hatalarına yol açabilecek çok kısa açıklamalar, eksik kısıtlamalar veya örnek eksikliği gibi sorunları tespit etmesine yardımcı olur.
Geliştiriciler, bir tools.json dosyasını analiz etmek için npx üzerinden forecall komutunu kullanarak linter'ı yerel olarak çalıştırabilirler. CLI, tekil araç puanları ve sunucu genelindeki sorunlar hakkında detaylı geri bildirim sağlar. GitHub Actions kullanılarak CI/CD süreçlerine entegre edilebilir; --fail-under veya --min-tool-score bayrakları ile belirlenen eşik değerlerinin altına düşülmesi durumunda derleme süreçlerinin otomatik olarak başarısız olması sağlanabilir. İnceleme süreci tamamen gizlidir, çünkü linting işlemi sırasında makinenizden hiçbir veri çıkmaz ve yerel kullanım için herhangi bir API anahtarı gerekmez.
Neler yapabilirsiniz
- 1Araç açıklamalarını denetleyinBir yapay zeka ajanının sunucunuzun işlevlerini ne kadar iyi yorumlayabileceğini görmek için tools.json dosyasını kontrol edin.
- 2Eksik argüman detaylarını tespit edinYapay zeka için açıklama, kısıtlama veya örnek içermeyen belirli parametreleri bulun.
Projenin README dosyasından alınmıştır. Her kullanım durumu, oradaki bir alıntı ile kontrol edilir.
forecall-cli MCP nasıl yüklenir
Biçimler 10 Kas 2026 tarihinde doğrulandıCursor'a ekleGoose'a ekleforecall-cli MCP'yi Claude Code içine yükleyin
$ claude mcp add forecall-cli -- npx -y forecallforecall-cli MCP'yi Cursor içine yükleyin
~/.cursor/mcp.json
{
"mcpServers": {
"forecall-cli": {
"command": "npx",
"args": [
"-y",
"forecall"
]
}
}
}forecall-cli MCP'yi VS Code içine yükleyin
.vscode/mcp.json
{
"servers": {
"forecall-cli": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"forecall"
]
}
}
}forecall-cli MCP'yi VS Code CLI içine yükleyin
$ code --add-mcp '{"name":"forecall-cli","type":"stdio","command":"npx","args":["-y","forecall"]}'forecall-cli MCP'yi Claude Desktop içine yükleyin
claude_desktop_config.json
{
"mcpServers": {
"forecall-cli": {
"command": "npx",
"args": [
"-y",
"forecall"
]
}
}
}forecall-cli MCP'yi Codex içine yükleyin
$ codex mcp add forecall-cli -- npx -y forecallforecall-cli MCP'yi Codex config.toml içine yükleyin
~/.codex/config.toml
[mcp_servers.forecall-cli] command = "npx" args = ["-y", "forecall"]
forecall-cli MCP'yi Gemini CLI içine yükleyin
$ gemini mcp add -s user forecall-cli npx -- -y forecallforecall-cli MCP'yi Gemini settings.json içine yükleyin
~/.gemini/settings.json
{
"mcpServers": {
"forecall-cli": {
"command": "npx",
"args": [
"-y",
"forecall"
]
}
}
}Otomatik kontroller
Çalıştırıldı 15 Kas 2026Tam rapor →Otomatik kontrollerimizden geçti. Bu bir güvenlik denetimi değildir: kodu okuyun ve sunucuya ihtiyaç duyduğu en dar erişimi verin. Kontroller nasıl çalışır
- Kaynak deposu bağlantılı ve erişilebilirforecall/forecall-cli is public and reachablegithub.com/forecall/forecall-cli ↗Geçti
- Paket, bu depoyu kaynağı olarak gösteriyorforecall names forecall/forecall-cli as sourcenpmjs.com/package/forecall ↗Geçti
- Derleme kökeni (Sigstore onayı)Sigstore attestation for forecallnpmjs.com/package/forecall/v/0.8.1#provenance ↗Geçti
- Açık kaynak lisansı (OSI)Apache-2.0spdx.org/licenses/Apache-2.0.html ↗Geçti
- Son bir yıl içinde commit veya sürüm mevcutLast commit or release 2026-10-18github.com/forecall/forecall-cli ↗Geçti
- OpenSSF ScorecardKontrol edilmedi
- Paket adı popüler bir pakete yakın değilNo popular package one edit away from forecallGeçti
- Pakette veya bağımlılıklarında kritik uyarı yokKontrol edilmedi
- Modele yönelik gizli talimat yok0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersGeçti
- Yıkıcı araçlar etiketlenmişKontrol edilmedi
- Uzak uç nokta MCP el sıkışmasına yanıt veriyorKontrol edilmedi
Forecall CLI
The open-source parts of Forecall: the linter that scores how well an MCP
server's tools are described for the AI agents that read them, and the forecall command that runs
it on your machine and connects your AI clients to the Forecall Failure KB.
npx forecall lint tools.json
Forecall lint · tools.json
Scoring rules v2
Average score 42.5 / 100
Tools 2
Near-identical descriptions 0
Across the server
No server-wide issues.
Tools
6 / 100 search
Purpose 6/20 · When to use 0/20 · Arguments 0/25 · Return value 0/15 · Constraints and side effects 0/10 · Examples 0/10
Major restates_name The description only restates the name (2 words).
Major too_short The description is too short (2 words).
Major no_usage_context Says nothing about when to use it, or when not to.
Major param_no_description Arguments without a description: q.
Minor loose_string_param String arguments with no constraint or example: q.
Minor no_required No `required` list, so every argument is optional.
Minor no_return_info Says nothing about what it returns.
Minor no_constraints No constraints, side effects, auth or rate limits described, and no annotations.
79 / 100 get_forecast
Purpose 17/20 · When to use 20/20 · Arguments 18/25 · Return value 7/15 · Constraints and side effects 7/10 · Examples 10/10
No issues.
{
"tools": [
{
"name": "search",
"description": "Search records.",
"inputSchema": { "type": "object", "properties": { "q": { "type": "string" } } }
},
{
"name": "get_forecast",
"description": "Returns the weather forecast for a city for the next 7 days, with the high and low temperature in Celsius for each day. Use it when the user asks about upcoming weather; for the current conditions, use get_current_weather instead. Example: city \"Tokyo\", days 3.",
"inputSchema": {
"type": "object",
"properties": {
"city": { "type": "string", "description": "The city's name, such as Tokyo." },
"days": { "type": "integer", "minimum": 1, "maximum": 7, "description": "How many days to return, 1 to 7." }
},
"required": ["city"]
},
"annotations": { "readOnlyHint": true }
}
]
}
Each tool is scored out of 100 on six parts, and the server as a whole is checked for too many
tools, near-identical descriptions and shared descriptions. Nothing leaves your machine. --json prints
the report as JSON. --fail-under <n> fails a CI job when the average is below n,
--min-tool-score <n> when any tool is, and --fail-on <severity> on any issue that severe. Get the
JSON from your own server with npx forecall dump, or paste it at
forecall.dev/en/lint for a page you can share.
| Package | npm | What it is |
|---|---|---|
packages/cli |
forecall |
The command: lint, dump, setup and hook |
packages/lint |
@forecall/lint |
The scoring, with no dependencies and no network |
How to use them: forecall.dev/en/docs/cli and each package's README. The Forecall service itself (the website, the dashboard, the API and the Failure KB's server) is not in this repository.
GitHub Action
Score your tools on every pull request, with the score and the findings in the job summary:
- uses: forecall/forecall-cli@v1
with:
file: tools.json # or url: https://… (a public Streamable HTTP server)
# or command: node build/index.js (your server over stdio)
min-tool-score: 40 # optional gates, as in the CLI
fail-on: critical
| Input | What it does |
|---|---|
file |
A tools/list JSON file, as forecall lint reads it |
url |
A public Streamable HTTP server to ask for its tools/list (forecall dump <url>) |
command |
A command that starts your server over stdio (forecall dump -- sh -c <command>) |
fail-under, min-tool-score, fail-on |
The CLI's gates: fail the step below an average, below a tool's score, or on a finding that severe |
lang |
en or ja for the report in the log (the job summary is in English) |
version |
The forecall version from npm (pinned by each release of the action) |
Give exactly one of file, url and command. The outputs are score (the average), tools
and report (the JSON report's path). It needs Node 22 or later on the runner, sends nothing to
Forecall and needs no key.
Development
The versions of Node.js and pnpm are in mise.toml.
mise install
pnpm install
pnpm check # Biome, the type checks and the tests of both packages and the action
pnpm formatformats and fixes what Biome can.pnpm --filter forecall buildwrites the command topackages/cli/dist/forecall.js; run it withnode packages/cli/dist/forecall.js lint <file>.node packages/lint/pack.ts <dir>andnode packages/cli/pack.ts <dir>make the tarballs npm would get, andscripts/try-package.sh <lint|cli> <tarball>installs one and runs it.LINT_VERSIONinpackages/lint/lint.tsis the version of the scoring rules. Any change that can give some input a different score, component, issue code or severity raises it, and updates the expected results inpackages/lint/fixtures/cases.json.
Releases
A pull request that raises a package's version starts the Release workflow when it lands on
main. The workflow stages every version npm does not have yet (@forecall/lint first) with
provenance, and each goes live only when a maintainer approves it on npm with 2FA. Maintainers can
also run the workflow by hand on main and pick one package.
The action is released apart from the packages: a maintainer publishes a GitHub Release v1.x.y
to the Marketplace and moves the v1 tag to it. A release that raises the action's pinned
forecall version says so, since a new rules version can move scores past a gate.
Contributing and security
See CONTRIBUTING.md. Report vulnerabilities privately, as SECURITY.md says, not in a public issue.
License
Apache-2.0. Copyright 2026 Mirai Studio, Inc. See LICENSE.
forecall-cli MCP soruları
forecall-cli MCP'yi Claude Code'a nasıl eklerim?
Terminalinizde claude mcp add forecall-cli -- npx -y forecall komutunu çalıştırın. Her projede kullanılabilir olması için --scope user ekleyin.
forecall-cli MCP'yi Cursor'a nasıl eklerim?
~/.cursor/mcp.json dosyasını açın ve yukarıdaki yükleme bölümünde gösterilen Cursor yapılandırmasını kullanarak sunucuyu mcpServers altına ekleyin.
MCP server araçlarımı nasıl puanlayabilirim?
Araç tanım dosyanızda linter'ı çalıştırmak için npx forecall lint tools.json komutunu kullanabilirsiniz.
Araç verilerimi harici bir sunucuya gönderiyor mu?
Hayır, linter hiçbir verinin makinenizden dışarı çıkmayacağı şekilde tasarlanmıştır.
Bunu bir CI/CD hattında kullanabilir miyim?
Evet, her pull request üzerinde araçlarınızı puanlamak ve kalite eşikleri belirlemek için Forecall GitHub Action'ı kullanabilirsiniz.
Bir aracı puanlamak için hangi metrikler kullanılıyor?
Her araç; kullanım amacı, kullanım bağlamı, argümanlar, dönüş değerleri, kısıtlamalar/yan etkiler ve örnekler baz alınarak 100 üzerinden puanlanır.