pb (ve1zy/pb) is an MCP server listed on the M8ven Trust Index. It scores 2 out of 100, grade F. It declares 54 tools. No publisher has claimed this listing.

Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

ve1zy

Source: github_code

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
🚨
Hardcoded credentials detected
9 live-looking API keys in source: 9 OpenAI API key
⚠️
Tool descriptions don’t match what handlers do
5 tools describe read intent but their handlers mutate — get_commits_since_tag (line 13: result = subprocess.run(); get_latest_tag (line 38: result = subprocess.run(); get_all_tags (line 51: result = subprocess.run()
🔐
You'll be asked for 2 credentials: OPENROUTER_API_KEY, OPENAI_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes41 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

handle_call_tool
read_file

Прочитать содержимое файла

list_files

Список файлов в директории по расширению

search_in_files

Поиск regex-паттерна в файлах

find_usages

Найти все использования имени (функция, класс, переменная)

create_file

Создать новый файл с содержимым

update_file

Заменить текст в файле (старый → новый)

check_invariants

Проверить файлы на соответствие правилам

get_file_info

Метаинформация о файле (размер, строки, hash)

generate_diff

Сгенерировать unified diff между двумя текстами

git_log

Получить git log (для генерации changelog)

git_branch

Получить текущую git-ветку и список всех веток

git_diff

Получить diff недавних изменений (последние N коммитов)

get_commits_since_tag

Get all commits since a specific tag

get_latest_tag

Get the latest git tag

get_all_tags

Get all git tags

create_github_release

Create a GitHub release using gh CLI

get_open_pull_requests

Get open pull requests

get_current_branch

Get current git branch

kb_search

Поиск по базе знаний. Возвращает список статей, соответствующих запросу.

kb_get

Получить полную статью из базы знаний по ID.

kb_add

Добавить новую статью в базу знаний.

calculator

Выполняет математические вычисления

greet

Приветствует пользователя

get_ticket

Получить информацию о тикете по ID

list_tickets

Получить список тикетов (опционально по пользователю)

search_tickets

Поиск тикетов по ключевым словам

add_ticket_message

Добавить сообщение в тикет

schedule_create

Создать отложенное или периодическое задание.

schedule_list

Показать все активные расписания.

schedule_cancel

Отменить задание по ID.

reminder_summary

Получить сводку по всем заданиям и выполненным работам.

search

Поиск статей по запросу. Возвращает список найденных статей с заголовком и содержимым.

summarize

Суммаризация текста. Сокращает текст до указанного количества слов.

save_to_file

Сохраняет текст в файл. Возвращает путь к сохранённому файлу.

knowledge_search

Поиск статей по запросу.

keywords_extract

Извлечение ключевых слов из текста.

text_summarize

Сокращение текста до N слов.

report_save

Сохранить отчёт в SQLite и на диск.

report_list

Список сохранённых отчётов.

task_log

Запись события в лог.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configWORK_DIR
configTICKETS_FILE
🔐 secretOPENROUTER_API_KEY
configOPENROUTER_MODEL
🔐 secretOPENAI_API_KEYСравнение с облачной моделью (если есть )
configSUPPORT_USER
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

54/54 tools missing one or more hints — handle_call_tool (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); read_file (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); list_files (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +51 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Descriptions match behaviour

5 tools describe read intent but their handlers mutate — get_commits_since_tag (line 13: result = subprocess.run(); get_latest_tag (line 38: result = subprocess.run(); get_all_tags (line 51: result = subprocess.run()

Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.

License file

No license file

Add a LICENSE file (MIT, Apache-2.0, etc.).

No hardcoded API keys

9 live-looking API keys in source: 9 OpenAI API key

Move secrets to environment variables (process.env.X) or your secret manager.

Tool test coverage

Only 4/54 tools referenced in tests (7%)

Write tests that reference each tool by name so every tool has at least one test.

Secrets not logged

37 secret values sent to print

Redact or omit secret values from log output.

Tool description accuracy

5 tools have description/behavior mismatches: get_commits_since_tag: description implies read-only but handler writes/deletes/executes; get_latest_tag: description implies read-only but handler writes/deletes/executes; get_all_tags: description implies read-only but handler writes/deletes/executes

Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 8 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/ve1zy/pb?variant=verified)](https://m8ven.ai/mcp/ve1zy/pb)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: c2fae6cb055b2c310cb4ac95c32920c9a4027c91
code hash: e1fe31b6dbbbbe79433b9731f9ae8eb2d9e94ad1597e20dcf32f603d937e3ae4
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client