MCP sunucuları
Yerel ve uzak MCP araçlarını kodine'a bağlayın.
Model Context Protocol (kısaca MCP) sayesinde kodine’a dışarıdan araçlar kazandırabilirsiniz. kodine hem yerel hem de uzak MCP sunucularıyla çalışır.
Bir MCP aracı eklendikten sonra, yerleşik araçlarla birlikte LLM tarafından kendiliğinden kullanılabilir hale gelir.
Uyarılar
Kullandığınız her MCP sunucusu bağlamınıza eklenir. Çok sayıda aracınız varsa bağlam boyutu hızla şişebilir; bu yüzden hangi MCP sunucularını açtığınızı özenle seçmenizi öneririz.
GitHub MCP sunucusu gibi bazı sunucular çok fazla token ekleyebilir ve bağlam sınırını kolayca aşmanıza yol açabilir.
Etkinleştirme
MCP sunucularını kodine yapılandırmanızda mcp bölümü altında tanımlayın. Her MCP’ye benzersiz bir ad verin; LLM’ye istem yazarken bu ada atıfta bulunabilirsiniz.
{ "$schema": "https://kodine.net/config.json", "mcp": { "name-of-mcp-server": { // ... "enabled": true, }, "name-of-other-mcp-server": { // ... }, },}İsterseniz enabled alanını false yaparak bir sunucuyu kapatabilirsiniz. Sunucuyu yapılandırmanızdan silmeden geçici olarak duraklatmak istediğinizde bu yöntem kullanışlıdır.
Uzak varsayılanları geçersiz kılma
Kuruluşlar, .well-known/kodine uç noktaları üzerinden varsayılan MCP sunucuları sunabilir. Bu sunucular, kullanıcıların yalnızca ihtiyaç duyduklarını seçebilmesi için varsayılan olarak kapalı tutulabilir.
Kuruluşunuzun uzak yapılandırmasındaki belirli bir sunucuyu açmak için yerel yapılandırmanıza enabled: true ile ekleyin:
{ "$schema": "https://kodine.net/config.json", "mcp": { "jira": { "type": "remote", "url": "https://jira.example.com/mcp", "enabled": true } }}Yerel yapılandırmanızdaki değerler uzak varsayılanların önüne geçer. Ayrıntılar için yapılandırma önceliği bölümüne bakın.
Yerel
Yerel MCP sunucularını mcp nesnesi içinde type alanını "local" yaparak ekleyin.
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-local-mcp-server": { "type": "local", // Ya da ["bun", "x", "my-mcp-command"] "command": ["npx", "-y", "my-mcp-command"], "enabled": true, "environment": { "MY_ENV_VAR": "my_env_var_value", }, }, },}command alanı, yerel MCP sunucusunun nasıl başlatılacağını belirler. Ayrıca sunucuya bir dizi ortam değişkeni de aktarabilirsiniz.
Örneğin @modelcontextprotocol/server-everything test sunucusunu şöyle ekleyebilirsiniz:
{ "$schema": "https://kodine.net/config.json", "mcp": { "mcp_everything": { "type": "local", "command": ["npx", "-y", "@modelcontextprotocol/server-everything"], }, },}Kullanmak için istemlerinize use the mcp_everything tool yazmanız yeterli.
use the mcp_everything tool to add the number 3 and 4Seçenekler
Yerel bir MCP sunucusunu yapılandırırken kullanabileceğiniz tüm seçenekler şunlardır:
| Seçenek | Tür | Gerekli | Açıklama |
|---|---|---|---|
type | Dize | Y | MCP sunucu bağlantı türü; "local" olmalıdır. |
command | Dizi | Y | MCP sunucusunu başlatacak komut ve argümanları. |
environment | Nesne | Sunucu çalıştırılırken tanımlanacak ortam değişkenleri. | |
enabled | Boolean | MCP sunucusunu başlangıçta açar ya da kapalı tutar. | |
timeout | Sayı | MCP sunucusundan araçlar alınırken milisaniye cinsinden zaman aşımı. Varsayılan 5000 (5 sn). |
Uzak
Uzak MCP sunucuları için type alanını "remote" yapın.
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-remote-mcp": { "type": "remote", "url": "https://my-mcp-server.com", "enabled": true, "headers": { "Authorization": "Bearer MY_API_KEY" } } }}url uzak MCP sunucusunun adresidir; headers seçeneğiyle istekle birlikte gönderilecek başlıkları da tanımlayabilirsiniz.
Seçenekler
| Seçenek | Tür | Gerekli | Açıklama |
|---|---|---|---|
type | Dize | Y | MCP sunucu bağlantı türü; "remote" olmalıdır. |
url | Dize | Y | Uzak MCP sunucusunun adresi. |
enabled | Boolean | MCP sunucusunu başlangıçta açar ya da kapalı tutar. | |
headers | Nesne | İsteklerle birlikte gönderilecek HTTP başlıkları. | |
oauth | Object | OAuth kimlik doğrulama yapılandırması. Aşağıdaki OAuth bölümüne bakın. | |
timeout | Sayı | MCP sunucusundan araçlar alınırken milisaniye cinsinden zaman aşımı. Varsayılan 5000 (5 sn). |
OAuth
kodine, uzak MCP sunucularında OAuth kimlik doğrulamasını otomatik olarak yönetir. Bir sunucu kimlik doğrulaması istediğinde kodine şu adımları atar:
- 401 yanıtını algılar ve OAuth akışını başlatır
- Sunucu destekliyorsa Dinamik İstemci Kaydı (RFC 7591) kullanır
- Token’ları sonraki istekler için güvenli biçimde saklar
Otomatik
OAuth destekleyen çoğu MCP sunucusu için ek bir yapılandırma gerekmez; uzak sunucuyu tanımlamanız yeterlidir:
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-oauth-server": { "type": "remote", "url": "https://mcp.example.com/mcp" } }}Sunucu kimlik doğrulaması istiyorsa kodine, onu ilk kullanışınızda sizi doğrulamaya yönlendirir. Yönlendirmezse kodine mcp auth <server-name> komutuyla akışı elle başlatabilirsiniz.
Ön kayıtlı
MCP sunucu sağlayıcınızdan istemci kimlik bilgileri aldıysanız bunları yapılandırmaya ekleyebilirsiniz:
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-oauth-server": { "type": "remote", "url": "https://mcp.example.com/mcp", "oauth": { "clientId": "{env:MY_MCP_CLIENT_ID}", "clientSecret": "{env:MY_MCP_CLIENT_SECRET}", "scope": "tools:read tools:execute" } } }}Kimlik doğrulama
Kimlik doğrulama akışını elle tetikleyebilir ya da kayıtlı kimlik bilgilerini yönetebilirsiniz.
Belirli bir MCP sunucusunda kimlik doğrulamak için:
kodine mcp auth my-oauth-serverTüm MCP sunucularını ve kimlik doğrulama durumlarını listelemek için:
kodine mcp listKayıtlı kimlik bilgilerini silmek için:
kodine mcp logout my-oauth-servermcp auth komutu yetkilendirme için tarayıcınızı açar. Yetkilendirme tamamlandıktan sonra kodine, token’ları ~/.local/share/kodine/mcp-auth.json dosyasında güvenle saklar.
OAuth’u devre dışı bırakma
Bir sunucuda otomatik OAuth algılamasını kapatmak istiyorsanız (örneğin API anahtarıyla çalışan sunucularda) oauth alanını false yapın:
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-api-key-server": { "type": "remote", "url": "https://mcp.example.com/mcp", "oauth": false, "headers": { "Authorization": "Bearer {env:MY_API_KEY}" } } }}OAuth Seçenekleri
| Seçenek | Tür | Açıklama |
|---|---|---|
oauth | Object | false | OAuth yapılandırma nesnesi ya da otomatik OAuth algılamasını kapatmak için false. |
clientId | Dize | OAuth istemci kimliği. Verilmezse dinamik istemci kaydı denenir. |
clientSecret | Dize | Yetkilendirme sunucusu istiyorsa OAuth istemci gizli anahtarı. |
scope | Dize | Yetkilendirme sırasında talep edilecek OAuth kapsamları. |
Hata Ayıklama
Uzak bir MCP sunucusunda kimlik doğrulama başarısız olursa sorunu şu komutlarla inceleyebilirsiniz:
# OAuth destekleyen tüm sunucuların kimlik doğrulama durumunu görünkodine mcp auth list
# Belirli bir sunucu için bağlantıyı ve OAuth akışını inceleyinkodine mcp debug my-oauth-servermcp debug komutu mevcut kimlik doğrulama durumunu gösterir, HTTP bağlantısını sınar ve OAuth keşif akışını dener.
Yönetim
MCP araçlarınız, kodine içinde yerleşik araçlarla aynı şekilde kullanılabilir. Dolayısıyla bunları da diğer araçlar gibi kodine yapılandırması üzerinden yönetebilirsiniz.
Global
Yani bu araçları genel olarak açabilir ya da kapatabilirsiniz.
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-mcp-foo": { "type": "local", "command": ["bun", "x", "my-mcp-command-foo"] }, "my-mcp-bar": { "type": "local", "command": ["bun", "x", "my-mcp-command-bar"] } }, "tools": { "my-mcp-foo": false }}Bir glob deseni kullanarak eşleşen tüm MCP araçlarını tek seferde kapatabilirsiniz.
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-mcp-foo": { "type": "local", "command": ["bun", "x", "my-mcp-command-foo"] }, "my-mcp-bar": { "type": "local", "command": ["bun", "x", "my-mcp-command-bar"] } }, "tools": { "my-mcp*": false }}Burada my-mcp* glob deseniyle bu sunucunun tüm araçları kapatılıyor.
Agent başına
Çok sayıda MCP sunucunuz varsa bunları genel olarak kapalı tutup yalnızca belirli agent’larda açmak isteyebilirsiniz. Bunun için:
- Aracı genel düzeyde kapatın.
- agent yapılandırmanızda ilgili MCP sunucusunu araç olarak açın.
{ "$schema": "https://kodine.net/config.json", "mcp": { "my-mcp": { "type": "local", "command": ["bun", "x", "my-mcp-command"], "enabled": true } }, "tools": { "my-mcp*": false }, "agent": { "my-agent": { "tools": { "my-mcp*": true } } }}Glob desenleri
Glob desenleri basit joker eşleştirme kurallarına göre çalışır:
*sıfır ya da daha fazla karakterle eşleşir (örneğin"my-mcp*";my-mcp_search,my-mcp_listgibi adlarla eşleşir)?tam olarak bir karakterle eşleşir- Diğer tüm karakterler birebir eşleşir
Örnekler
Aşağıda yaygın kullanılan bazı MCP sunucularına örnekler bulabilirsiniz. Başka sunucuları belgelemek isterseniz PR gönderebilirsiniz.
Sentry
Sentry projeleriniz ve sorun kayıtlarınızla etkileşim kurmak için Sentry MCP sunucusunu ekleyin.
{ "$schema": "https://kodine.net/config.json", "mcp": { "sentry": { "type": "remote", "url": "https://mcp.sentry.dev/mcp", "oauth": {} } }}Yapılandırmayı ekledikten sonra Sentry’de kimlik doğrulayın:
kodine mcp auth sentryBu komut, OAuth akışını tamamlamanız ve kodine’u Sentry hesabınıza bağlamanız için bir tarayıcı penceresi açar.
Kimlik doğrulandıktan sonra istemlerinizde Sentry araçlarını kullanarak sorunları, projeleri ve hata verilerini sorgulayabilirsiniz.
Show me the latest unresolved issues in my project. use sentryContext7
Dokümantasyon içinde arama yapmak için Context7 MCP sunucusunu ekleyin.
{ "$schema": "https://kodine.net/config.json", "mcp": { "context7": { "type": "remote", "url": "https://mcp.context7.com/mcp" } }}Ücretsiz bir hesap oluşturursanız API anahtarınızı ekleyerek daha yüksek kullanım limitlerinden yararlanabilirsiniz.
{ "$schema": "https://kodine.net/config.json", "mcp": { "context7": { "type": "remote", "url": "https://mcp.context7.com/mcp", "headers": { "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}" } } }}Bu örnekte CONTEXT7_API_KEY ortam değişkeninin tanımlı olduğu varsayılıyor.
Context7 MCP sunucusunu kullandırmak için isteklerinizin sonuna use context7 ekleyin.
Configure a Cloudflare Worker script to cache JSON API responses for five minutes. use context7Alternatif olarak AGENTS.md dosyanıza şuna benzer bir satır ekleyebilirsiniz.
When you need to search docs, use `context7` tools.Grep by Vercel
GitHub üzerindeki kod örneklerinde arama yapmak için Grep by Vercel MCP sunucusunu ekleyin.
{ "$schema": "https://kodine.net/config.json", "mcp": { "gh_grep": { "type": "remote", "url": "https://mcp.grep.app" } }}Sunucuya gh_grep adını verdiğimiz için, agent’ın onu kullanmasını istediğinizde istemlerinize use the gh_grep tool yazabilirsiniz.
What's the right way to set a custom domain in an SST Astro component? use the gh_grep toolAlternatif olarak AGENTS.md dosyanıza şuna benzer bir satır ekleyebilirsiniz.
If you are unsure how to do something, use `gh_grep` to search code examples from GitHub.