bookstack-mcp

Miradi inayofuata mazoea bora hapa chini inaweza kujihakikisha kwa hiari na kuonyesha kuwa wamepata nishani ya mazoea bora ya Open Source Security Foundation (OpenSSF).

Hakuna seti ya mazoea yawezayo kuhakikisha kuwa programu haitakuwa na kasoro au udhaifu; hata mbinu rasmi zinaweza kushindwa ikiwa vipimo au dhana ni sahihi. Wala hakuna seti ya mazoea yawezayo kuhakikisha kuwa mradi utaendelea kuwa na jamii ya maendeleo yenye afya na inayofanya kazi vizuri. Hata hivyo, kufuata mazoea bora kunaweza kusaidia kuboresha matokeo ya miradi. Kwa mfano, baadhi ya mazoea huwezesha ukaguzi wa watu wengi kabla ya kutolewa, ambayo inaweza kusaidia kupata udhaifu wa kiufundi ambao vinginevyo ni vigumu kupata na kusaidia kujenga uaminifu na hamu ya mwingiliano wa kurudia kati ya wasanidi programu kutoka makampuni tofauti. Ili kupata nishani, vigezo vyote vya LAZIMA na LAZIMA WALA USIWAHI lazima vifuatwe, vigezo vyote vya INAPASWA lazima vifuatwe AU visivyo fufufutiliana na thibitisho, na vigezo vyote vya PENDEKEZA lazima vifuatwe AU visivyo fufufutiliana (tunataka vifikiwe angalau). Ikiwa unataka kuingiza maandishi ya thibitisho kama maoni ya jumla, badala ya kuwa maelezo ya busara kwamba hali ni inakubaliwa, anza kifungu cha maandishi na '//' ikifuatiwa na nafasi. Maoni ni karibu kupitia tovuti ya GitHub kama masuala au maombi ya kuvuta Kuna pia orodha ya barua pepe kwa majadiliano ya jumla.

Tunafuraha kutoa habari katika lugha nyingi, hata hivyo, ikiwa kuna mgongano au kutokuwa na usawa kati ya tafsiri, toleo la Kiingereza ni toleo lenye mamlaka.
Ikiwa huu ni mradi wako, tafadhali onyesha hali ya nishani yako ya msingi kwenye ukurasa wa mradi wako! Hali ya nishani ya msingi inaonekana kama hii: Kiwango cha nishani ya msingi kwa mradi 12116 ni baseline-3 Huu ndiyo jinsi ya kuweka nishani ya msingi:
Unaweza kuonyesha hali ya nishani yako ya msingi kwa kuweka hii katika faili yako ya markdown:
[![OpenSSF Baseline](https://www.bestpractices.dev/projects/12116/baseline)](https://www.bestpractices.dev/projects/12116)
au kwa kuweka hii katika HTML yako:
<a href="https://www.bestpractices.dev/projects/12116"><img src="https://www.bestpractices.dev/projects/12116/baseline"></a>


Hizi ni vigezo vya Kiwango cha Msingi 1. Hizi ni vigezo vya toleo v2026.08.28.

Baseline Series: Kiwango cha Msingi 1 Kiwango cha Msingi 2 Kiwango cha Msingi 3

        

 Misingi

  • Jumla

    Kumbuka kwamba miradi mingine inaweza kutumia jina sawa.

    BookStack stores your team's knowledge — but AI assistants can't access it without an integration. BookStack MCP Server bridges that gap, connecting AI assistants (Claude Desktop, LibreChat, and any MCP-compatible client) directly to your BookStack instance so they can search, read, and manage your documentation through natural language.

    Tafadhali tumia muundo wa maneno ya leseni ya SPDX; mifano ni pamoja na "Apache-2.0", "BSD-2-Clause", "BSD-3-Clause", "GPL-2.0+", "LGPL-3.0+", "MIT", na "(BSD-2-Clause OR Ruby)". Usitumie alama za nukuu za moja au mbili.
    Ikiwa kuna lugha zaidi ya moja, ziorodhe kama thamani zilizotengwa kwa koma (nafasi ni za hiari) na ziorodhe kuanzia iliyotumiwa zaidi hadi iliyotumiwa kidogo. Ikiwa kuna orodha ndefu, tafadhali orodhesha angalau tatu za kawaida zaidi. Ikiwa hakuna lugha (k.m., huu ni mradi wa nyaraka tu au wa majaribio tu), tumia herufi moja "-". Tafadhali tumia herufi kubwa za kawaida kwa kila lugha, k.m., "JavaScript".
    Common Platform Enumeration (CPE) ni mpango wa kuweka majina yenye muundo kwa mifumo ya teknolojia ya habari, programu, na vifurushi. Inatumika katika mifumo na hifadhidata nyingi wakati wa kuripoti udhaifu.

 Udhibiti 24/24

  • Udhibiti


    Wakati mtumiaji anajaribu kusoma au kurekebisha rasilimali nyeti katika hifadhi ya mamlaka ya mradi, mfumo LAZIMA uhitaji mtumiaji kukamilisha mchakato wa uthibitishaji wa vipengele vingi. [OSPS-AC-01.01]
    Tekeleza uthibitishaji wa vipengele vingi kwa mfumo wa udhibiti wa toleo wa mradi, ikihitaji washirika kutoa aina ya pili ya uthibitishaji wakati wa kufikia data nyeti au kurekebisha mipangilio ya hifadhi. Funguo za kupitisha zinakubaliwa kwa udhibiti huu.

    GitHub requires 2FA as of March 2023.



    Wakati mshirika mpya anaongezwa, mfumo wa udhibiti wa toleo LAZIMA uhitaji mgawanyo wa ruhusa wa mikono, au kuzuia ruhusa za mshirika kwa upendeleo wa chini unapatikana kwa chaguo-msingi. [OSPS-AC-02.01]
    Mifumo mingi ya umma ya udhibiti wa toleo imesanidiwa kwa njia hii. Hakikisha mfumo wa udhibiti wa toleo wa mradi daima unapeana ruhusa za chini zinazopatikana kwa washirika kwa chaguo-msingi wanapongezwa, ikitoa ruhusa za ziada tu zinapohitajika.

    GitHub is the version control platform. New collaborators added to the repository default to Read access (the lowest available privilege level) unless explicitly granted higher permissions. Write, Triage, Maintain, or Admin access must be assigned manually. This is GitHub's default behaviour and requires no additional configuration.



    Wakati ahadi ya moja kwa moja inajaribiwa kwenye tawi kuu la mradi, utaratibu wa kutekeleza LAZIMA uzuie mabadiliko yasitekelezwe. [OSPS-AC-03.01]
    Ikiwa VCS ni ya kati, weka ulinzi wa tawi kwenye tawi kuu katika VCS ya mradi. Vinginevyo, tumia mbinu isiyokuwa ya kati, kama ile ya kernel ya Linux, ambapo mabadiliko kwanza hupendekeza katika hifadhi nyingine, na kuunganisha mabadiliko katika hifadhi kuu kunahitaji kitendo tofauti mahususi.

    GitHub branch protection rules are configured on main to require pull requests before merging, blocking direct pushes. The rule "Do not allow bypassing the above settings" is enabled, preventing administrators from bypassing the restriction. All changes must go through a pull request.



    Wakati jaribio linafanywa kufuta tawi kuu la mradi, mfumo wa udhibiti wa toleo LAZIMA uichukulie hii kama shughuli nyeti na kuhitaji uthibitishaji wa wazi wa nia. [OSPS-AC-03.02]
    Weka ulinzi wa tawi kwenye tawi kuu katika mfumo wa udhibiti wa toleo wa mradi ili kuzuia ufutaji.

    GitHub prevents deletion of protected branches by default. The main branch has branch protection rules enabled, which blocks deletion. Attempting to delete main via the UI or API returns an error; explicit removal of the branch protection rule is required before deletion is possible.



    Wakati bomba la CI/CD linapofanya kazi kwenye metadata isiyoaminika, vigezo hivyo LAZIMA visafishwe na kuthibitishwa kabla ya kutumika kwenye bomba hilo. [OSPS-BR-01.01]
    Mifuko ya CI/CD inapaswa kusafisha (kunukuu, kutoroka au kutoka kwa maadili yanayotarajiwa) pembejeo zote za metadata zinazohusiana na vyanzo visivyoaminika. Hii inajumuisha data kama vile majina ya matawi, ujumbe wa kujitolea, lebo, majina ya maombi ya kuvuta, na taarifa za mwandishi.

    The CI/CD pipelines consume only structured, GitHub-controlled metadata — specifically github.event.pull_request.number (an integer assigned by GitHub) and the VERSION string extracted from packages/stdio/package.json via jq. No user-supplied free-text fields (PR titles, commit messages, branch names) are interpolated into shell commands. The PR number is used only to construct Docker image tag suffixes (e.g. pr-42-amd64), which are validated as existing registry tags before use. The version string from package.json is extracted with jq -r '.version' and used in docker buildx imagetools commands. Neither value is passed to eval or used in contexts where injection is possible.



    Wakati mfuko wa CI/CD unafanya kazi kwenye picha za nambari za kanuni ambazo haziaminiki, LAZIMA uzuie upatikanaji wa vitambulisho vya CI/CD vilivyopendelewa na mali. [OSPS-BR-01.03]
    Mifuko ya CI/CD inapaswa kutenga picha za nambari za kanuni ambazo haziaminiki kutoka kwa vitambulisho vilivyopendelewa na mali. Hasa, miradi inapaswa kuwa makini kuhakikisha kwamba mtiririko wa kazi ambao hujenga au kutekeleza nambari kabla ya ukaguzi na mshirika hana upatikanaji wa vitambulisho vya CI/CD.

    Fork PRs are explicitly isolated from privileged credentials. The pre-merge-cd-check job (which pushes images to GHCR and uses GITHUB_TOKEN) is conditioned on github.event.pull_request.head.repo.full_name == github.repository, so it never runs for fork-originated PRs. The build-and-push job sets push: ${{ github.event_name != 'pull_request' }}, meaning no image is pushed during any PR build — registry credentials are not exercised on untrusted code. Fork PRs trigger only a credential-free build to validate the Dockerfile compiles, which GitHub Actions automatically handles by providing a read-only, scoped GITHUB_TOKEN with no push permissions to the upstream registry.



    Wakati mradi unaorodhesha URI kama njia rasmi ya mradi, URI hiyo LAZIMA itolewa pekee kwa kutumia njia zilizosimbwa. [OSPS-BR-03.01]
    Sanidi tovuti za mradi na mifumo ya udhibiti wa toleo ili kutumia njia zilizosimbwa kama SSH au HTTPS kwa maambukizi ya data. Hakikisha zana zote na vikoa vilivyorejelewa katika nyaraka za mradi vinaweza kufikika tu kupitia njia zilizosimbwa.

    Project URLs use HTTPS exclusively.



    Wakati mradi unaorodhesha URI kama kituo rasmi cha usambazaji, kituo hicho LAZIMA kilindwe dhidi ya mashambulizi ya adui-katikati-ya-mawasiliano kwa kutumia njia zilizothibitishwa kikriptografia. [OSPS-BR-03.02]
    Vipengele vinavyosambazwa na mradi vinapaswa kusambazwa kupitia njia zinazohakikisha uadilifu na uhalisi. Utumiaji wa HTTPS kwa upakuaji, matoleo yaliyotiwa saini, au usambazaji kupitia visimamizi vya vifurushi vinavyoaminika ni njia zote zinazokubalika za kulinda dhidi ya mashambulizi ya adui-katikati-ya-mawasiliano.

    Distribution channels use HTTPS exclusively.



    Mradi LAZIMA uzuie uhifadhi wa bila makusudi wa data nyeti isiyo-imeimbwa, kama siri na vyeti, katika mfumo wa udhibiti wa toleo. [OSPS-BR-07.01]
    Sanidi .gitignore au sawa ili kutofautisha faili ambazo zinaweza kuwa na maelezo nyeti. Tumia vizuizi vya kabla ya kujitolea na zana za uchunguzi zilizosaidiwa na kompyuta ili kugundua na kuzuia ujumuishaji wa data nyeti katika michango.

    The repository contains no credentials or secrets. All sensitive values (BOOKSTACK_BASE_URL, BOOKSTACK_TOKEN_ID, BOOKSTACK_TOKEN_SECRET, GITHUB_TOKEN) are supplied exclusively via environment variables at runtime or GitHub Actions secrets — never hardcoded in source. .gitignore excludes .env files. CI workflows reference secrets only through the ${{ secrets.* }} context, which GitHub masks in logs and never persists to the repository. CodeQL scanning runs on every PR and would flag any hardcoded credentials committed to the codebase.



    Wakati mradi umefanya utoaji, nyaraka za mradi LAZIMA zijumuishe miongozo ya watumiaji kwa utendaji wote wa kimsingi. [OSPS-DO-01.01]
    Unda miongozo ya watumiaji au nyaraka kwa utendaji wote wa kimsingi wa mradi, ikieleza jinsi ya kusakinisha, kusanidi, na kutumia vipengele vya mradi. Ikiwa kuna vitendo vinavyojulikana kuwa hatari au vya kuharibu, jumuisha maonyo yaliyo-wazi kabisa.

    https://github.com/paradoxbound/bookstack-mcp/blob/main/README.md
    The documentation contains basic details of all features and functionality



    Wakati mradi umefanya utoaji, nyaraka za mradi LAZIMA zijumuishe mwongozo wa kuripoti hitilafu. [OSPS-DO-02.01]
    Inashauriwa kwamba miradi itumie kifuatiliaji cha masuala cha chaguo-msingi cha VCS yao. Ikiwa chanzo cha nje kinatumiwa, hakikisha kwamba nyaraka za mradi na mwongozo wa kuchangia zinaeleza wazi na kwa uonekano jinsi ya kutumia mfumo wa kuripoti. Inashauriwa kwamba nyaraka za mradi pia ziweke matarajio ya jinsi hitilafu zitatolewa kipaumbele na kutatuliwa.

    Non-trivial SECURITY[.md] file found file in repository: https://github.com/paradoxbound/bookstack-mcp/blob/main/SECURITY.md.



    Mradi LAZIMA uwe na utaratibu mmoja au zaidi wa mijadala ya hadharani kuhusu mabadiliko yanayopendekezwa na vikwazo vya matumizi. [OSPS-GV-02.01]
    Unda taratibu moja au zaidi za mijadala ya umma ndani ya mradi, kama orodha za barua, ujumbe wa papo hapo, au vifuatiliaji vya masuala, ili kuwezesha mawasiliano ya wazi na maoni.

    GitHub supports public discussions on proposed changes (via pull requests) and usage obstacles (via issues).



    Hati za mradi LAZIMA zijumuishe maelezo ya mchakato wa uchangiaji, au zieleze kwa uwazi kuwa michango ya hadharani haikubaliwi [OSPS-GV-03.01]
    Unda CONTRIBUTING.md au saraka ya CONTRIBUTING/ ili kuainisha mchakato wa kuchangia ukijumuisha hatua za kuwasilisha mabadiliko, na kushirikiana na watunzaji wa mradi.

    Contribution process documented in repository.



    Leseni ya chanzo-msimbo LAZIMA ikidhi Ufafanuzi wa Open Source wa OSI au Ufafanuzi wa Programu Huru wa FSF. [OSPS-LE-02.01]
    Ongeza faili ya LICENSE kwenye hazina ya mradi na leseni ambayo ni leseni iliyoidhinishwa na Open Source Initiative (OSI), au leseni huria kama ilivyoidhinishwa na Free Software Foundation (FSF). Mifano ya leseni kama hizo ni pamoja na MIT, BSD 2-clause, BSD 3-clause revised, Apache 2.0, Lesser GNU General Public License (LGPL), na GNU General Public License (GPL). Kutolewa kwa umma kukidhi udhibiti huu ikiwa hakuna vizuizi vingine kama vile vimiliki.

    The project is licensed under the MIT License (LICENSE file in the repository root). MIT is approved by both the Open Source Initiative (OSI) and qualifies under the Free Software Foundation (FSF) Free Software Definition.



    Leseni ya vipengele vya programu vilivyotolewa LAZIMA ikidhi Ufafanuzi wa Open Source wa OSI au Ufafanuzi wa Programu Huru wa FSF. [OSPS-LE-02.02]
    Ikiwa leseni tofauti imejumuishwa na mali za programu zilizotolewa, hakikisha ni leseni iliyoidhinishwa na Open Source Initiative (OSI), au leseni huria kama ilivyoidhinishwa na Free Software Foundation (FSF). Mifano ya leseni kama hizo ni pamoja na MIT, BSD 2-clause, BSD 3-clause revised, Apache 2.0, Lesser GNU General Public License (LGPL), na GNU General Public License (GPL). Kumbuka kwamba leseni kwa mali za programu zilizotolewa inaweza kuwa tofauti na msimbo wa chanzo.

    Released software assets are published to GitHub Container Registry (GHCR) as Docker images. The source code they are built from is MIT-licensed. MIT is OSI-approved and FSF-qualified. The license file is included in the repository and applies to all released artifacts derived from the source.



    Leseni ya chanzo-msimbo LAZIMA ihifadhiwe ndani ya faili la LICENSE, faili la COPYING, saraka ya LICENSES/, au saraka ya LICENSE/ ya hazina husika. [OSPS-LE-03.01]
    Jumuisha leseni ya chanzo-msimbo cha mradi ndani ya faili la LICENSE la mradi, faili la COPYING, saraka ya LICENSES/, au saraka ya LICENSE/ ili kutoa uwazi na ufafanuzi kuhusu masharti ya leseni. Jina la faili LINAWEZA kuwa na kiambatisho. Ikiwa mradi una hazina nyingi, hakikisha kila hazina inajumuisha faili la leseni.

    License file found in repository.



    Leseni ya vipengele vya programu vilivyotolewa LAZIMA ijumuishwe ndani ya chanzo-msimbo kilichotolewa, au ndani ya faili la LICENSE, faili la COPYING, au saraka ya LICENSE/ karibu na vipengele husika vya toleo. [OSPS-LE-03.02]
    Jumuisha leseni ya rasilimali za programu zilizotolewa za mradi katika msimbo wa chanzo uliotolewa, au katika faili ya LICENSE, faili ya COPYING, au saraka ya LICENSE/ pembeni na rasilimali za toleo linalohusiana ili kutoa mwonekano na uwazi wa masharti ya leseni. Jina la faili YAWEZA kuwa na kiendelezi. Ikiwa mradi una hazina nyingi, hakikisha kwamba kila hazina inajumuisha faili ya leseni.

    The MIT License is maintained in the LICENSE file at the repository root.
    https://github.com/paradoxbound/bookstack-mcp/blob/main/LICENSE



    Hazina ya chanzo-msimbo ya mradi LAZIMA isomeke hadharani kwenye URL tuli. [OSPS-QA-01.01]
    Tumia VCS ya kawaida kama GitHub, GitLab, au Bitbucket. Hakikisha hazina inaweza kusomwa hadharani. Epuka kunakili au kuakisi hazina isipokuwa nyaraka zinazoonekana sana zinatoa wazi chanzo kikuu. Epuka mabadiliko ya mara kwa mara kwenye hazina ambayo ingeathiri URL ya hazina. Hakikisha hazina ni ya umma.

    Repository is publicly available on GitHub.



    Mfumo wa udhibiti wa toleo LAZIMA uwe na kumbukumbu inayoweza kusomwa hadharani ya mabadiliko yote yaliyofanywa, nani alifanya mabadiliko, na mabadiliko yalifanywa lini. [OSPS-QA-01.02]
    Tumia VCS ya kawaida kama GitHub, GitLab, au Bitbucket ili kudumisha historia ya kuwasilisha inayoweza kusomwa hadharani. Epuka kusonga au kuandika upya miwasilisho kwa namna ambayo ingeweza kuficha mwandishi wa miwasilisho yoyote.

    Repository git metadata is publicly available on GitHub.



    Wakati mfumo wa usimamizi wa kifurushi unaposaidia, hazina ya msimbo wa chanzo LAZIMA iwe na orodha ya utegemezi inayohesabu utegemezi wa moja kwa moja wa lugha. [OSPS-QA-02.01]
    Hii inaweza kuwa kwa namna ya faili ya usimamizi wa kifurushi au faili ya utegemezi wa lugha inayoorodhesha utegemezi wote wa moja kwa moja kama package.json, Gemfile, au go.mod.

    This is a Node.js/npm monorepo. Direct dependencies for each package are declared in packages/core/package.json and packages/stdio/package.json. The full transitive dependency tree is locked in package-lock.json at the repository root. npm enforces this structure natively.



    Miradi yenye hazina nyingi LAZIMA iandike orodha ya misingi ya msimbo (codebases) inayohusika na mradi. [OSPS-QA-04.01]
    Weka kwenye nyaraka hazina zozote za ziada za msimbo wa miradi midogo zinazozalishwa na mradi na kukusanywa katika toleo. Nyaraka hii inapaswa kujumuisha hali na nia ya hazina ya msimbo husika.

    This project has a single repository at https://github.com/paradoxbound/bookstack-mcp. There are no additional codebases or repositories that form part of the project.



    Mfumo wa kudhibiti matoleo LAZIMA usiwe na mabaki yanayoweza kutekelezwa yaliyotengenezwa. [OSPS-QA-05.01]
    Ondoa vitu vilivyozalishwa vinavyoweza kutekelezwa katika mfumo wa udhibiti wa toleo wa mradi. Inashauriwa kwamba hali yoyote ambapo kifaa kilichozalishwa kinachoweza kutekelezwa kinaonekana muhimu kwa mchakato kama vile majaribio, badala yake kinapaswa kuzalishwa wakati wa ujenzi au kuhifadhiwa kando na kuchukuliwa wakati wa hatua maalum ya mfumo wa kuendeshea iliyoandikwa vizuri.

    The dist/ directory (TypeScript compilation output) is listed in .gitignore and is never committed to the repository. All compiled JavaScript artifacts are produced at build time by CI and are not tracked in version control. Only TypeScript source files are committed.



    Mfumo wa kudhibiti matoleo LAZIMA usiwe na mabaki ya jozi yasiyoweza kukaguliwa. [OSPS-QA-05.02]
    Usiongeze vitu vyovyote vya binary visivyoweza kukaguliwa katika mfumo wa udhibiti wa toleo wa mradi. Hii inajumuisha programu za binary za maombi, faili za maktaba, na vitu sawa. Haijumuishi mali kama picha za kigraphiki, faili za sauti au muziki, na maudhui sawa ambayo kwa kawaida huhifadhiwa katika muundo wa binary.

    The repository contains no binary artifacts. All committed files are human-readable text: TypeScript source, JSON configuration, YAML workflow definitions, and Markdown documentation. Compiled JavaScript (dist/) and node_modules/ are excluded via .gitignore and never committed.



    Nyaraka za mradi LAZIMA ziwe na anwani za mawasiliano za usalama. [OSPS-VM-02.01]
    Unda faili ya security.md (au inayoitwa sawa) inayohifadhi anwani za kuwasiliana za usalama kwa mradi.

    SECURITY.md at the repository root documents how to report security vulnerabilities privately via GitHub's Security Advisory feature, and provides the direct URL (https://github.com/paradoxbound/bookstack-mcp/security/advisories/new). It also specifies a 7-day acknowledgement commitment and a 30-day patch commitment.



Unaweza kutumia zana na mifumo ya AI kupendekeza mabadiliko kupitia URL rahisi, kama vile https://www.bestpractices.dev/sw/projects/12116/choose/edit?osps_ac_01_01_status=Met&osps_ac_01_01_justification=GitHub+enforced. Angalia mfumo wetu wa mapendekezo ya otomatiki kwa jinsi ya kufanya hivyo. Data hii inapatikana chini ya Community Data License Agreement – Permissive, Version 2.0 (CDLA-Permissive-2.0). Hii inamaanisha kuwa Mpokeaji wa Data anaweza kushiriki Data, na au bila marekebisho, mradi Mpokeaji wa Data anapatanisha maandishi ya mkataba huu na Data iliyoshirikiwa. Tafadhali tambua Jim Bailey na wachangiaji wa nishani ya Mazoea Bora ya OpenSSF.

Ingizo la nishani ya mradi linamilikiwa na: Jim Bailey.
Ingizo liliundwa siku 2026-03-08 10:20:21 UTC, iliyosasishwa mara ya mwisho siku 2026-03-10 14:13:23 UTC. Ilipata mara ya mwisho nishani ya kupita siku 2026-03-10 14:13:23 UTC.