Skip to main content
Glama
by terisuke

Метеорологическая служба MCP

Этот репозиторий представляет собой простую службу, которая предоставляет информацию о погоде с использованием протокола контекста модели (MCP). Вы можете получить информацию о погоде для нескольких городов (Фукуока, Токио, Осака, Москва, Нью-Йорк и т. д.).

оглавление

  1. Предпосылки

  2. Настройка проекта

  3. Как использовать

  4. Руководство по разработке

  5. Загрузить на GitHub

  6. Поиск неисправностей

Предпосылки

Для выполнения этого проекта вам понадобится следующее программное обеспечение:

  • Node.js (версия 18 и выше)

  • npm (обычно устанавливается вместе с Node.js)

  • Гит

Как установить

Установка Node.js и npm

  1. Загрузите установщик с официального сайта Node.js и установите его.

  2. После завершения установки проверьте ее, выполнив следующую команду в Терминале:

node -v npm -v

Установка Git

  1. Загрузите установщик с официального сайта Git и установите его.

  2. После завершения установки проверьте ее, выполнив следующую команду в Терминале:

git --version

Настройка проекта

Создание нового проекта

  1. Создайте новый каталог и перейдите в него:

mkdir my-weather-mcp cd my-weather-mcp
  1. Инициализируйте свой проект npm:

npm init -y
  1. Установите необходимые пакеты:

npm install @modelcontextprotocol/sdk axios zod typescript @types/node https-proxy-agent npm install --save-dev ts-node
  1. Создайте файл конфигурации TypeScript:

npx tsc --init
  1. Отредактируйте файл tsconfig.json следующим образом:

{ "compilerOptions": { "target": "ES2022", "module": "NodeNext", "moduleResolution": "NodeNext", "esModuleInterop": true, "outDir": "./build", "strict": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true }, "include": ["src/**/*"], "exclude": ["node_modules"] }
  1. Отредактируйте раздел скриптов вашего файла package.json следующим образом:

"scripts": { "build": "tsc && node -e \"import('fs').then(fs => fs.default.chmodSync('build/index.js', '755'))\"", "start": "node build/index.js", "inspect": "npx @modelcontextprotocol/inspector build/index.js", "dev": "ts-node src/index.ts" }
  1. Создайте структуру каталогов проекта:

mkdir -p src test

Клонировать существующий проект

Если вы хотите использовать существующий проект, клонируйте его:

git clone https://github.com/terisuke/my-weather-mcp.git cd my-weather-mcp npm install

Как использовать

Построить и запустить

Для сборки и запуска проекта используйте следующие команды:

npm run build && npm run start

Использование инспектора

Чтобы протестировать службу погоды с помощью MCP Inspector, выполните следующую команду:

npm run build && npm run inspect

После запуска Inspector вы можете взаимодействовать со службой погоды, перейдя по адресу http://127.0.0.1:6274 в своем браузере.

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

С помощью Инспектора вы можете получить информацию о погоде в следующих городах:

  • Фукуока

  • Токио

  • Осака

  • Москва

  • Нью-Йорк

Можно указать и другие города, но они должны распознаваться API Open-Meteo.

Руководство по разработке

Структура файла

my-weather-mcp/ ├── build/ # コンパイルされたJavaScriptファイル ├── src/ # TypeScriptソースコード │ └── index.ts # メインのアプリケーションコード ├── test/ # テストファイル ├── package.json # プロジェクト設定 ├── tsconfig.json # TypeScript設定 └── README.md # このファイル

Исправление кода

  1. Отредактируйте файл src/index.ts чтобы добавить или изменить функциональность.

  2. Чтобы проверить изменения, выполните следующую команду:

npm run build && npm run inspect
  1. Как только вы убедитесь, что изменения работают, зафиксируйте их.

Загрузить на GitHub

Создание вашего первого репозитория GitHub

  1. Перейдите на GitHub и создайте учетную запись или войдите в систему.

  2. Нажмите кнопку «+» в правом верхнем углу и выберите «Новый репозиторий».

  3. Введите имя репозитория (например, my-weather-mcp ) и добавьте необязательное описание.

  4. Сделайте свой репозиторий публичным или частным и нажмите «Создать репозиторий».

Инициализируйте и отправьте локальный репозиторий

  1. В локальном каталоге проекта инициализируйте репозиторий Git:

git init
  1. Добавьте изменения в область подготовки:

git add .
  1. Внесите изменения:

git commit -m "初回コミット:MCP天気サービスの実装"
  1. Добавьте удаленный репозиторий (используя URL-адрес репозитория из GitHub):

git remote add origin https://github.com/ユーザー名/my-weather-mcp.git
  1. Отправьте изменения в удаленный репозиторий:

git push -u origin main

Передача изменений в существующий репозиторий

  1. Добавьте изменения в область подготовки:

git add .
  1. Внесите изменения:

git commit -m "変更内容の説明"
  1. Отправьте изменения в удаленный репозиторий:

git push

Создание запроса на извлечение

  1. Перейдите на страницу репозитория на GitHub.

  2. Нажмите вкладку «Запросы на извлечение», а затем нажмите кнопку «Новый запрос на извлечение».

  3. Выберите базовую ветвь и ветвь сравнения.

  4. Нажмите кнопку «Создать запрос на извлечение».

  5. Введите название и описание вашего запроса на извлечение и нажмите кнопку «Создать запрос на извлечение».

Поиск неисправностей

Распространенные проблемы и решения

Ошибка ERR_PACKAGE_PATH_NOT_EXPORTED

Эта ошибка возникает, если путь импорта для пакета @modelcontextprotocol/sdk неверен. Пожалуйста, исправьте это следующим образом:

// 誤ったインポート import { McpServer } from "@modelcontextprotocol/sdk"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/transports"; // 正しいインポート import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

Ошибка сетевого подключения

Если при выполнении вызова API возникает сетевая ошибка, проверьте настройки прокси-сервера. Вы можете использовать прокси, установив переменные среды HTTP_PROXY или HTTPS_PROXY :

export HTTP_PROXY=http://プロキシサーバー:ポート export HTTPS_PROXY=https://プロキシサーバー:ポート

Другие вопросы

Если проблема не устранена, пожалуйста, создайте сообщение о проблеме, указав следующую информацию:

  • Сообщение об ошибке, которое произошло

  • Версию Node.js и npm, которую вы используете

  • Команда выполнена.

  • Ожидаемое и фактическое поведение

Deploy Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

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/terisuke/my-weather-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server